Trả lời nhanh
Làm sao để tăng cường bảo mật SSH trên VPS mới?
Để tăng cường bảo mật SSH trên VPS mới, tạo một người dùng sudo, cài khóa công khai của bạn, rồi đặt PasswordAuthentication no, PermitRootLogin no và AllowUsers trong một tệp drop-in dưới /etc/ssh/sshd_config.d/, kiểm tra bằng sshd -t và tải lại. Gloamport Dusk, 1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic, có giá $5.25 mỗi tháng khi đăng ký 12 tháng.
Những tùy chọn sshd_config nào quan trọng nhất trên VPS mới?
| Tùy chọn | Giá trị | Mặc định trong sshd_config manual |
|---|---|---|
PasswordAuthentication | no | yes |
KbdInteractiveAuthentication | no | yes (tệp của Debian đặt no) |
PermitRootLogin | no | prohibit-password |
PubkeyAuthentication | yes | yes |
AllowUsers | người dùng sudo của bạn | tất cả người dùng |
MaxAuthTries | 3 | 6 |
LoginGraceTime | 30 | 120 giây |
Giá trị mặc định theo sshd_config(5), kiểm tra ngày 2026-11-10. Các giá trị ở cột giữa là lựa chọn của hướng dẫn này.
Tại sao phải tăng cường bảo mật SSH trước tiên?
SSH là dịch vụ duy nhất mà mọi VPS đều mở từ phút đầu tiên, nên đó là cửa đầu tiên cần khóa. Việc dò đoán mật khẩu trên cổng 22 bắt đầu ngay khi một địa chỉ được kích hoạt, và đăng nhập chỉ bằng khóa loại bỏ hoàn toàn lớp tấn công đó.
Root over SSH. Paste a public key at checkout and password login stays switched off; leave it empty and the team sets a temporary root password, shown in your dashboard, that you change at first login. Nếu bạn đã dán khóa khi thanh toán, đăng nhập bằng mật khẩu đã tắt sẵn, và hướng dẫn này bổ sung các giới hạn còn lại. Nếu bạn nhận một mật khẩu root tạm thời, hãy đổi nó ngay khi đăng nhập lần đầu bằng passwd, trước khi làm bất cứ việc gì khác. Theo khảo sát của Gloamport về 10 tháng 11, 2026, 6 máy chủ nhận Monero và không yêu cầu email khi đăng ký, nên trên những máy chủ đó, khóa SSH và số tài khoản là hai bí mật duy nhất bảo vệ máy.
Làm sao để tăng cường bảo mật SSH trên VPS mới, từng bước?
Thực hiện theo thứ tự này, và giữ phiên đầu tiên mở đến cuối.
Tạo một người dùng thường
Chạy
adduservà thêm người dùng vào nhómsudo, để bạn không còn làm việc dưới quyền root.Cài khóa công khai cho người dùng đó
Sao chép khóa được phép của bạn sang người dùng mới, hoặc chạy
ssh-copy-id -itừ máy tính của bạn. Thử đăng nhập trong một terminal thứ hai.Viết tệp drop-in
Tạo
/etc/ssh/sshd_config.d/00-hardening.confvới các tùy chọn trong bảng. Debian đưa thư mục đó vào đầu sshd_config, và giá trị đầu tiên của một tùy chọn sẽ thắng, nên tên tệp phải được sắp xếp lên trước.Kiểm tra cấu hình
Chạy
sshd -t. Lệnh này kiểm tra tệp cấu hình và khóa mà không khởi động lại gì cả. Chạysshd -Tđể in các giá trị hiệu lực.Tải lại dịch vụ
Khởi động lại
sshvà mở một phiên mới với người dùng mới trước khi đóng phiên cũ.Xác nhận root và mật khẩu bị từ chối
Thử đăng nhập bằng root và bằng mật khẩu từ một terminal khác. Cả hai đều phải thất bại.
Làm sao để tạo người dùng sudo và cấp khóa cho nó?
Tạo người dùng, thêm vào nhóm sudo, và sao chép khóa được phép của tài khoản root sang người dùng đó. Dùng khóa của bạn từ Làm sao để tạo khóa SSH cho VPS? nếu bạn chưa có khóa. Thay admin bằng tên người dùng bạn muốn.
adduser admin
usermod -aG sudo admin
mkdir -p /home/admin/.ssh
cp /root/.ssh/authorized_keys /home/admin/.ssh/authorized_keys
chown -R admin:admin /home/admin/.ssh
chmod 700 /home/admin/.ssh
chmod 600 /home/admin/.ssh/authorized_keysTệp drop-in của sshd_config chứa gì?
Đặt các tùy chọn trong một drop-in duy nhất để việc nâng cấp gói không bao giờ ghi đè chúng. Hướng dẫn sshd_config cho biết với hầu hết từ khóa, giá trị đầu tiên gặp được sẽ được dùng, và tệp của Debian bao gồm /etc/ssh/sshd_config.d/*.conf ở đầu, nên tiền tố 00- làm cho tệp của bạn thắng các drop-in khác như drop-in riêng của image cloud.
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers admin
MaxAuthTries 3
LoginGraceTime 30sshd -t
sshd -T | grep -E "passwordauthentication|permitrootlogin|allowusers"
systemctl restart sshCó nên đổi cổng SSH hay thêm tường lửa không?
Đổi cổng giảm nhiễu trong nhật ký nhưng không thêm bảo mật thực sự, nên hãy coi đây là tùy chọn. Hướng dẫn cho phép đặt bằng Port, và được phép có nhiều dòng Port. Nếu bạn đổi cổng, hãy mở cổng mới trên tường lửa trước khi khởi động lại ssh. Ảo hóa KVM đầy đủ: kernel riêng, quy tắc tường lửa riêng và mã hóa đĩa riêng nếu bạn thiết lập, để bạn dùng tường lửa phù hợp với mình.
Khi SSH đã được siết chặt, các lớp tiếp theo là một đường hầm riêng tư (Làm sao để thiết lập WireGuard trên VPS?) và một ổ dữ liệu được mã hóa (Có thể mã hóa ổ đĩa VPS bằng LUKS không?). Dusk, với 2 GB RAM, có giá $5.25 mỗi tháng khi đăng ký 12 tháng; xem trang giá.
Tóm tắt
- Làm việc bằng người dùng sudo, không phải root.
- Đặt
PasswordAuthentication novàKbdInteractiveAuthentication no. - Đặt
PermitRootLogin nokhi người dùng sudo đã hoạt động. - Dùng
AllowUsersđể nêu ai được đăng nhập. - Đặt các tùy chọn trong một drop-in có tên được sắp xếp lên đầu, chẳng hạn
00-hardening.conf. - Chạy
sshd -ttrước mỗi lần khởi động lại và giữ một phiên thứ hai mở. - Dusk có giá $5.25 mỗi tháng khi đăng ký 12 tháng.
Tăng cường bảo mật SSH trên VPS: các câu hỏi thường gặp
PermitRootLogin prohibit-password nghĩa là gì?
Nó cho phép root đăng nhập bằng khóa nhưng không bằng mật khẩu. Hướng dẫn liệt kê đây là mặc định, còn no đi thêm một bước nữa.
Tại sao thay đổi của tôi trong sshd_config không có tác dụng?
Giá trị đầu tiên của một tùy chọn sẽ thắng, và Debian bao gồm thư mục sshd_config.d trước. Một drop-in cũ hơn có thể đã đặt tùy chọn đó, nên hãy đặt tên tệp của bạn là 00-hardening.conf và kiểm tra bằng sshd -T.
Làm sao để kiểm tra cấu hình mà không làm hỏng SSH?
Chạy sshd -t, lệnh này chỉ kiểm tra tệp cấu hình và khóa. Giữ một phiên thứ hai mở khi bạn khởi động lại.
Có cần tắt đăng nhập bằng mật khẩu nếu tôi đã dán khóa khi thanh toán không?
Trên Gloamport, khi khóa đã được dán thì đăng nhập bằng mật khẩu đã tắt sẵn. Đặt các tùy chọn trong một drop-in sẽ giữ nguyên trạng thái đó sau các lần nâng cấp.
MaxAuthTries làm gì?
Nó giới hạn số lần thử xác thực trên mỗi kết nối. Hướng dẫn cho mặc định là 6, còn hướng dẫn này đặt 3.
Nguồn (3)
- Trang hướng dẫn sshd_config(5) — Debian (checked 2026-11-10)
- Trang hướng dẫn sshd(8) (-t và -T) — Debian (checked 2026-11-10)
- Trang hướng dẫn ssh-copy-id(1) — Debian (checked 2026-11-10)