Linux操作系统下SSH默认22端口修改方法
第1步:假如要限制通过SSH登陆Linux的IP,那么可以如下做:首先:修改/etc/hosts.deny,在其中加入sshd:ALL,注意不能加#号
然后:修改:/etc/hosts.allow,在其中进行如下设置:sshd:192.168.1.16
这样设置就只允许192.168.1.16的IP通过SSH登陆上LINUX机器了。
当然在做为服务器方面,不安装gnome和KDE图形化界面,可以增加安全系数。
第2步:修改配置文件
vi /etc/ssh/sshd_config
找到#Port 22一段,这里是标识默认使用22端口,修改为如下:
Port 22
Port 999
去掉前面的#号。
然后保存退出
在终端输入命令:/etc/init.d/sshd restart 重新启动ssh服务。
这样SSH端口将同时工作与22和999上。
现在编辑防火墙配置:vi /etc/sysconfig/iptables
启用999端口。
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 999 -j ACCEPT
在终端输入命令:/etc/init.d/iptables restart 重新启动防火墙的访问规则。
现在请使用ssh工具连接999端口,来测试是否成功。如果连接成功了,则再次编辑sshd_config的设置和防火墙的端口,将里边的Port22删除,然后重新启动ssh服务和防火墙的访问规则即可。
之所以先设置成两个端口,测试成功后再关闭一个端口,是为了防止在修改conf的过程中,万一出现掉线、断网、误操作等未知情况时候,还能通过另外一个端口连接上去调试,以免发生连接不上必须派人去机房,导致问题更加复杂的麻烦。 顶一个!非常实用的教程,对于经常管理Linux服务器的朋友来说很实用。
我来补充几点小建议:
关于SSH安全,除了改端口和限制IP,还可以考虑:
1. 禁用root用户直接登录,改用普通用户+sudo
2. 使用密钥登录,禁用密码认证
3. 安装fail2ban防止暴力破解
关于防火墙规则,在CentOS 7以上版本,可以用以下命令更方便地操作:
firewall-cmd --permanent --add-port=999/tcp
firewall-cmd --reload
firewall-cmd --list-ports
另外提醒一下,如果用的是云服务器(比如阿里云、腾讯云),别忘了在安全组里也要开放对应的端口。
感谢楼主的分享,步骤讲解得很清楚,特别是先开两个端口再关一个的方法很稳妥,避免了远程调试失败要去机房的尴尬哈哈。
支持!希望能看到更多这样的技术干货帖。
圆梦公社加油![加油]
頁:
[1]