Hướng dẫn thiết lập SSH Keys trên VPS CentOS 7

Bước 1: Tạo một RSA Key Pair

Bước này thường được làm trên máy Linux hoặc máy Mac của chính bạn, một số máy Windows 10 đời mới hỗ trợ SSH trong CMD cũng có thể làm theo

Với các bạn dùng các hệ điều hành Windows cũ hơn, bạn có thể tham khảo việc sử dụg PuTTY, bạn có thể đọc bài viết tại đây

Chạy câu lệnh dưới đây

ssh-keygen

Bước 2: Copy file Public Keys lên server

Cách 1: Dùng công cụ ssh-copy-id

Bạn sử dụng câu lệnh này trên máy của bạn

ssh-copy-id username@IP Server

Cách 2: Dùng SSH

Bạn chạy câu lệnh sau

cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

Trong đó

  • ~/.ssh/id_rsa.pub: Đường dẫn lưu file id_rsa.pub mà bạn đã tạo ở bước 1
  • username: username trên VPS của bạn
  • remote_host: IP của VPS bạn

Ví dụ như

cat /Users/nguyenanhkiet/.ssh/id_rsa.pub. | ssh root@112.78.8.118 "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys"

Sau đó bạn nhập mật khẩu của server vào là xong

Cách 3: Copy thủ công

Bước 1: Chạy câu lệnh sau để copy chuỗi khoá

cat Đường dẫn lưu file id_rsa.pub mà bạn đã tạo ở bước 1

Ví dụ

cat ~/.ssh/id_rsa.pub

Lúc này bạn sẽ thu được mỗi chuỗi khoá gần giống như dưới đây

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9HgH1JLknLLx44+tXfJ7mIrKNxOOwxIxvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q+bqgZ8SeeM8wzytsY+dVGcBxF6N4JS+zVk5eMcV385gG3Y6ON3EG112n6d+SMXY0OEBIcO6x+PnUSGHrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B+ZVIpSDfki9UVKzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G/12N0PPB5CnhHf7ovgy6nL1ikrygTKRFmNZISvAcywB9GVqNAVE+ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77+xiFxgI5QSZX3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1nUhLuJ0X/vh2xPff6SQ1BL/zkOhvJCACK6Vb15mDOeCSq54Cr7kvS46itMosi/uS66+PujOO+xt/2FWYepz6ZlN70bRly57Q06J+ZJoc9FfBCbCyYH7U/ASsmY095ywPsBo1XQ9PqhnN1/YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsdBIbXWhcrRf4G2fJLRcGUr9q8/lERo9oxRm5JFX6TCmj6kmiFqv+Ow9gI0x8GvaQ== demo@test

Bước 2: SSH vào server với username và password như bình thường

Bước 3: Trên server, thực hiện lần lượt các câu lệnh

  • Tạo thư mục .ssh
mkdir -p ~/.ssh
  • Copy chuỗi khoá vào file authorized_keys
echo chuỗi khoá >> ~/.ssh/authorized_keys

Bước 3: Đăng nhập vào CentOS sử dụng Keys

Bạn chỉ cần gõ câu lệnh sau và hệ thống sẽ được kết nối tự động

ssh username@IP Server

Nếu bạn muốn tắt việc đăng nhập bằng password. Các bạn hãy sửa file cấu hình ssh như sau

sudo vi /etc/ssh/sshd_config

Tìm và sửa dòng PasswordAuthentication hoặc chèn thêm dòng mới

PasswordAuthentication no

Khởi động lại SSH

sudo systemctl restart sshd.service

 

Hướng dẫn này có ích cho bạn?

Hướng dẫn liên quan