Tăng cường bảo mật Debian VPS trong mười phút
Một VPS mới nhận được lần thử brute-force SSH đầu tiên trong vài phút sau khi khởi động. Đây là danh sách kiểm tra ngắn gọn, có chủ kiến để đóng các cửa dễ dàng — keys, firewall, fail2ban, cập nhật tự động — trước khi bạn cài đặt bất cứ thứ gì khác.
Cập nhật 2026-06-12

Xem nhật ký xác thực của bất kỳ máy chủ mới nào và bức xạ nền của internet xuất hiện ngay lập tức: bot nhồi thông tin xác thực duyệt qua từ điển chống lại root, máy quét dò tìm các lỗ hổng năm ngoái, trình thu thập lấy dấu vân tay bất cứ thứ gì trả lời trên cổng 80. Không có gì là cá nhân và hầu hết đều tự động, đó là tin tốt — các cuộc tấn công tự động bị đánh bại bởi vệ sinh cơ bản, áp dụng trước khi bạn triển khai khối lượng công việc thực sự. Hướng dẫn này là vệ sinh đó, nén lại thành mười phút trên Debian 12/13 (mọi thứ đều có thể áp dụng cho Ubuntu với các chỉnh sửa nhỏ). Đây cố tình không phải là khung kiểm tra 4.000 từ: đó là những cửa mà bot thực sự thử, được đóng theo thứ tự quan trọng. Chạy nó trên mỗi hộp bạn triển khai ở đây, sau đó tiến hành với VPN, node hoặc mail server mà bạn đến vì.
Những gì danh sách kiểm tra này cố ý bỏ qua
Port-knocking, tường sysctl tăng cường kernel, điều chỉnh SELinux/AppArmor, các bộ phát hiện xâm nhập — tất cả đều là công cụ thực sự, không có cái nào là ưu tiên ngày đầu tiên trên VPS một mục đích, và một số dễ cấu hình sai dẫn đến bị khóa. 80/20 ở đây là trung thực: keys + không mật khẩu + từ chối mặc định + tự vá ngăn chặn về cơ bản tất cả các xâm phạm không có mục tiêu. Thêm máy móc nặng khi mô hình mối đe dọa của bạn chỉ ra một đối thủ sẽ đánh bại những điều cơ bản — và nếu quyền riêng tư cấp đĩa quan trọng với mô hình của bạn, hãy nhớ lớp KVM cho phép bạn chạy mã hóa toàn đĩa bên trong guest.
Sao lưu là một phần của bảo mật
Tăng cường bảo mật giảm khả năng xảy ra; sao lưu giới hạn thiệt hại. Snapshot hàng tuần được bao gồm trên mỗi gói ở đây, nhưng snapshot sống với máy chủ — đối với bất cứ thứ gì bạn không thể mất, hãy đẩy các bản sao ngoại vi được mã hóa cũng như vậy: restic hoặc borg đến một hộp thứ hai (một Pup $3.50 ở vùng khác là mục tiêu sao lưu gọn gàng) mất vài phút để thiết lập. Kiểm tra khôi phục một lần; bản sao lưu chưa kiểm tra là hy vọng, không phải kế hoạch.
- Đăng nhập một lần, cập nhật tất cả
apt update && apt full-upgrade -y && rebootTemplate là snapshot; khoảng cách giữa ngày snapshot và hôm nay chính xác là cửa sổ mà máy quét dò tìm. Vá trước, khởi động lại vào kernel mới, sau đó cấu hình.
- Tạo người dùng và cài đặt SSH key
adduser ops && usermod -aG sudo ops mkdir -p /home/ops/.ssh && nano /home/ops/.ssh/authorized_keys # paste your ed25519 public key chmod 700 /home/ops/.ssh && chmod 600 /home/ops/.ssh/authorized_keys && chown -R ops:ops /home/ops/.sshTạo key trên máy cục bộ của bạn nếu bạn chưa có:
ssh-keygen -t ed25519. Kiểm trassh ops@your-iptrong một terminal thứ hai trước khi tiếp tục. - Khóa sshd
Chỉnh sửa
/etc/ssh/sshd_config.d/hardening.conf:PermitRootLogin no PasswordAuthentication no KbdInteractiveAuthentication no MaxAuthTries 3 AllowUsers opsSau đó
systemctl restart ssh— với phiên dựa trên key của bạn đã được xác nhận hoạt động trước. Việc đoán mật khẩu chết ở đây: không có mật khẩu để đoán. Di chuyển cổng sang thứ gì đó phi tiêu chuẩn làm giảm tiếng ồn nhật ký nhưng là thẩm mỹ, không phải bảo mật; làm vậy cho gọn gàng nếu bạn thích. - Dựng firewall từ chối mặc định (nftables)
Firewall gốc của Debian, bộ quy tắc tối thiểu trong
/etc/nftables.conf:table inet filter { chain input { type filter hook input priority 0; policy drop; ct state established,related accept iif lo accept tcp dport 22 accept icmp type echo-request limit rate 5/second accept icmpv6 type { echo-request, nd-neighbor-solicit, nd-neighbor-advert, nd-router-advert } accept } }systemctl enable --now nftables. Chỉ mở thêm cổng khi bạn triển khai các dịch vụ cần chúng — hướng dẫn VPN mở 51820/udp, hướng dẫn mail mở 25/465/993, v.v. Từ chối mặc định có nghĩa là daemon thử nghiệm bị quên sẽ không thể truy cập thay vì là một vi phạm. - Thêm fail2ban cho tiếng ồn còn lại
apt install -y fail2ban printf "[sshd] enabled = true maxretry = 4 bantime = 1h " > /etc/fail2ban/jail.d/ssh.local systemctl enable --now fail2banVới mật khẩu đã bị vô hiệu hóa, đây là phòng thủ theo chiều sâu cộng với vệ sinh nhật ký — những kẻ vi phạm lặp lại bị hủy ở firewall thay vì làm đầy nhật ký xác thực của bạn.
- Bật cập nhật bảo mật tự động
apt install -y unattended-upgrades dpkg-reconfigure -plow unattended-upgradesĐội bảo mật của Debian giờ vá hộp của bạn trong khi bạn ngủ. Dòng hiệu quả nhất trên trang này được tính theo số lần nhấn phím: hầu hết các xâm phạm thực sự khai thác các bản vá đã tồn tại nhiều tháng.
- Bước xác minh hai phút
Xác nhận tư thế từ bên ngoài:
ssh root@your-ip # must be refused nmap -p- your-ip # only 22 (and your service ports) open last -a; journalctl -u ssh -n 50 # familiarise yourself with normalTùy chọn thêm TOTP 2FA trên tài khoản VPSCrypto của bạn — bảng điều khiển có thể xây dựng lại hoặc reimages máy chủ, vì vậy nó xứng đáng được chăm sóc như root.
Câu hỏi thường gặp
Tôi có nên thay đổi cổng SSH không?
Đó là kiểm soát tiếng ồn nhật ký, không phải bảo mật — máy quét tìm các cổng phi tiêu chuẩn trong vài giây với masscan. Làm vậy nếu nhật ký yên tĩnh giúp bạn nhận thấy các bất thường thực sự; không bao giờ coi đó là lớp phòng thủ. Các biện pháp bảo vệ thực sự là xác thực chỉ bằng key và MaxAuthTries.
Tôi có cần fail2ban nếu mật khẩu bị vô hiệu hóa không?
Về mặt kỹ thuật, không cho SSH — không có gì để brute-force. Nó vẫn nằm trong danh sách vì nó cũng bao gồm các dịch vụ khác bạn có thể thêm sau (mail, panels) và giữ nhật ký có thể đọc được. Bỏ qua nó trên hộp tối giản nếu bạn muốn.
Firewall VPS có cần thiết khi nhà cung cấp có bảo vệ DDoS không?
Chúng giải quyết các vấn đề khác nhau. Giảm thiểu DDoS upstream hấp thụ lũ lụt; chính sách nftables của bạn kiểm soát những dịch vụ nào có thể truy cập được. Từ chối mặc định là về daemon bị quên, không phải gigabit.
Còn Ubuntu thay vì Debian thì sao?
Mọi thứ ở đây đều áp dụng; Ubuntu đi kèm với ufw như giao diện thân thiện hơn (ufw default deny incoming; ufw allow 22/tcp; ufw enable) và bật unattended-upgrades theo mặc định trên các bản phát hành gần đây. Tăng cường sshd là giống hệt nhau.
Làm thế nào để khôi phục nếu tôi tự khóa mình ra ngoài?
Sử dụng quyền truy cập console trong khu vực khách hàng — nó độc lập với sshd, vì vậy bạn có thể sửa cấu hình xấu hoặc khôi phục snapshot. Đây cũng là lý do bạn kiểm tra cấu hình SSH mới trong phiên thứ hai trước khi đóng phiên đầu tiên.
Tiếp tục khám phá.
Triển khai VPS offshore trong khoảng một phút
Không KYC, thanh toán crypto, toàn NVMe. Chọn gói, thanh toán bằng Monero hoặc coin lớn bất kỳ, nhận quyền root sau khoảng 60 giây.
