Đăng nhập bằng mật khẩu là phần yếu nhất của một máy chủ mới: các bot quét internet và dội bom cổng 22 bằng những lần đoán suốt ngày đêm. Thay mật khẩu bằng một cặp SSH key loại bỏ hoàn toàn bề mặt tấn công đó, và đây là việc đầu tiên đáng làm trên bất kỳ VPS mới nào. Toàn bộ quy trình chỉ gồm vài lệnh.
Cách SSH key hoạt động
Bạn tạo một cặp: một private key ở lại trên máy tính của bạn và một public key bạn đặt lên máy chủ. Máy chủ thách thức bất kỳ ai kết nối; chỉ người giữ private key tương ứng mới có thể trả lời. Bạn có thể chia sẻ public key thoải mái — chính private key mới là thứ bạn cần bảo vệ.
1. Tạo cặp key (trên máy tính của chính bạn)
ssh-keygen -t ed25519 -C "you@example.com"
# press Enter to accept the default path (~/.ssh/id_ed25519)
# set a passphrase for extra safety, or leave empty
Lệnh này tạo ra hai tệp: ~/.ssh/id_ed25519 (private — không bao giờ chia sẻ) và ~/.ssh/id_ed25519.pub (public).
2. Sao chép public key lên máy chủ của bạn
Cách dễ nhất, nếu bạn vẫn còn đăng nhập được bằng mật khẩu:
ssh-copy-id root@YOUR.SERVER.IP
Không có ssh-copy-id? Làm thủ công:
cat ~/.ssh/id_ed25519.pub | ssh root@YOUR.SERVER.IP \
"mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
3. Kiểm tra key trước khi thay đổi bất cứ điều gì
Mở một terminal mới và đăng nhập — bạn không nên bị hỏi mật khẩu máy chủ:
ssh root@YOUR.SERVER.IP
Nếu nó hoạt động, hãy giữ phiên này mở trong khi bạn thực hiện bước tiếp theo, để một sai lầm không thể khóa bạn ngoài.
4. Tắt đăng nhập bằng mật khẩu
Trên máy chủ, sửa /etc/ssh/sshd_config:
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart ssh # on some distros the service is named sshd
Từ giờ chỉ key của bạn mới vào được, và tiếng ồn brute-force liên tục trên cổng 22 đơn giản là dội ngược lại.
Cảnh báo thành thật
- Không bao giờ tắt mật khẩu trước khi key của bạn hoạt động. Hãy xác nhận đăng nhập bằng key ở một terminal thứ hai trước — đó là quy tắc duy nhất ngăn bạn bị khóa ngoài.
- Sao lưu private key của bạn, và cân nhắc thêm một key thứ hai (một laptop và một bản dự phòng) để mất một thiết bị không đồng nghĩa với bị khóa ngoài.
- Nếu bạn thực sự bị khóa ngoài, console của nhà cung cấp sẽ đưa bạn trở lại — EQVPS trang bị console trên trình duyệt cho mọi VPS chính vì lý do này.
Bước tiếp theo
SSH key là bước đầu tiên của một máy chủ được gia cố bảo mật. Kết hợp nó với một tường lửa — xem cách cấu hình tường lửa UFW và cách thiết lập fail2ban — và chạy toàn bộ danh sách kiểm tra bảo mật cho VPS mới trước khi phơi bày bất cứ điều gì. Trên một VPS trả bằng crypto không cần KYC, một key cũng là cách bạn giữ quyền truy cập thực sự là của riêng mình.
Bình luận
Chưa có bình luận nào. Hãy là người đầu tiên.