Hướng dẫn sử dụng SSH Key [NEW]

Một trong những cách an toàn hơn để đăng nhập vào VPS là sử dụng SSH Key để thay thế mật khẩu. Mặc định mỗi VPS bạn sẽ đăng nhập bằng tên người dùng nguồn gốc và mật khẩu root mà nhà cung cấp gửi cho bạn khi thuê VPS, nhưng sử dụng mật khẩu luôn tiềm ẩn 2 rủi ro lớn:

  • Bạn sẽ mất hoàn toàn nếu để lộ mật khẩu.
  • Những kẻ tấn công có thể sử dụng Brute Force Attack để dò mật khẩu.

Do đó, mình khuyến khích các bạn làm quen với SSH Key để đăng nhập vào VPS, cũng như sử dụng nó để xác thực các kết nối từ bên ngoài để an toàn hơn.

Nên xem trước: Học VPS cơ bản

Cách hoạt động của các phím SSH

Khóa SSH Bạn hiểu đơn giản là một phương pháp xác thực quyền truy cập của người dùng bằng cách so sánh khóa riêng tư (Khóa cá nhân) và khóa công khai (Khóa công khai).

Private key và Public key luôn có quan hệ mật thiết với nhau để nó có thể xác định được nhau. Mình nói vậy để bạn dễ hình dung, khi tạo SSH Key thì bạn sẽ có cả 2 key này. Sau đó bạn mang public key về máy chủ của mình, private key bạn sẽ lưu trữ trên máy và khi đăng nhập vào máy chủ, bạn sẽ gửi yêu cầu đăng nhập bằng Private Key này để gửi tín hiệu về máy chủ, máy chủ sẽ kiểm tra nếu khóa Riêng tư của bạn khớp với khóa Công khai trên máy chủ, nếu vậy, bạn sẽ có thể đăng nhập.

Nội dung giữa Private Key và Public Key là hoàn toàn khác nhau, nhưng nó vẫn sẽ nhận dạng nhau thông qua thuật toán riêng.

Hãy tưởng tượng rằng Private Key là chìa khóa, và Public Key là ổ khóa. Một khi chìa khóa vừa vào ổ khóa, cửa sẽ mở, chỉ vậy thôi.

Các thành phần chính của Khóa SSH

Khi tạo SSH Key, bạn cần biết sẽ có 3 thành phần quan trọng như sau:

  • Khóa công khai (định dạng tệp và chuỗi) – Bạn sẽ sao chép ký tự khóa này và đặt nó vào tệp ~ / .ssh / allow_keys trên máy chủ của mình.
  • Khóa cá nhân (định dạng tệp và chuỗi) – Bạn sẽ lưu tệp này vào máy tính, sau đó thiết lập PuTTY, WinSCP, MobaXterm, .. để có thể đăng nhập.
  • Keyphars (dạng chuỗi, cần nhớ) – Mật khẩu mở private key, khi đăng nhập vào server nó sẽ hỏi cái này.

Và một SSH Key bạn có thể sử dụng cho nhiều máy chủ khác nhau.

I. Cách tạo khóa SSH

1.1) Đối với Windows

Nếu bạn dùng Windows thì sẽ sử dụng phần mềm PuTTY-Gen để tạo SSH, bạn có thể tải PuTTY-Gen nơi đây.

Sau khi tải về, mở nó lên, chọn các tùy chọn như trong hình dưới đây rồi nhấn Phát ra.

Hướng dẫn sử dụng SSH Key [NEW]

Trong khi tạo, vui lòng Kéo chuột quanh màn hình cho đến khi tạo xong.

Sau khi tạo xong, bạn sẽ thấy nó xuất hiện như thế này.

puttygen-aftergenerator

Bây giờ đặt bàn phím cho nó bằng cách điền vào keypharse ở trên.

puttygen-keypharsegenerator

Sau đó nhấn Lưu khóa cá nhân và lưu nó ở một nơi thực sự an toàn, tốt nhất bạn nên đặt một bản trên Dropbox nếu sử dụng.

puttygen-savepublickey

Thế còn khóa công khai là chuỗi trênnó bắt đầu với từ khóa ssh-rsa-XXXXXX. Đây sẽ là đoạn mà bạn sẽ sao chép và đưa lên máy chủ. Bạn có thể lưu vào file văn bản hoặc không vì sau này nếu cần lấy public key, bạn chỉ cần nhấn nút Load trong phần mềm PuTTYGen rồi mở file private key lên là nó sẽ tự động hiển thị public. Chìa khóa.

Đối với Linux (Mac / Ubuntu / LinuxMint, ..)

Nếu bạn đang sử dụng Linux thì không cần phần mềm mà sẽ sử dụng Terminal để tạo. Mở Terminal và nhập:

[bash]ssh-keygen -t rsa[/bash]

Nó sẽ hỏi bạn muốn lưu private key này ở đâu, mặc định nó sẽ lưu /home/user/.ssh. Bạn có thể để trống và Enter.

Tiếp tục nó sẽ hỏi bạn có muốn thiết lập keypharse không, nếu muốn thì nhập keypharse cần thiết lập rồi Enter.

