Mặc định khi hệ điều hành mới được deploy (VPS hoặc máy chủ vật lý), các nhà cung cấp sẽ mở cổng mặc định login ssh là 22 và phương thức đăng nhập bằng mật khẩu.
Để đảm bảo đăng nhập an toàn hơn tránh scan password và đôi khi bạn không thể nhớ được mật khẩu thì giải pháp dùng ssh key sẽ phù hợp.
Chú ý: một số người dùng thường nhầm lãn việc khi sử dụng ssh key thì không thể sử dụng đăng nhập bằng mật khẩu nữa, nhưng thực tế là chúng không liên chúng không liên quan với nhau, tất cả do bạn cấu hình trong sshd_config. có thể cho phép đồng thời cả hai phương thức cùng lúc.
Table of Contents
Bước 1: Tạo key đăng nhập ssh
Tạo thư mục chứa key
trong ví dụ này JDC hướng dẫn bạn tạo ra thư mục .ssh tại thư mục /root (viết là ~/.ssh/)
Gõ lệnh: mkdir ~/.ssh
chmod 0700 ~/.ssh
Tạo key
Gõ lệnh: ssh-keygen -t rsa -f ~/.ssh/key_cua_ban
chmod 0400 ~/.ssh/key_cua_ban
Trong đó:
-t rsa là quy định kiểu key là rsa
-f ~/.ssh/key_cua_ban là chỉ định tên file của key, nếu không chỉ định tham số này thì chương trình sẽ mặc định tạo ra 2 key public và private tên là id_rsa (private key) và id_rsa.pub (public_key)
Ngoài ra còn tham số -b hay được sử dụng quy định số lượng bits mã hóa, nếu không quy định thì mặc định chương trình sẽ tạo key mã hóa 2048 bits, nếu bạn muốn mã hóa cao hơn thì có thể thêm vào tham số -b 4096 có nghĩa là sẽ mã hóa 4096 bits.
Sau khi tạo key thành công bạn sẽ có được 02 file key như sau:
Trong đó chức năng từng file như sau:
File key_cua_ban.pub là public key được để trên máy chủ
File key_cua_ban là private key là file bạn sẽ tải về máy tính cá nhân và thêm vào chương trình kết nối ssh đến máy chủ.
Lấy private key về máy
Cách lấy file này về bạn có thể sử dụng bất kỳ chương trình sftp, scp nào để tải file về hoặc trong trường hợp bạn không có trình kế nối này ví dụ bạn sử dụng putty thì bạn sẽ copy nội dung của file và tạo file trên máy với nội dung trên.
Gõ lệnh: cat ~/.ssh/key_cua_ban
Copy đoạn nội dung như sau và tạo file trên máy cá nhân với nội dung vừa copy ở trên
Bước 2: Sửa file sshd_config để nhận key
file quy định phương thức đăng nhập ssh trên Centos là /etc/ssh/sshd_config
Gõ lệnh: nano /etc/ssh/sshd_config
Tìm dòng AuthorizedKeysFile và sửa nội dung như sau:
ở bước này bạn có thêm tùy chọn là đóng mở phương thức login bằng mật khẩu, nếu vẫn cho phép thì tìm dòng PasswordAuthentication đặt giá trị là yes giống như trong hình
Nếu muốn chỉ đăng nhập bằng key thì đặt giá trị là no
Lưu lại file sshd_config
Bấm Ctrl + 0 và nhấn Enter khi được hỏi lưu lại hay không
Bấm Ctrl + X để thoát khỏi chương trình.
Bước 3: Tắt selinux
Gõ lệnh: nano /etc/selinux/config
Bước 4: Khởi động lại máy chủ và đăng nhập bằng key
Ví dụ trên chương trình MobarXterm
Trong ví dụ trên JDC đồng thời đổi cổng login ssh để tăng thêm tính bảo mật, nếu bạn muốn đổi cổng login ssh như trên thì làm theo hướng dẫn sau: Hướng dẫn đổi cổng login SSH trên Centos 6/7
Leave A Comment?