Hướng Dẫn Tạo Khóa SSH
Giới thiệu
SSH key là gì?
SSH key là một cặp khóa mã hóa được dùng để xác thực danh tính khi kết nối SSH, có thể sử dụng để thay thế cho việc sử dụng mật khẩu. Gồm 2 phần:
- Private key: File này thường được lưu trữ cẩn thận trên máy tính của bạn và không được chia sẻ, file này thường có độ dài ít nhất từ 2048bit
- Public key: Đây cũng là một file được mã hóa có thể được đặt ở trên bất kỳ server hoặc dịch vụ nào để xác thực
Trong bài viết này vNode sẽ hướng dẫn các bạn cách tạo khóa SSH và thêm vào SSH-Agent
Hướng dẫn thực hiện
1. Tạo SSH key
Thao tác tạo file xác thực này thường khuyến nghị được thực hiện ở trên máy local
Bước 1: Mở terminal
- Linux: Mở ứng dụng terminal
- Windows: Mở PowerShell hoặc Git Bash
Bước 2: Chạy lệnh tạo khóa
Thay [email protected] bằng email của bạn
vNode Tutorial
ssh-keygen -t ed25519 -C "[email protected]"
Bước 3: Chọn vị trí lưu file
Tiếp theo đó Terminal sẽ hỏi:
Nhấn Enter để dùng đường dẫn mặc định hoặc nhập tên file tùy chỉnh (Ví dụ: /home/user/.ssh/ssh_key)
vNode Tutorial
Generating public/private ed25519 key pair. Enter file in which to save the key (/home/user/.ssh/id_ed25519):
Bước 4: Đặt passphrase
- Nên đặt passphrase để bảo vệ private key nếu như máy bị mất hoặc bị truy cập trái phép
- Nhấn Enter 2 lần nếu như muốn bỏ qua
vNode Tutorial
Enter passphrase (empty for no passphrase): Enter same passphrase again:
Sau khi tạo xong bạn sẽ nhận được thông báo dưới đây
vNode Tutorial
Your identification has been saved in /home/user/.ssh/id_ed25519 Your public key has been saved in /home/user/.ssh/id_ed25519.pub The key fingerprint is: SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [email protected]
2. Copy Public key lên VPS
Cách 1: Upload thủ công
Đầu tiên ta cần SSH đến VPS. Tiếp theo đó tạo thư mục .ssh (Nếu chưa có)
vNode Tutorial
mkdir -p ~/.ssh
Thêm nội dung file Public key (file có dạng .pub) vào file authorized_keys. Sau khi paste vào file thì bấm Ctrl + X > Y > Ctrl + O để lưu và thoát
vNode Tutorial
nano ~/.ssh/authorized_keys
Sau đó phân quyền cho file và folder
vNode Tutorial
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
Cách 2: Sử dụng lệnh (Mac/Linux)
Sử dụng lệnh dưới đây. Sau đó nhập mật khẩu vps khi được hỏi
vNode Tutorial
ssh-copy-id -i ~/.ssh/id_ed25519.pub root@ip-vps-cua-ban
Kết luận
SSH key không chỉ an toàn hơn trong việc sử dụng mà còn thuận tiện hơn trong công việc hằng ngày.
Chúc các bạn thành công!
