Ssh vào linux bằng key

Ssh vào linux bằng key

Mở đầu

Một trong các phương thức đăng nhập vào Cloud Server 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ê Cloud Server, tuy nhiên việc sử dụng mật khẩu luôn có 2 nguy cơ lớn là:

– Bạn sẽ mất hoàn toàn nếu lộ mật khẩu.

– Các attacker có thể sử dụng Brute Force Attack để dò tìm mật khẩu.

Tạo SSH Key trên Linux Server

Đăng nhập vào Cloud Server với quyền root, nhập lệnh

Trên CentOS 6/7/ Ubuntu 14/16

ssh-keygen -t rsa

Tiếp tục server sẽ hỏi bạn có muốn thiết lập keypharse hay không, nếu muốn thì bạn nhập keypharse cần thiết lập rồi nhấn Enter, sau khi tạo xong server sẽ hiện như sauServer hỏi bạn muốn lưu private key này vào đâu mặc định /root/.ssh/id_rsa

Ssh vào linux bằng key


Hình trên bạn có thể thấy server có ghi đường dẫn lưu file private key (id_rsa) và file public key (id_rsa.pub)

Tiếp theo ta cần thay đổi tên file “id_rsa.pub” thành “authorized_keys” bằng lệnh

mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
Tạo SSH Key

Tại máy tính cần kết ối đến server, mở phần mềm WinSCP để download file id_rsa về máy tính

Ssh vào linux bằng key

Tiếp theo mở phần mềm puttygen để convert file này sang file có đuôi ppk

Donwload puttygen: http://file.matbao.support/wl/?id=8NG04AYMTfOol32SNIiSdyGlG5vCZVJW

Mở phần mềm puttygen, và chọn Load

Ssh vào linux bằng key

Chọn file id_rsa đã download từ server

Ssh vào linux bằng key

Sau khi đã load xong file id_rsa, chọn Save Private Key, đặt tên file ví dụ “vps-matbao-key”

Ssh vào linux bằng key

Sau khi đã load xong file id_rsa, chọn Save Private Key, đặt tên file ví dụ “vps-matbao-key”

3.Cấu hình SSH sử dụng Pubkey để kết nối

Chỉnh sửa file /etc/ssh/sshd_config

nano /etc/ssh/sshd_config

Chỉnh sửa dòng

PubkeyAuthentication   yes
AuthorizedKeyFile    /root/.ssh/authorized_keys

Nếu bạn muốn chỉ sử dụng SSH Key để kết nối và không cần dùng Password

Chỉnh sửa dòng

PasswordAuthentication no

Lưu ý: Khi tùy chỉnh thông số này, bạn chỉ có thể đăng nhập vào server bằng SSH Key, bạn không thể sử sụng Password để đăng nhập nữa

Sau khi chỉnh sửa xong, lưu file và khởi động lại dịch vụ sshd

service sshd restart

4. Kết nối SSH đến Linux Server

Mở phần mềm putty, nhập địa chỉ IP server và port (mặc định port 22)Chọn tab SSH -> Authentication

Ssh vào linux bằng key

Chọn Browse, tìm đến file Private Key định dạng PPK vừa khởi tạo bên trên

Ssh vào linux bằng key

Trở lại tab Session trên putty, chọn Open

Ssh vào linux bằng key

Nhập Username và putty sẽ sử dụng SSH Key để chứng thực SSH

Ssh vào linux bằng key

Kiểm tra thử kết nối đến server không sử dụng Private Key

Ssh vào linux bằng key

Server sẽ thông báo không hỗ trợ kiểu chứng thực, bởi vì ở trên chúng ta đã bỏ kiểu chứng thực bằng Password thay vào đó đã sử dụng SSH Key để chứng thực.

Gửi phản hồi về bài viết này