Hướng dẫn đổi port SSH 22 trên Linux

Mặc định port 22 được sử dụng cho giao thức SSH. Kẻ xấu có thể lợi dụng việc cấu hình mặc định này để thực hiện brute-force nhằm dò tìm mật khẩu của tài khoản trên Linux. Vì vậy để tăng tính bảo mật, chúng ta nên sử dụng port khác thay cho port SSH mặc định.

1. Chọn port SSH trên Linux

Trước tiên, cần kiểm tra xem có dịch vụ nào đang sử dụng port chúng ta cần dùng cho giao thức SSH hay không. Ví dụ, chúng ta chọn port 2411 thay cho port 22

netstat -nltp | grep 2411

Nếu output không có gì tức là port 2411 chưa được dịch vụ nào sử dụng

2. Mở port SSH mới trên Firewall

Vì mặc định Linux chỉ mở port 22 cho giao thức SSH nên khi sử dụng port mới, chúng ta cần phải mở port qua các loại firewall tùy theo nhu cầu sử dụng.

Nếu bạn sử dụng iptables làm firewall, bạn có thể tham khảo lệnh dưới đây:

iptables -A INPUT -p tcp --dport 2411 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

Trong CentOS, firewall mặc định sẽ là firewalld. Bạn có thể tham khảo lệnh dưới đây để mở port mới cho SSH

firewall-cmd –permanent –add-port=2411/tcp
firewall-cmd --reload

Trong Ubuntu, firewall mặc định sẽ là ufw. Bạn có thể tham khảo lệnh dưới đây để mở port mới cho SSH

ufw allow 2411
systemctl restart ufw

3. Cấu hình port SSH mới

Chúng ta thực hiện thay đổi port ở file cấu hình SSH /etc/ssh/sshd_config:

nano /etc/ssh/sshd_config

Kiếm dòng #Port 22, bỏ dấu # và thay đổi thành port 2411

port ssh

Lưu cấu hình và khởi động lại dịch vụ để SSH.

Sau đó chúng ta có thể vô hiệu hóa SELinux để việc thay đổi port SSH có hiệu lực:

nano /etc/sysconfig/selinux

Sửa dòng SELINUX=enforcing thành SELINUX=disabled

Sau đó chúng ta cần reboot lại server để nhận VPS cấu hình mới.

reboot

Hoặc chúng ta có thể vô hiệu hóa tạm thời SELinux bằng lệnh dưới đây:

setenforce 0

Kiểm tra trạng thái SELinux bằng dòng lệnh sau:

sestatus

Hoặc trường hợp chúng ta không muốn vô hiệu hóa SELinux, chúng ta sử dụng lệnh sau để chỉnh sửa SELinux cho phép chúng ta đổi port SSH mới:

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

Đối với CentOS, bạn dùng lệnh sau để khởi động lại dịch vụ SSH

systemctl restart sshd

Đối với Ubuntu hoặc Debian, bạn dùng lệnh sau để khởi động lại dịch vụ SSH

systemctl restart ssh

Kiểm tra port SSH mới sau khi đổi:

Chúc các bạn thành công.

Bạn có thể xem nhiều bài viết hơn tại đây : https://howto.nsupport.asia/

Was this article helpful?

Related Articles

Leave A Comment?