centos6.5 ssh安全优化,修改默认端口名,禁止root远程登录

一、修改默认端口号

第一步:

vi /etc/sysconfig/iptables

添加修改后的端口号的配置

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22001 -j ACCEPT

本例中,使用22001端口

添加后保存配置并重启防火墙。

service iptables save (保存防火墙配置)  ----此处貌似有问题,运行这个以后又恢复到修改前了。这个先不使用。
service iptables restart (重启防火墙)

----可通过 /etc/init.d/iptables status  命令查看是否已添加成功。

第二步:

vi /etc/ssh/sshd_config

去除Port 22 前的#注释符号

添加Port 22001

保存后重启ssh服务

service sshd restart

第三步:用secureCRT等SSH连接工具测试,测试成功的话删除22端口的防火墙配置和端口设置。

不直接修改端口号是为了防止修改过程中出错,导致无法连接到服务器。

----------------------------------------

本人遇到的问题:一开始我新增的端口号是2201,但是怎么重启都无法连接,后来改成22001才成功,具体原因还未了解。

用sysctl -a|grep ip_local_port_range 查得的范围,2201应该是允许使用的,实际未成功,待继续研究了解。

二、禁止root用户远程登录

第一步:先增加一个普通权限的用户

#useradd ssh_user
#passwd ssh_user

//设置密码,确认密码

第二步:禁止root远程ssh登录:

vi /etc/ssh/sshd_config

PermitRootLogin yes
改为
PermitRootLogin no

保存并重启ssh服务

service sshd restart (或者/etc/init.d/sshd restart)

使用普通用户ssh_user登录,然后用su root切换到root用户操作。

原文地址:https://www.cnblogs.com/yangcclg/p/5404372.html