Sau khi được tạo, mặc định nó sẽ xuất hiện như sau:


Your identification has been saved in /home/thach/.ssh/id_rsa.
Your public key has been saved in /home/thach/.ssh/id_rsa.pub.
The key fingerprint is:
5b:48:b3:14:27:a2:12:41:4e:46:72:9b:60:7c:09:11 [email protected]
The key’s randomart image is:
+–[RSA 2048]—-+
|+E%.. . o . |
|.O * . . + |
| * . + |
| . o + |
| S . |
| o |
| . |
| |
| |

Trong đó, bạn có thể thấy nó có đường dẫn để lưu tệp khóa cá nhân (id_rsa) và tệp khóa công khai (id_rsa.pub). Để xem khóa công khai, chỉ cần mở tệp và đọc.

[bash]
[email protected]: ~ $ cat /home/thach/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCrdtfWhzBfvC5zVErTM4nGK7GH039DRHPR/F5z7llyjxaHWDvQFr56i04MTIytarpRZzx9ARzUbnhnrrFXDB0b5Rn80iRJESL9zxDKpiR8iLeuRgUAP8D3gl+s9YS3TGUGBu7VnQOLynduKPylIgIXRNMLw89L4pIUNS9ZinY3FFQGc7gqb/KMSl8kzE/u6NDBuXylHenxAjUVgIx092L0vWdSCJRsNnWHOPFOWSM5rdKw4XUW9BMwXrvV03Wkj7MgHYEcU/8459vqO7HQJ40p/n4wSqHfXlkVLo3wEy9i+vKhhbOST1m6YKozCC70pfr+xb5mNJEPeFJpt1/G7dJz [email protected]
[/bash]

Và khóa công khai này bạn sẽ mang sang VPS.

II. Thêm khóa công khai vào VPS

Bây giờ đăng nhập vào VPS bằng người dùng mà bạn cần thêm khóa (thường là root, nhưng nếu VPS của bạn có nhiều người dùng, bạn sẽ cần thêm khóa cho tất cả người dùng đó).

Sau đó gõ các lệnh bên dưới để tạo thư mục .ssh / và các tập tin ủy quyền trong thư mục đó:

[bash]

mkdir ~ / .ssh
chmod 700 ~ / .ssh
chạm vào ~ / .ssh / allow_keys
chmod 600 ~ / .ssh / allow_keys
[/bash]

Sau đó mở tệp ủy quyền trong thư mục .ssh trong thư mục gốc của người dùng và sao chép tất cả các ký tự của khóa công khai vào đó.

Ghi chú:

Khóa SSH sẽ không hoạt động nếu bạn đang bật SELinux. Tắt SELinux bằng cách mở tệp / etc / selinux / configTìm thấy SELINUX = thực thi và thay thế nó bằng SELINUX = bị vô hiệu hóa. Sau đó gõ reboot để khởi động lại máy chủ. Nếu sử dụng Centminmod thì không cần vì nó đã tắt SELinux rồi.

Để kiểm tra xem nó có hoạt động hay không, hãy đăng nhập lại vào SSH bằng tài khoản vừa thêm Khóa SSH. Nếu bạn đăng nhập bằng Linux, nó sẽ yêu cầu mã khóa của bạn, nhưng nếu bạn đăng nhập Windows thông qua phần mềm khác như PuTTY, khi đăng nhập, bạn phải trỏ tệp khóa riêng để nó xác thực.

putty-auth

Nếu bạn đang sử dụng MobaXterm, hãy đính kèm nó vào. tiết diện Cài đặt SSH nâng cao được rồi, phần Sử dụng khóa riêng tư.

Bây giờ bạn đăng nhập và nó sẽ yêu cầu keypharse nếu bạn đã đặt keypharse, nếu không nó sẽ đưa bạn đến thẳng máy chủ.

Tắt sử dụng mật khẩu

Sau khi kiểm tranếu bạn thấy đăng nhập vào máy chủ bằng SSH Key thì có thể tắt chức năng sử dụng mật khẩu vì nếu không tắt thì kẻ gian vẫn tấn công brute force như bình thường và bạn vẫn bị mất dữ liệu nếu không. tiết lộ mật khẩu.

Để tắt việc sử dụng mật khẩu, hãy mở tệp / etc / ssh / sshd_configvà tìm và chỉnh sửa các giá trị của các tham số như được hiển thị bên dưới:

[bash]PasswordAuthentication không[/bash]

[bash]UsePAM không[/bash]

Phần kết

Qua bài viết này chắc hẳn bạn đã hiểu SSH Key là gì và cách sử dụng nó, đây là một trong những việc rất quan trọng mà bạn cần phải làm vì chúng ta không thể đăng nhập vào VPS mãi mãi thông qua các phương pháp truyền thống. bằng mật khẩu, sẽ rất nguy hiểm nếu máy tính của bạn có mã độc hoặc vô tình để lộ mật khẩu. Do đó, tôi khuyên bạn nên thực hành bài viết này để làm quen và sử dụng nó ngay trên VPS của bạn.

Đánh giá nội dung này

Tiếp tục đọc trong bộ truyện