SSH key là một phương thức rất bảo mật giúp cho server của bạn hạn chế tối thiểu việc bị tấn công kiểu dò mật khẩu. Bài này tôi sẽ hướng dẫn cho các bạn cách thiết lập nó trên server chạy Linux.
Nếu bạn dùng Linux thì ta dùng lệnh. Nếu bạn dùng Windows thì hãy kéo xuống dưới.
ssh-keygen -t rsa
Bạn sẽ được hỏi đặt tên cho file đó, sau đó nhập mật khẩu vào 2 lần(có thể bỏ qua và bấm enter). Quá trình hoàn thành sẽ hiện như dưới, key của bạn sẽ được lưu tại thư mục root vì tôi dùng quyền root ssh vào VPS.
Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): key Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in key. Your public key has been saved in key.pub. The key fingerprint is: SHA256:jyz6jSKWsimXAF7ZgvCaiqud0cqcPPYpRYuiFnftRxM root@bach.levuonggmail.com-lakgpsem.novalocal The key's randomart image is: +---[RSA 2048]----+ | | |. | |... o | |...+.. E | |oo.o... S . | |=o.oo. o = | |+o++o o + o | |*BX=.o = . | |OBO=+oo o | +----[SHA256]-----+
Nếu bạn dùng windows có thể tải Putty Gen để tạo SSH key tại đây Chỉ cần bật lên và bấm vào nút Generate rồi di chuột trong vùng màu trắng một lúc là được. Sau đó chọn Save Private key để lưu key lại.
Vậy là ta đã có SSH key bước tiếp theo ta cần thêm Public key vào VPS mà ta cần truy cập. Ta SSH vào VPS cần truy cập và tạo 1 thư mục
mkdir ~/.ssh/
Sau đó tạo 1 file để dán Public key vào, ta copy code Public key vừa tạo ra vào đây rồi lưu lại.
vi ~/.ssh/authorized_keys
Tiếp theo ta bật chế độ SSH key lên bằng cách vào file config
vi /etc/ssh/sshd_config
Tìm tới 2 dòng như dưới và bỏ dấu # trước đầu dòng đi rồi lưu lại.
#PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys
Bạn có thể bỏ phương thức nhập pass cũng được tìm tới dòng dưới và sửa thành no
PasswordAuthentication no
Khởi động lại dịch vụ để cập nhật cấu hình là xong
service sshd restart
Giờ ta sẽ thử SSH vào VPS bằng key qua Putty, bật lên gõ IP và port vào rồi chọn đến file SSH Private key đã lưu trc đó là xong.
Khi truy cập vào bạn sẽ phải gõ tên đăng nhập là được.
login as: root Authenticating with public key "rsa-key-20180303"