Hướng dẫn sử dụng SSH Public Key cho máy chủ Linux

SSH Public Key cung cấp cho người dùng tính năng truy cập vào Máy chủ mà không cần sử dụng Password. SSH Public Key cũng bảo mật hơn Password ở điểm là Key sử dụng truy cập Máy chủ sẽ không được chia sẻ cho người khác. Trong trường muốn cấp quyền truy cập cho người khác, bạn chỉ cần phải thêm SSH Public Key của người đó vào Máy chủ. SSH Public Key cũng được mã hóa theo chuẩn RSA, do đó việc bẻ khóa cũng khó khăn hơn rất nhiều.

SSH Public Key thường có 2 files, Public Key và Private Key. Thông thường file Private key sẽ được lưu theo dạng ~/.ssh/id_<type> và file Publc Key sẽ được lưu theo dạng ~/.ssh/id_<type>.pub. Cặp Keys thường được mã hóa theo chuẩn RSA, vì vậy, để phân biệt, ta có thế lưu các file trên theo dạng: id_rsa và id_rsa.pub.

* CÁCH TẠO VÀ SỬ DỤNG SSH PUBLIC KEY TRÊN LINUX.

Để tạo và sử dụng SSH Public Key trên Linux, ta có thể làm theo cách sau:

– Tạo cặp Private và Public Keys: Sử dụng dòng lệnh sau:

ssh-keygen -t rsa

SSH-01

  • Bạn có thể để tất cả các thông tin là mặc định bằng cách nhấn Enter (Bao gồm cả bước nhập passphrase). Tuy nhiên theo 123host khuyến cáo bạn nên sử dụng thêm passphrase cho SSH Public Key để tăng cường bảo mật hơn.

– Cặp SSH key sẽ được lưu tại thư mục ~/.ssh/ 

– Ta sẽ tiến hành Upload Public Key tới Máy chủ cần sử dụng:

  • Tại máy chủ cần sử dụng SSH Key, Tiến hành tạo thư mục .ssh tại thư mục home của user cần sử dụng. Tại ví dụ này ta sử dụng SSH key cho user root

mkdir ~/.ssh

  • Tại máy chủ vừa tạo cặp SSH Key, tiến hành copy Public Key vào ~/.ssh/authorized_keys.
scp ~/.ssh/id_rsa.pub root@example.com:/home/user/.ssh/uploaded_key.pub
ssh root@example.com "echo `cat ~/.ssh/uploaded_key.pub` >> ~/.ssh/authorized_keys"

Với thông tin user@example.com là user root tại máy cần upload và example.com là domain hoặc IP tại máy cần upload.

CÁCH TẠO VÀ SỬ DỤNG SSH PUBLIC KEY TRÊN WINDOWS SỬ DỤNG PUTTYGEN

– Có thể tại putty và puttygen về tại địa chỉ: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

  • Chọn Parameters như hình và click Generate: Tại mục Number of bits in Generated key chọn 4096 để tăng cường bảo mật hơn.

1

  • Di chuyển con trỏ chuột trong vùng dưới để tạo key pair

SSH-03

  • Điền Passphrase và chọn save Private key.

SSH-04

  • Ta có thể save public key ở ô trên ra một file text hoặc có thể Load lại sau từ file private key.
  • Lưu ý: Cần phải giữ cẩn thận Private Key này, tránh để lộ hoặc làm mất.

– Tiến hành thêm public key vào máy chủ với user cần thêm key. Tạo file authorized_keys trong thư mục .ssh tại thư mục gốc của user. Tại đây user được sử dụng là root

mkdir ~/.ssh

chmod 700 ~/.ssh

touch ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

  • Mở file authorized_keys và paste toàn bộ ký tự Public Key vừa tạo rồi lưu lại.

– Để kết nối với Máy chủ sử dụng SSH Public Key thông qua putty ta có thể làm như sau:

  • Tại mục Session điền thông tin IP của  Máy chủ cần kết nối tới.

SSH-05

  • Tại mục SSH chọn Auth và Browse tới file Private key đã lưu tại bước trước –> Open

SSH-06

  • Tiến hành nhập user và Passphrase

SSH-07

– Như vậy quá trình tạo SSH Public Key đã hoàn tất.

 

* DISABLE TÍNH NĂNG LOGIN BẰNG PASSWORD TRÊN MÁY CHỦ

– Sau khi đã có thể kết nối thành công tới Máy chủ sử dụng cặp Private và Public Key vừa tạo, ta sẽ tiến hành tắt tính năng login băng password trên Máy chủ để đảm bảo chỉ có thể truy cập vào máy chủ băng Private key đã tạo.

  • Chỉnh sửa file: /etc/ssh/sshd_config trên Máy chủ.

vi /etc/ssh/sshd_config

  • Tìm và chỉnh sửa các thông số sau:

PasswordAuthentication yes --> PasswordAuthentication no

UsePAM yes --> UsePAM no

  • Lưu lại và khởi động lại service SSH.

 

*  MỘT SỐ LỖI THƯỜNG GẶP PHẢI

– Trong trường hợp sau khi tạo và Upload Public Key, tuy nhiên vẫn không thể truy cập băng cặp Key vừa tạo, Lỗi nãy có thể xảy ra do chưa chmod file authorized_keys và thư mục .ssh.

– Nếu đã phân quyền đẩy đủ, lỗi trên có thế do SELinux trên Linux. Tiến hành sử dụng lênh sau và thử lại:

restorecon -FRvv ~/.ssh

 

 

 

 

 

Rate This Article

Leave A Comment?