Hướng dẫn cài đặt ssh trên centos 7

SSH, trình bảo mật, là một giao thức mật mã được sử dụng để quản trị và liên lạc với máy chủ. Khi làm việc với máy chủ CentOS, rất có thể bạn sẽ dành phần lớn thời gian của mình trong một phiên kết nối với máy chủ của bạn thông qua SSH.

Trong hướng dẫn này, chúng ta sẽ tập trung vào việc thiết lập SSH keys cho cài đặt CentOS 7 vanilla. SSH keys cung cấp cách thức đăng nhập vào máy chủ của bạn một cách an toàn và được khuyến khích cho tất cả người dùng.

Bước 1 - Tạo cặp khóa RSA

Bước đầu tiên là tạo một cặp khóa trên máy khách (thường là máy tính của bạn):

 ssh-keygen

Theo mặc định, ssh-keygen sẽ tạo một cặp khóa RSA 2048-bit, đủ an toàn cho hầu hết các trường hợp sử dụng (bạn có thể tùy ý vượt qua cờ

Output
Enter passphrase (empty for no passphrase):

0 để tạo ra một khóa 4096 lớn hơn).

Sau khi nhập lệnh, bạn sẽ thấy dấu nhắc sau:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

Nhấn ENTERđể lưu cặp khóa vào thư mục con

Output
Enter passphrase (empty for no passphrase):

1 trong thư mục chính của bạn, hoặc chỉ định một đường dẫn thay thế.

Sau đó, bạn sẽ thấy dấu nhắc sau:

Output
Enter passphrase (empty for no passphrase):

Tại đây bạn tùy ý có thể nhập cụm từ mật khẩu bảo mật, được đánh giá cao. Cụm từ mật khẩu thêm một lớp bảo mật bổ sung để ngăn người dùng trái phép đăng nhập.

Bạn sẽ thấy kết quả sau:

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

Bây giờ bạn có một khóa công khai và riêng tư mà bạn có thể sử dụng để xác thực. Bước tiếp theo là đặt khóa công khai trên máy chủ của bạn để bạn có thể sử dụng chứng thực dựa trên SSH Key để đăng nhập.

Bước 2 - Sao chép Public Key tới máy chủ CentOS

Cách nhanh nhất để sao chép khóa công khai của bạn đến máy chủ CentOS là sử dụng một tiện ích được gọi là

Output
Enter passphrase (empty for no passphrase):

2.Do tính đơn giản của nó nên phương pháp này được đánh giá cao nếu có. Nếu bạn không có

Output
Enter passphrase (empty for no passphrase):

2 có sẵn trên máy khách, bạn có thể sử dụng một trong hai phương pháp thay thế được cung cấp trong phần này (sao chép qua SSH dựa trên mật khẩu hoặc tự sao chép khóa).

Sao chép Public Key của bạn sử dụng

Output
Enter passphrase (empty for no passphrase):

2

Công cụ

Output
Enter passphrase (empty for no passphrase):

2 được bao gồm theo mặc định trong nhiều hệ điều hành, vì vậy bạn có thể có nó trên hệ thống cục bộ . Để phương pháp này hoạt động, bạn phải có quyền truy cập SSH dựa trên mật khẩu vào máy chủ của mình.

Để sử dụng tiện ích này, bạn chỉ cần chỉ định máy chủ từ xa mà bạn muốn kết nối và tài khoản người dùng mà bạn có mật khẩu truy cập vào SSH. Đây là tài khoản mà SSH Key công khai của bạn sẽ được sao chép.

Cú pháp là:

 ssh-copy-id username@remote_host

Bạn có thể thấy thông báo sau:

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

Nghĩa là máy tính cục bộ của bạn không nhận ra máy chủ từ xa. Điều này sẽ xảy ra lần đầu tiên bạn kết nối với một máy chủ mới. Nhập "yes" và nhấn

Output
Enter passphrase (empty for no passphrase):

6 để tiếp tục.

Tiếp theo, tiện ích sẽ quét tài khoản cục bộ của bạn cho khóa

Output
Enter passphrase (empty for no passphrase):

7 mà chúng ta đã tạo ra trước đó. Khi tìm thấy khoá, nó sẽ nhắc bạn nhập mật khẩu của tài khoản người dùng từ xa:

/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s),to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys [email protected]'s password:

Nhập mật khẩu (việc nhập của bạn sẽ không được hiển thị vì mục đích bảo mật) và nhấn

Output
Enter passphrase (empty for no passphrase):

6. Tiện ích sẽ kết nối với tài khoản trên máy chủ từ xa sử dụng mật khẩu bạn cung cấp. Sau đó nó sẽ sao chép nội dung của khóa

