Hướng dẫn đổi Port SSH trên Linux an toàn: cấu hình Firewall và kiểm tra kết nối

Đổi port SSH trên Linux là quá trình thay cổng TCP mặc định 22 của OpenSSH Server bằng một cổng tùy chỉnh như 2222. Để thực hiện an toàn, quản trị viên cần cập nhật sshd_config, mở Firewall, kiểm tra cấu hình, reload dịch vụ và xác nhận kết nối SSH mới trước khi đóng phiên hiện tại.

Đổi Port SSH là gì? Có thực sự an toàn hơn?

SSH (Secure Shell) là giao thức mã hóa cho phép quản trị viên điều khiển máy chủ Linux từ xa. Theo mặc định, SSH sử dụng cổng TCP 22.

Sau khi đổi sang cổng 2222, bạn cần chỉ định cổng mới khi kết nối. Việc thay đổi này giúp giảm lượng bot tự động quét cổng 22, nhưng không thể ngăn chặn hoàn toàn các cuộc tấn công.

Để bảo vệ VPS tốt hơn, bạn nên kết hợp SSH Key, tắt đăng nhập root và cấu hình Firewall giới hạn truy cập.

Chuẩn bị trước khi đổi Port SSH

Nếu mới dùng dòng lệnh, hãy xem trước bài quản trị VPS Linux.

Kiểm tra dịch vụ và cổng hiện tại: Ubuntu/Debian đặt tên service là ssh, còn CentOS/AlmaLinux/Rocky là sshd.

				
					cat /etc/os-release
sudo systemctl status ssh
sudo ss -tlnp | grep ssh
sudo sshd -T | grep '^port'

				
			

Tiếp theo, chọn một cổng mới chưa được ứng dụng khác sử dụng. Ví dụ trong bài viết này, chúng ta sử dụng cổng 2222.

Kiểm tra cổng trước khi sử dụng:

				
					sudo ss -tulnp | grep ':2222 '

				
			

Nếu không có kết quả, cổng 2222 có thể đang trống. Hãy sao lưu cấu hình SSH trước khi chỉnh sửa:

				
					sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

				
			

Lưu ý: Không đóng phiên SSH hiện tại trong suốt quá trình thực hiện. Đồng thời, hãy đảm bảo VPS có VNC hoặc Web Console để khôi phục quyền truy cập nếu xảy ra lỗi.

Kiểm tra phiên bản Linux và trạng thái dịch vụ SSH trên VPS bằng Terminal
Kiểm tra phiên bản Linux và trạng thái dịch vụ SSH trên VPS bằng Terminal

Đổi Port SSH bằng tệp sshd_config

Tệp /etc/ssh/sshd_config chứa cấu hình của SSH Server. Bạn cần chỉnh sửa tệp này để thay đổi cổng lắng nghe mặc định.

Mở tệp cấu hình bằng Nano:

				
					sudo nano /etc/ssh/sshd_config

				
			

Tìm dòng #Port 22 và thay đổi thành:

				
					Port 2222

				
			

Trong quá trình thử nghiệm, bạn có thể khai báo đồng thời hai cổng để duy trì kết nối cũ:

				
					Port 22
Port 2222

				
			
				
					sudo sshd -t
sudo sshd -T | grep '^port'

				
			

Nếu lệnh sshd -t không hiển thị lỗi, cấu hình đã hợp lệ.

Lưu ý: Trên CentOS, AlmaLinux hoặc Rocky Linux bật SELinux, bạn cần khai báo cổng mới trước khi nạp lại SSH:

				
					sudo semanage port -a -t ssh_port_t -p tcp 2222

				
			
Chỉnh sửa tệp sshd_config và thay đổi cổng SSH mặc định 22 thành 2222 trên Linux
Chỉnh sửa tệp sshd_config và thay đổi cổng SSH mặc định 22 thành 2222 trên Linux

