用VPS搭建博客、工具服务时,你是否收到过“暴力登录尝试”的告警?多半是因为你还在用默认端口——比如SSH的22端口、FTP的21端口,这些“公开化”的端口早已是黑客扫描攻击的“重灾区”。想要低成本提升服务器安全性,更换端口是最基础也最有效的操作之一。今天就手把手教你完成更换,全程无复杂代码,新手也能跟着走!
第一步:登录VPS,找到配置文件
首先通过SSH工具(如FinalShell、PuTTY)用默认端口登录VPS(别着急关这个窗口,避免配置错误连不上!)。以最常用的SSH端口更换为例,我们需要修改SSH的核心配置文件:
在终端输入命令:
sudo nano /etc/ssh/sshd_config
(nano是新手友好的文本编辑器,若习惯vi也可以替换成vi /etc/ssh/sshd_config)
打开文件后,找到以#Port 22开头的行——这里的22就是默认SSH端口。先删除前面的#(取消注释),再把22改成你想设置的新端口(建议选1024~65535之间的非知名端口,比如13579,避免和常用服务冲突)。改完后按Ctrl+O保存,Ctrl+X退出编辑器。

第二步:更新防火墙,放行新端口
端口改好了,但防火墙还没“同意”新端口接入,得先更新规则。不同系统防火墙命令不同,这里分两种常见情况:
▶ 若用UFW防火墙(Debian/Ubuntu常用):
依次输入:
sudo ufw allow 13579/tcp (允许新端口的TCP连接)
sudo ufw delete allow 22/tcp (删除旧端口的放行规则,避免留隐患)
sudo ufw reload (重启防火墙生效)
▶ 若用Firewalld防火墙(CentOS/RHEL常用):
依次输入:
sudo firewall-cmd --add-port=13579/tcp --permanent (永久放行新端口)
sudo firewall-cmd --remove-port=22/tcp --permanent (删除旧端口规则)
sudo firewall-cmd --reload (重启防火墙)
第三步:重启服务,验证新端口
配置都改好了,需要让SSH服务“重启生效”:
输入命令:sudo systemctl restart sshd
(部分系统服务名是ssh,若提示错误可替换成sudo systemctl restart ssh)
接下来关键验证:打开一个新的SSH窗口,用新端口(比如13579)尝试登录。如果能成功连接,说明更换完成!此时再关闭原来的旧窗口也不迟(避免配置错误导致“失联”)。
避坑提醒
- 选端口别瞎选:避开1024以下的“知名端口”(比如80、443),也别用常见扫描端口(比如3389、8080);
- 检查端口占用:若新端口连不上,用
netstat -tulpn | grep 13579看看是否被其他服务占用; - SELinux注意:CentOS用户若开启了SELinux,需额外执行
semanage port -a -t ssh_port_t -p tcp 13579(否则会被拦截)。
更换端口只是安全的第一步,后续搭配“密钥登录”“禁用密码登录”,才能让VPS真正远离黑客骚扰~