Output
Enter passphrase (empty for no passphrase):

9 vào một tệp trong thư mục

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

0 của tài khoản từ xa được gọi là

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

1.

Bạn sẽ thấy kết quả sau:

Output
Number of key(s) added: 1 
Now try logging into the machine, with: "ssh '[email protected]'" 
and check to make sure that only the key(s) you wanted were added.

ALúc này, khóa

Output
Enter passphrase (empty for no passphrase):

7 đã được tải lên tài khoản từ xa . Bạn có thể tiếp tục Bước 3

Sao chép Public Key sử dụng SSH

Nếu không có

Output
Enter passphrase (empty for no passphrase):

2 ,nhưng bạn có quyền truy cập SSH dựa trên mật khẩu vào tài khoản trên máy chủ của mình, bạn có thể tải lên các khóa của mình bằng phương pháp SSH thông thường.

Bạn có thể sử dụng câu lệnh

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

4 để đọc nội dung khóa SSH công khai trên máy tính cục bộ và đường dẫn thông qua kết nối SSH đến máy chủ từ xa. Mặt khác, đảm bảo rằng thư mục

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

5 tồn tại dưới tài khoản bạn đang dùng và sau đó đưa ra nội dung chúng ta đã đưa vào một tệp tin trong thư mục này gọi là

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

1 .

Chúng ta sẽ sử dụng biểu tượng chuyển hướng

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

7 để nối thêm nội dung thay vì ghi đè lên nó. Điều này sẽ cho phép thêm keys mà không phá hủy keys đã được thêm vào trước đó.

Câu lệnh đầy đủ như sau:

 cat /.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p /.ssh && cat >> ~/.ssh/authorized_keys"

Bạn có thể nhìn thấy dòng thông báo sau:

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe. 
Are you sure you want to continue connecting (yes/no)? yes

Điều này có nghĩa là máy tính cục bộ của bạn không nhận ra máy chủ từ xa. Điều này sẽ xảy ra lần đầu tiên bạn kết nối với một máy chủ mới. Nhập "yes" và nhấn

Output
Enter passphrase (empty for no passphrase):

6 để tiếp tục.

Sau đó, bạn sẽ được nhắc nhập mật khẩu tài khoản người dùng từ xa:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

0

Sau khi nhập mật khẩu (việc nhập của bạn sẽ không được hiển thị),nội dung của khóa

Output
Enter passphrase (empty for no passphrase):

7 sẽ được sao chép vào cuối tệp

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

1 của tài khoản người dùng từ xa.

Sau khi kết thúc phần này , tiếp tục Bước 3.

Sao chép Public Key thủ công

Nếu bạn không có quyền truy cập SSH dựa trên mật khẩu vào máy chủ của mình, bạn sẽ phải sao chép khóa công khai thủ công.

Trong phần này, chúng ta sẽ tự nối thêm nội dung của tệp

Output
Enter passphrase (empty for no passphrase):

7 đến tệp

 ssh-copy-id username@remote_host

2 trên thiết bị từ xa của bạn .

Để hiện thị nội dung của khóa

Output
Enter passphrase (empty for no passphrase):

7 , gõ câu lệnh này vào máy tính cục bộ của bạn:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

1

Bạn sẽ thấy nội dung của khóa trông như thế này :

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

2

Truy cập máy chủ từ xa của bạn bằng cách sử dụng bất kỳ phương pháp nào bạn có.

Một khi bạn đã truy cập vào tài khoản của bạn trên máy chủ từ xa, bạn nên chắc chắn thư mục

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

0 tồn tại . Câu lệnh này sẽ tạo ra thư mục nếu cần thiết, hoặc sẽ không làm gì nếu nó tồn tại .

Bây giờ , bạn có thể tạo và sửa đổi tệp

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

1 trong thư mục này. Bạn có thể thêm nội dung của tệp

Output
Enter passphrase (empty for no passphrase):

7 vào cuối tệp

Output
Your identification has been saved in /your_home/.ssh/id_rsa. 
Your public key has been saved in /your_home/.ssh/id_rsa.pub.
The key fingerprint is: 
a9:49:2e:2a:5e:33:3e:a9:de:4e:77:11:58:b6:90:26 username@remote_host 
The key's randomart image is:
+--[ RSA 2048]----+
| ..o |
| E o= . |
| o. o |
| .. | 
| ..S | 
| o o. |
| =o.+. |
| . =++.. |
| o=++. |
+-----------------+

1 ,tạo nó nếu cần thiết, sử dụng câu lệnh này:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

3

Trong lệnh trên, thay thế

 ssh-copy-id username@remote_host

8với đầu ra từ lệnh

 ssh-copy-id username@remote_host