Mở Port mới trên Firewall

Sau khi thay đổi cấu hình SSH, bạn cần mở cổng 2222 trên Firewall. Nếu không thực hiện bước này, kết nối từ bên ngoài có thể bị chặn.

Mở cổng SSH bằng UFW trên Ubuntu/Debian

Kiểm tra trạng thái Firewall:

				
					sudo ufw status verbose
				
			

Cho phép kết nối TCP qua cổng 2222:

				
					sudo ufw allow 2222/tcp

				
			

Mở cổng SSH bằng Firewalld trên CentOS/AlmaLinux

Với hệ thống sử dụng Firewalld, chạy các lệnh sau để thêm cổng mới và tải lại Firewall:

				
					sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports
				
			

Kiểm tra Cloud Firewall và Security Group

Nếu nhà cung cấp VPS có Security Group hoặc Cloud Firewall riêng, hãy thêm quy tắc Inbound cho phép TCP 2222.

Đây là bước thường bị bỏ sót: dù UFW hoặc Firewalld đã mở cổng, VPS vẫn có thể không kết nối được nếu tường lửa bên ngoài chưa cho phép truy cập.

Mở cổng TCP 2222 trên UFW Firewall để cho phép kết nối SSH đến VPS Linux
Mở cổng TCP 2222 trên UFW Firewall để cho phép kết nối SSH đến VPS Linux

Reload SSH và xác nhận cổng mới

Sau khi cấu hình Firewall, hãy nạp lại dịch vụ SSH để áp dụng cổng mới.

Ubuntu/Debian

				
					
sudo systemctl reload ssh

				
			

CentOS/AlmaLinux/Rocky Linux

				
					
sudo systemctl reload sshd

				
			

Trên một số phiên bản Ubuntu sử dụng ssh.socket, nếu SSH vẫn lắng nghe cổng cũ, hãy kiểm tra và nạp lại socket:

				
					
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket
sudo systemctl restart ssh

				
			

Kiểm tra lại cổng SSH đang lắng nghe:

				
					
sudo ss -tlnp | grep ssh

				
			

Nếu kết quả hiển thị địa chỉ có cổng :2222 ở trạng thái LISTEN, SSH đã lắng nghe trên cổng mới.

Kiểm tra kết nối SSH từ máy tính cá nhân

Trước khi đăng nhập, bạn có thể kiểm tra cổng mới bằng công cụ Netcat:

				
					
nc -zv SERVER_IP 2222

				
			

Một số kết quả thường gặp:

  • succeeded: Cổng kết nối thành công.
  • Connection refused: SSH chưa lắng nghe trên cổng mới.
  • Connection timed out: Firewall hoặc Security Group có thể đang chặn kết nối.

Sau đó, mở một cửa sổ Terminal mới và đăng nhập bằng cổng 2222:

				
					
ssh -p 2222 username@SERVER_IP

				
			

Sau khi đăng nhập thành công, kiểm tra tài khoản hiện tại và quyền sudo:

				
					
whoami
sudo -v

				
			

Quan trọng: Hãy giữ nguyên Terminal SSH cũ và chỉ đóng phiên này sau khi đã xác nhận đăng nhập thành công bằng cổng 2222. Đây là cách hạn chế nguy cơ mất quyền truy cập VPS.

Kiểm tra dịch vụ SSH Linux đang lắng nghe trên cổng TCP 2222 bằng lệnh ss.
Kiểm tra dịch vụ SSH Linux đang lắng nghe trên cổng TCP 2222 bằng lệnh ss.
Đăng nhập VPS Ubuntu bằng tài khoản quanadmin thông qua SSH cổng 2222 từ Windows Terminal.
Đăng nhập VPS Ubuntu bằng tài khoản quanadmin thông qua SSH cổng 2222 từ Windows Terminal.

Đóng cổng SSH 22 sau khi kiểm tra

