Hardening Linux server — 10 bước khóa SSH để không bị quét port là bay server

Phần lớn server bị hack không phải vì hacker quá giỏi, mà vì SSH cấu hình mặc định: cổng 22 mở toang, root login bật, password dễ đoán. Những bot quét port trên internet chỉ cần vài phút là tìm thấy và brute-force đăng nhập. Bài viết này hướng dẫn 10 bước hardening SSH giúp server an toàn hơn ngay lập tức.

Hardening Linux server — 10 bước khóa SSH để không bị quét port là bay server

1. Đổi port SSH mặc định (tránh bị quét tự động)

Mặc định SSH chạy trên port 22 và luôn là mục tiêu đầu tiên. Đổi port không phải bảo mật tuyệt đối, nhưng giảm ngay 90% brute-force tự động.

sudo nano /etc/ssh/sshd_config

# chỉnh thành
Port 2222

Sau đó restart SSH:

sudo systemctl restart sshd

Khi kết nối:

ssh -p 2222 user@server

2. Tắt đăng nhập bằng root

Root login = hack một phát là xong. Không để root đăng nhập trực tiếp.

sudo nano /etc/ssh/sshd_config

PermitRootLogin no

3. Chỉ dùng key, cấm password

Password có thể bị brute-force, SSH key thì không.

sudo nano /etc/ssh/sshd_config

PasswordAuthentication no
PubkeyAuthentication yes

4. Tạo user riêng và thêm vào sudo

Để thay thế root khi cần lệnh sudo:

sudo adduser deploy
sudo usermod -aG sudo deploy

5. Copy Public Key lên server

Trên máy local:

ssh-copy-id -p 2222 deploy@server

Nếu SSH không hỗ trợ ssh-copy-id, manual:

mkdir -p ~/.ssh
echo "PUBLIC_KEY" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

6. Dùng Fail2Ban chặn brute-force SSH

Fail2Ban theo dõi log và chặn IP spam SSH.

sudo apt install fail2ban

Tạo config:

sudo nano /etc/fail2ban/jail.local

[sshd]
enabled = true
port = 2222
filter = sshd
maxretry = 3
bantime = 24h

7. Cấu hình firewall (UFW)

Chỉ mở port cần dùng, khóa tất cả còn lại.

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp
sudo ufw enable

8. Bật rate limit SSH (ngăn spam connection)

Chặn bot spam request trước khi Fail2Ban xử lý.

sudo ufw limit 2222/tcp

9. SSH Banner cảnh báo (hạn chế pháp lý và psy ops)

Không phải bảo mật, nhưng nhiều attacker bỏ cuộc khi thấy banner.

sudo nano /etc/issue.net

Unauthorized access is prohibited.
sudo nano /etc/ssh/sshd_config

Banner /etc/issue.net

10. Theo dõi log SSH theo thời gian thực

Xem IP nào đang cố access SSH:

tail -f /var/log/auth.log

Hoặc trên CentOS/RHEL:

journalctl -u sshd -f

Checklist nhanh

  • Đổi port SSH
  • Tắt root login
  • Dùng SSH key
  • Cấu hình firewall chỉ mở port cần thiết
  • Fail2Ban chống brute-force

Kết luận

Hardening SSH không phức tạp, nhưng hiệu quả cực lớn. Sau 10 bước trên, bot quét port và brute-force gần như không còn cửa tấn công. Server an toàn hơn, bạn ngủ ngon hơn.

Bình luận


  • Không có bình luận.

Init Toolbox

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...