Tại Sao Cần Thay Đổi Cổng Mặc Định SSH?
SSH (Secure Shell) là giao thức kết nối từ xa được sử dụng phổ biến bởi các quản trị viên hệ thống để quản lý máy chủ Linux/Unix. Mặc định, dịch vụ SSH hoạt động trên cổng 22, điều này tạo ra một vấn đề bảo mật tiềm ẩn bởi các cuộc tấn công brute-force thường nhắm vào cổng này đầu tiên.
Việc thay đổi cổng mặc định SSH từ 22 sang một cổng khác giúp giảm đáng kể nguy cơ bị tấn công tự động. Đây là một biện pháp bảo mật đơn giản nhưng hiệu quả theo nguyên tắc "security by obscurity", khiến kẻ tấn công khó xác định được cổng SSH đang hoạt động trên máy chủ của bạn.
Lợi Ích Của Việc Thay Đổi Cổng SSH
Khi thực hiện thay đổi cổng mặc định SSH, bạn sẽ nhận được nhiều lợi ích bảo mật:
- Giảm thiểu nguy cơ bị tấn công tự động và brute-force
- Giảm nhiễu logs do các bot liên tục quét cổng 22
- Tạo thêm một lớp bảo mật bổ sung (defense in depth)
- Giảm tải hệ thống do không phải xử lý các kết nối không mong muốn
Các Bước Thay Đổi Cổng Mặc Định SSH
Bước 1: Kiểm Tra Cổng Hiện Tại
Trước khi thực hiện thay đổi, hãy kiểm tra cổng SSH đang sử dụng:
$ sudo netstat -tulpn | grep ssh tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd tcp6 0 0 :::22 :::* LISTEN 1234/sshd
Bước 2: Chỉnh Sửa File Cấu Hình SSH
Mở file cấu hình SSH để thay đổi cổng mặc định:
$ sudo nano /etc/ssh/sshd_config
Tìm dòng có chứa "Port 22" và thay đổi thành cổng mới (ví dụ: 2222). Nếu dòng này bị comment (có dấu # ở đầu), hãy bỏ dấu # và thay đổi số cổng.
# Port 22 Port 2222
Lưu ý: Nên chọn một cổng lớn hơn 1024 và nhỏ hơn 65535, đồng thời kiểm tra để đảm bảo cổng đó chưa được sử dụng bởi dịch vụ khác.
Bước 3: Cấu Hình Tường Lửa (Firewall)
Nếu bạn đang sử dụng tường lửa, bạn cần mở cổng mới:
Đối với UFW:
$ sudo ufw allow 2222/tcp $ sudo ufw reload
Đối với firewalld:
$ sudo firewall-cmd --permanent --add-port=2222/tcp $ sudo firewall-cmd --reload
Đối với iptables:
$ sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT $ sudo iptables-save > /etc/iptables/rules.v4
Bước 4: Khởi Động Lại Dịch Vụ SSH
Khởi động lại dịch vụ SSH để áp dụng thay đổi:
$ sudo systemctl restart sshd
Bước 5: Kiểm Tra Kết Nối
Quan trọng: Đừng đóng phiên SSH hiện tại cho đến khi bạn đã xác minh rằng có thể kết nối thông qua cổng mới.
Mở một terminal mới và thử kết nối qua cổng mới:
$ ssh username@server_ip -p 2222
Các Biện Pháp Bảo Mật SSH Bổ Sung
Thay đổi cổng mặc định chỉ là một phần trong chiến lược bảo mật SSH. Bạn nên kết hợp với các biện pháp sau:
- Sử dụng xác thực khóa SSH thay vì mật khẩu
- Cấu hình Fail2ban để chặn các IP có hành vi đáng ngờ
- Giới hạn quyền truy cập root trực tiếp
- Giới hạn người dùng được phép SSH vào hệ thống
- Sử dụng SSH version 2 và vô hiệu hóa version 1
Khắc Phục Sự Cố Khi Thay Đổi Cổng SSH
Nếu bạn gặp vấn đề khi kết nối qua cổng mới, hãy kiểm tra:
- File cấu hình SSH có lỗi cú pháp không
- Tường lửa đã được cấu hình đúng chưa
- SELinux có đang chặn kết nối không (nếu có sử dụng)
- Kiểm tra logs bằng lệnh:
sudo journalctl -u sshd
Kết Luận
Thay đổi cổng mặc định SSH từ 22 sang một cổng khác là một biện pháp bảo mật đơn giản nhưng hiệu quả. Tuy nhiên, đây chỉ là một phần của chiến lược bảo mật toàn diện. Các quản trị viên hệ thống nên kết hợp với nhiều lớp bảo mật khác để đảm bảo an toàn tối đa cho máy chủ.
Bằng cách thực hiện các bước đơn giản được trình bày trong bài viết này, bạn có thể nâng cao đáng kể bảo mật cho hệ thống SSH của mình, đồng thời giảm thiểu nguy cơ bị tấn công tự động nhắm vào cổng mặc định.