Khi đã xác nhận cổng 2222 hoạt động ổn định, bạn có thể đóng cổng 22 để hạn chế truy cập không cần thiết.

Đối với UFW

				
					
sudo ufw delete allow 22/tcp

				
			

Đối với Firewalld

				
					
sudo firewall-cmd --permanent --remove-service=ssh
sudo firewall-cmd --reload

				
			

Đồng thời, hãy xóa dòng Port 22 trong sshd_config nếu trước đó bạn đã khai báo hai cổng. Không đóng cổng cũ trước khi xác nhận kết nối mới hoạt động.

Xem Thêm  4 Cách Cài SSL Miễn Phí Cho VPS Bằng Let’s Encrypt 2026

Lỗi thường gặp khi đổi Port SSH

LỗiNguyên nhânCách xử lý
Connection refusedSSH chưa lắng nghe cổng mới.Kiểm tra sshd_config, dịch vụ SSH và SELinux.
Connection timed outFirewall hoặc Security Group chặn kết nối.Mở đúng TCP 2222 trên các lớp Firewall.
Permission deniedSai tài khoản, mật khẩu hoặc SSH Key.Kiểm tra username và thông tin xác thực.

Nếu không thể kết nối sau khi đổi cổng, hãy sử dụng VNC hoặc Web Console của nhà cung cấp VPS để truy cập máy chủ và khôi phục cấu hình.

Khôi phục tệp cấu hình đã sao lưu bằng lệnh:

				
					
sudo cp /etc/ssh/sshd_config.backup /etc/ssh/sshd_config
sudo systemctl restart ssh

				
			

Trên CentOS hoặc AlmaLinux, hãy thay dịch vụ ssh bằng sshd nếu hệ thống sử dụng tên dịch vụ này.

Tăng cường bảo mật SSH sau khi đổi Port

Đổi cổng SSH chỉ là bước bảo vệ ban đầu. Để tăng cường an toàn cho VPS Linux, bạn nên thực hiện thêm các biện pháp sau:

  • Sử dụng SSH Key: Tạo khóa Ed25519 bằng ssh-keygen -t ed25519, sau đó cấu hình đăng nhập bằng khóa.
  • Tắt đăng nhập root: Tạo tài khoản riêng có quyền sudo và đặt PermitRootLogin no sau khi kiểm tra đăng nhập.
  • Cấu hình Fail2ban: Cập nhật cổng SSH mới trong cấu hình jail để chặn các lần đăng nhập thất bại.
  • Giới hạn địa chỉ IP: Chỉ cho phép IP đáng tin cậy truy cập nếu bạn có IP tĩnh.
  • Theo dõi nhật ký: Kiểm tra lịch sử đăng nhập và cập nhật OpenSSH thường xuyên.

Đặc biệt, trước khi tắt xác thực bằng mật khẩu, hãy đảm bảo SSH Key đã hoạt động và bạn vẫn có phương án truy cập dự phòng.

Cấu hình bảo mật SSH trên Ubuntu bằng cách tắt đăng nhập root với PermitRootLogin no
Cấu hình bảo mật SSH trên Ubuntu bằng cách tắt đăng nhập root với PermitRootLogin no

Kết luận

Đổi Port SSH là một bước đơn giản giúp giảm các lượt quét tự động nhắm vào cổng 22 trên VPS Linux. Tuy nhiên, để tránh mất quyền truy cập, bạn cần sao lưu cấu hình, kiểm tra cú pháp, mở Firewall và thử kết nối bằng cổng mới trước khi đóng cổng cũ.

Nếu đang tìm kiếm VPS Linux sử dụng ổ cứng NVMe, toàn quyền root và hỗ trợ VNC Console để quản trị từ xa, bạn có thể tham khảo các gói dịch vụ tại THUEVPSGIARE.COM.

Có Thể Bạn Thích
Bài viết mới
Zalozalo
Telegram
Lên đầu trang