以root身份登录,编辑/etc/ssh/sshd_config
文件。
找到#Port 22
, 删除#号,更改端口号,然后保存退出。
然后需要更改防火墙设置,这里使用iptables代替原来的防火墙。
首先安装iptables:
yum -y install iptables-services
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables
然后再修改 iptables 的防火墙规则。修改文件 /etc/sysconfig/iptables,将 80 和 443 端口放行。完整内容如下:
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
# 更改22端口
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
保存配置文件后,让iptables重新读取配置文件,再让sshd服务重启一下:
service iptables reload
service sshd restart
退出后使用更改过的端口再登录一次就可以成功了。
可能出现的问题
再次登录时,拒绝访问:
有可能是防火墙没有放行相应的端口号,或者防火墙没有重启。
也可能是防火墙配置正确,但是sshd没有重启。
解决方法: 使用vps后台的console窗口直接登录vps,将这两个配置检查一下,再都重启一下就行。