9 mà bạn đã thực hiện trên hệ thống cục bộ của bạn. Nó nên bắt đầu với

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

0

Bây giờ chúng ta có thể thử xác thực không mật khẩu với máy chủ CentOS

Bước 3 - Xác thực tới máy chủ CentOS của bạn Sử dụng SSH Keys

Nếu bạn đã hoàn thành một trong các thủ tục ở trên, bạn sẽ có thể đăng nhập vào máy chủ từ xa nếu không có mật khẩu của tài khoản từ xa.

Qúa trình cơ bản như sau:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

4

Nếu đây là lần đầu tiên kết nối với máy chủ lưu trữ này (nếu bạn đã sử dụng phương pháp cuối cùng ở trên),bạn có thể thấy một số điều sau:

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe. 
Are you sure you want to continue connecting (yes/no)? yes

Nghĩa là máy tính cục bộ của bạn không nhận ra máy chủ từ xa . Nhập "yes" và sau đó nhấn

Output
Enter passphrase (empty for no passphrase):

6 để tiếp tục.

Nếu bạn không cung cấp cụm mật khẩu cho khóa cá nhân, bạn sẽ được đăng nhập ngay lập tức. Nếu bạn cung cấp cụm mật khẩu cho khóa cá nhân khi tạo nó, bạn sẽ được nhắc nhập cụm từ mật khẩu bây giờ. Sau khi xác thực, phiên làm việc mới sẽ mở ra cho bạn với tài khoản được cấu hình trên máy chủ CentOS.

Nếu xác thực dựa trên khóa thành công, hãy tiếp tục tìm hiểu cách tiếp tục bảo vệ hệ thống của bạn bằng cách tắt xác thực mật khẩu.

Bước 4 - Tắt xác thực mật khẩu trên máy chủ của bạn

Nếu bạn có thể đăng nhập vào tài khoản của mình bằng cách sử dụng SSH mà không có mật khẩu, bạn đã cấu hình thành công xác thực dựa trên SSH cho tài khoản của bạn. Tuy nhiên, cơ chế xác thực dựa trên mật khẩu của bạn vẫn hoạt động, có nghĩa là máy chủ của bạn vẫn tiếp xúc với các cuộc tấn công bạo lực.

Trước khi hoàn tất các bước trong phần này, hãy đảm bảo rằng bạn có xác thực dựa trên khoá SSH được định cấu hình cho tài khoản gốc trên máy chủ này hoặc tốt hơn là bạn có xác thực dựa trên khoá SSH được định cấu hình cho tài khoản không phải gốc trên này máy chủ với đặc quyền

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

2 .Bước này sẽ khóa các đăng nhập dựa trên mật khẩu, do đó đảm bảo rằng bạn vẫn có thể có quyền truy cập quản trị là rất quan trọng.

Khi bạn đã xác nhận rằng tài khoản từ xa của bạn có đặc quyền quản trị viên, đăng nhập vào máy chủ từ xa của bạn bằng khóa SSH, dưới dạng gốc hoặc với một tài khoản có đặc quyền

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

2 .Sau đó mở tệp cấu hình của SSH daemon:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

6

Bên trong tệp, tìm kiếm một chỉ thị được gọi là

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

4. Điều này có thể được ghi chú .Nhấn

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

5 để chèn văn bản, và sau đó bỏ ghi chú dòng và đặt giá trị là "không". Điều này sẽ vô hiệu hóa khả năng đăng nhập qua SSH bằng mật khẩu tài khoản:

/etc/ssh/sshd_config

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

7

Khi đã kết thúc các thay đổi ,nhấn

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

6 và sau đó

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

7 để viết các thay đổi tệp và thoát ra. Để thực hiện những thay đổi này, chúng ta cần phải khởi động lại dịch vụ

Output
The authenticity of host '111.111.11.111 (111.111.11.111)' can't be established. 
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)? yes

8:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

8

Để phòng ngừa, hãy mở cửa sổ thiết bị đầu cuối mới và kiểm tra xem dịch vụ SSH có đang hoạt động chính xác trước khi đóng phiên này không:

Output
Enter file in which to save the key (/your_home/.ssh/id_rsa):

4

Khi bạn đã xác minh dịch vụ SSH của mình, bạn có thể đóng tất cả các phiên máy chủ hiện tại một cách an toàn.

SSH daemon trên máy chủ CentOS của bạn bây giờ chỉ đáp ứng SSH Keys. Xác thực dựa trên mật khẩu đã bị tắt thành công.

Kết luận

Bây giờ, bạn phải có xác thực dựa trên khoá SSH được định cấu hình trên máy chủ của mình, cho phép bạn đăng nhập mà không cần cung cấp mật khẩu tài khoản.