最近,我发现我登录ssh时候经常出现安全警告:登录错误X次,IP为:XX.XX.XX.XX
我以为是我以前登录错误,但是,我查了一下IP,发现不对劲:IP是来着新加坡的!看来,我的服务器应该被暴力破解过
我刚开始的处理方法是,平时不开启SSH端口,然后又用的时候开启SSH端口,可是,我有时候担心起来,会不会他在我开启SSH端口的同时登陆我的服务器,把我的服务器变成肉鸡呢?
于是,我决定修改服务器的ssh端口,基本上端口修改的复杂一点点,那些小白攻基本上攻击不进来了,然后加上密码设定的复杂一点,不用的时候关闭SSH端口和宝塔端口,基本上可以提高服务器安全等级几个档次
首先,你的系统需要时CentOS7(不知道对其他系统是否适用)
直接编辑SSH配置文件:
[text] vi /etc/ssh/sshd_config //编辑SSH文件 [/text]
(ssh使用方法请见我的博客的VI命令使用方法文章)
然后找到一行
[text]#Port 22[/text]
把注释去掉
然后修改端口,变成:
[text]Port XXXX //注意XXXX修改成你要的端口 ,请勿直接复制,否则两行泪警告[/text]
然后添加到防火墙,否则你保存SSH配置后你会无法登录
[text]firewall-cmd –zone=public –add-port=XXXX/tcp –permanent //注意XXXX修改成你要的端口 ,请勿直接复制,否则再次两行泪警告[/text]
重启防火墙配置:
[text]firewall-cmd –reload [/text]
然后查看添加端口是否成功(可以预防两行泪警告),如果添加成功则会显示yes,否则no
[text]firewall-cmd –zone=public –query-port=XXXX/tcp[/text]
=======附加=======
如果你的Linux开启了SELinux,你可能需要在附加设置一下
怎么查看是否开启:
[text]sestatus [/text]
然后按照一下配置
使用以下命令查看当前SElinux 允许的ssh端口:
[text]semanage port -l grep ssh[/text]
添加XXXX端口到 SELinux
[text]semanage port -a -t ssh_port_t -p tcp XXXX[/text]
然后确认一下是否添加进去
[text]semanage port -l grep ssh[/text]
如果成功会输出
[text]ssh_port_t tcp XXXX, 22[/text]
最后重启SSH服务,即可应用更改
[text]systemctl restart sshd.service[/text]
(阿里云可能需要在防火墙添加端口才可以正常访问)