Mục lục [Ẩn]
Một trong các phương thức đăng nhập vào VPS khá an toàn đó là việc sử dụng SSH Key để thay thế cho mật khẩu. Mặc định mỗi VPS bạn sẽ đăng nhập vào bằng username root và mật khẩu root mà nhà cung cấp đã gửi cho bạn lúc thuê VPS. Vậy SSH Key là gì? Tạo SSH Key như thế nào? Cùng theo dõi bài viết dưới đây của Nhân Hòa nhé!
1. SSH Key là gì?
Hiểu một cách đơn giản, SSH Key là một phương thức chứng thực người dùng truy cập bằng cách đối chiếu giữa một key cá nhân (Private Key) và key công khai (Public Key).
Private Key và Public Key luôn có liên hệ chặt chẽ với nhau để nó có thể nhận diện lẫn nhau. Khi tạo một SSH Key bạn sẽ có cả 2 loại key ở trên, sau đó đặt Public Key lên máy chủ của bạn, Private Key sẽ được lưu ở máy và khi đăng nhập vào Server, bạn sẽ gửi yêu cầu đăng nhập kèm theo cái Private Key này để gửi tín hiệu đến Server, Server sẽ kiểm tra xem Private Key của bạn có khớp với Public Key có trên Server hay không, nếu 2 key này khớp nhau thì bạn có thể đăng nhập được.
SSH Key là gì?
Nội dung giữa Private Key và Public Key hoàn toàn khác nhau, nhưng nó vẫn sẽ nhận diện được với nhau thông qua một thuật toán riêng của nó
>>> Xem thêm: SSH là gì? SSH mã hóa thông tin như thế nào?
2. Các thành phần của SSH Key
Các thành phần của SSH Key
Khi tạo ra một SSH Key, bạn cần đảm bảo 3 yêu cầu sau đây:
- Public Key: bạn sẽ copy ký tự key này sẽ bỏ vào file ~/.ssh/authorized_keys trên server của bạn
- Private Key: bạn sẽ lưu file này vào máy tính, sau đó sẽ thiết lập phiên SSH sử dụng key này để có thể login
- Keyphrase: đây là mật khẩu để mở Private Key, khi đăng nhập vào Server nó sẽ hỏi cái này, nếu bạn không đặt password cho Private Key thì có thể bỏ qua
3. Cách thức hoạt động của SSH Key
Private key và Public key luôn có liên hệ chặt chẽ với nhau để nó có thể nhận diện lẫn nhau. Khi tạo một SSH Key thì người dùng sẽ có cả 2 loại key này. Sau đó người dùng mang public key upload lên máy chủ của mình, còn cái private key của người dùng sẽ lưu ở máy và khi đăng nhập vào server, người dùng sẽ gửi yêu cầu đăng nhập kèm theo cái Private Key này để gửi tín hiệu đến server, server sẽ kiểm tra xem cái Private key của người dùng có khớp với Public key có trên server hay không, nếu có thì bạn sẽ đăng nhập được.
Cách thức hoạt động của SSH Key
4. Hướng dẫn tạo SSH Key
- Đối với Linux (và Mac OS)
Bạn có thể tạo cặp Keys qua terminal trên VPS Linux bất kỳ với ssh-keygen. Trong quá trình cài đặt, chương trình sẽ hỏi bạn nơi lưu keys và mật khẩu sử dụng private key (nếu có)
# ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair
Enter file in which to save the key (/root/.ssh/id_rsa): #nơi lưu key
Created directory '/root/.ssh'
Enter passphrase (empty for no passphrase): #mật khẩu cho private key
Enter same passphrase again: #xác nhận lại mật khẩu cho private key
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
Hướng dẫn tạo SSH Key
The key fingerprint is:
44:3e:dc:59:30:ed:f2:25:f8:71:42:e4:9c:d2:24:9a root@hocvps
The key's randomart image is:
+--[ RSA 2048]----+
| . +++ |
| + + Xo. |
| E ++= |
| . .o.= o |
| S + * |
| o |
| |
| |
| |
+-----------------+
Keys được tạo theo thuật toán mã hóa RSA, độ dài 2048 bit và lưu tại /root/.ssh/. Trong đó, Private Key là id_rsa còn Public Key là id_rsa.pub, đều là OpenSSH Keys
Bạn cũng có thể chạy được lệnh ssh-keygen trên macOS
Lưu ý: khi được hỏi passphrase, nên nhấn phím Enter để trống, tránh phải nhập thêm mật khẩu một lần nữa khi sử dụng key. Và bạn nên sử dụng SSH Keys tạo bởi phương pháp này
- Đối với Windows
Hiện tại, hầu hết các các phần mềm SSH đều có công cụ tạo Keys. Để đảm bảo bảo mật, bạn cần tạo cặp Keys mã hóa bởi thuật toán RSA 2 với độ dài ít nhất 2048 bit.
Quá trình tạo bạn cũng có thể nhập mật khẩu sử dụng Passphrase cũng như note về mục đích sử dụng Key Comment
+ PuTTy với ứng dụng PuTTygen. Ngoài ra, bạn có thể dùng (PuTTygen Portable)
+ ZOC với menu File/Create SSh Key Files
+ Bitvise SSH với Client key manager/Generate New
Tạo SSH Keys bằng PuTTyGen: lựa chọn SSH-2 RSA và 2048 như hình rồi ấn Generate đồng thời rê chuột xung quanh khung trắng để khởi tạo các chuỗi ngẫu nhiên. Nếu bạn đã có Private Key thì chỉ cần nhấn Load để tạo Public Key tương ứng(dùng khi convert Private Key dạng OpenSSH sang)
Sau khi tạo xong, màn hình hiển thị Public Key. Bạn có thể thiết lập Passphrase và Key Comment. Bạn nhấn Save private key để lưu lại
- Tạo SSH Key bằng ZOC Client
- Tạo SSH Key bằng Bitvise SSH Client
>>> Xem thêm: Hệ điều hành Linux là gì? Những [ƯU THẾ] giúp Linux ghi điểm trong lòng người dùng
5. Hướng dẫn sử dụng SSH Key
Để sử dụng SSH Keys truy cập VPS, các bạn chỉ cần login thông qua các phần mềm SSH như PuTTy, Bitvise, ZOC và lựa chọn file Private Key đã tạo khi trước.
Lưu ý: Thường xuyên đăng nhập bằng SSH Client nào thì dùng chính phần mềm ý tạo SSH Keys.
- Đối với PuTTy
Nếu sử dụng OpenSSH Keys (keys tạo bởi lệnh trong Linux/MacOS,…), bạn cần dùng PuTTygen để convert Private Key sang chuẩn đăng nhập với PuTTy
- Đối với ZOC
Nếu passphrase được thiết lập, phần mềm sẽ yêu cầu bạn nhập trong quá trình đăng nhập. Nếu không, bạn sẽ được truy cập thẳng vào server
>>> Xem thêm: Hướng dẫn sử dụng Putty SSH Client
6. Lời kết
Qua bài này chắc bạn cũng đã hiểu được SSH Key là gì và cách sử dụng nó ra sao, đây là một trong những việc rất quan trọng mà bạn cần làm vì chúng ta không thể đăng nhập vào VPS mãi thông qua phương thức truyền thống bằng mật khẩu, nó rất nguy hiểm nếu như máy tính bạn có mã độc hoặc vô tình làm lộ mật khẩu. Do đó hãy thực hành việc này làm cho quen và sử dụng ngay trên VPS của bạn.
Quý khách hàng có nhu cầu đăng ký tên miền, đăng ký email doanh nghiệp, hosting wordpress giá rẻ, vps giá rẻ, ssl... xin vui lòng đăng ký tại Nhân Hòa để được hưởng ưu đãi giá rẻ nhất. Trân trọng!
+ Fanpage: https://www.facebook.com/nhanhoacom
+ Chỉ đường: https://g.page/nhanhoacom
+ Chương trình khuyến mãi mới nhất: https://nhanhoa.com/khuyen-mai.html
————————————————————
CÔNG TY TNHH PHẦN MỀM NHÂN HÒA
Hotline: 1900 6680
Trụ sở chính: Tầng 4 - Tòa nhà 97-99 Láng Hạ, Đống Đa, Hà Nội
Tel: (024) 7308 6680 – Email: sales@nhanhoa.com
Chi nhánh: 270 Cao Thắng (nối dài), Phường 12, Quận 10, Tp.HCM
Tel: (028) 7308 6680 – Email: hcmsales@nhanhoa.com