Bài hướng dẫn chỉ sử dụng với VPS sử dụng OS Linux
Tại sao phải sử dụng SSH KEY #
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, 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 Key, các bạn mở cửa sổ terminal. Cách này đều áp dụng được cho Linux và Window
Thực hiện câu lệnh sau để tạo Public key
$ ssh-keygen -t rsa
Sau khi thực hiện câu lệnh này hệ thống sẽ yêu cầu bạn nhập passphrase (tại đây bạn không cần nhập cũng được ấn enter cho đến khi kết thúc, nhưng vHost khuyên bạn nên nhập vào trường này vì nó giống bảo mật 2 lớp cho Public key của bạn.)
Tiếp đến chúng ta cần coppy đoạn Key này tới VPS của các bạn, ngay tại máy Linux của các bạn ta thực hiện lệnh sau:
#ssh-copy-id –i ~/.ssh/id_rsa IP(đia chỉ IP của VPS)
Với việc copy này thì đoạn mã Public Key vừa tạo trên máy linux của bạn sẽ được chuyển vào VPS tại thư mục /root/.ssh/authorized_keys
Đăng nhập SSH từ máy linux tới VPS
Sau khi copy xong các bạn thực hiện ssh tới VPS theo lệnh sau.
# ssh -i .ssh/id_rsa IP(địa chỉ IP của VPS)
thông báo sau sẽ hiện ra.
Để đảm bảo không có thể đăng nhập vào VPS của bạn bằng mật khẩu root nữa ban cần vào file sshd_config
# vi /etc/ssh/sshd_config
Tìm dòng -> PasswordAuthentication yes
Sau đó sửa yes -> no
Sau đó khởi động lại ssh
# systemctl restart sshd
Với việc này bạn đã vô hiệu hóa xác thực passwd qua SSH và bạn chỉ có thể đăng nhập bằng Public key mà bạn vừa tạo.