修改ssh端口的详细步骤
使用centos7系统。为了防止服务器再次被攻击,所以建议以下几点:
1. root密码要复杂一点,尽量字母数字特殊字符都有
2. ssh端口最好修改成自己的不要使用默认的22端口
3. 如果可以的话重新增加个用户,然后修改禁止root远程登录
修改ssh端口的详细步骤(centos7):
step1 修改/etc/ssh/sshd_config
vi /etc/ssh/sshd_config
#Port 22 //这行去掉#号,防止配置不好以后不能远程登录,还得去机房修改,等修改以后的端口能使用以后在注释掉
Port 20000 //下面添加这一行
step2 修改firewall配置
firewall添加想要修改的ssh端口:
firewall-cmd --zone=public --add-port=20000/tcp --permanent
#(permanent是保存配置,不然下次重启以后这次修改无效)
reload firewall:
firewall-cmd --reload
#查看添加端口是否成功,如果添加成功则会显示yes,否则no
firewall-cmd --zone=public --query-port=20000/tcp
step3 修改SELinux
使用以下命令查看当前SElinux 允许的ssh端口:
semanage port -l | grep ssh
#添加20000端口到 SELinux
semanage port -a -t ssh_port_t -p tcp 20000
#然后确认一下是否添加进去
semanage port -l | grep ssh
#如果成功会输出
ssh_port_t tcp 20000, 22
step4 重启ssh
systemctl restart sshd.service
step5 测试新端口的ssh连接
测试修改端口以后的ssh连接,如果成功则将step1里面的port 22 重新注释掉
修改ssh端口的详细步骤(centos6):
step1 修改/etc/ssh/sshd_config
vi /etc/ssh/sshd_config
#Port 22 //这行去掉#号,防止配置不好以后不能远程登录,还得去机房修改,等修改以后的端口能使用以后在注释掉
Port 20000 //下面添加这一行
step2 修改iptables配置
iptables添加想要修改的ssh端口:
/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT
/etc/rc.d/init.d/iptables save (service iptables save)
/etc/init.d/iptables restart
step4 重启ssh
service sshd restart
step5 测试新端口的ssh连接
测试修改端口以后的ssh连接,如果成功则将step1里面的port 22 重新注释掉
禁用Root 远程登陆
先在ssh的配置文件里修改Root 远程登陆参数。 禁用root远程登陆。 然后创建一个远程登陆用户。 用这个用户登陆之后,在切换到root用户,拿到最高权限。
2.1 创建普通权限的用户
useradd ruser
passwd ruser
2.2 禁止ROOT远程SSH登录
#vi /etc/ssh/sshd_config
把
PermitRootLogin yes
改为
PermitRootLogin no
2.3 重启sshd服务
#service sshd restart
注意:这些修改不影响已经连接的SSH。 只对以后的的连接产生影响。
注意: 如果系统开起了iptables防火墙,那么还需要把修改之后的端口号添加到防火墙里面,不然SSH会连不上。 关于防火墙端口的添加,参考Blog:
Linux iptables 防火墙 添加删除 端口
iptables -A INPUT -p tcp --dport 新的ssh端口 -j ACCEP
iptables -A OUTPUT -p tcp --sport 新的ssh端口 -j ACCEPT
删除
iptables -D INPUT -p tcp --dport 22 -j ACCEPT