centos7修改ssh默认登陆端口号 风行天下

参考网站;

  https://blog.csdn.net/ausboyue/article/details/53691953

第一步:修改SSH配置文件(注意是sshd_config而不是ssh_config,多了个d)

  1. vim /etc/ssh/sshd_config  

找到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后把两行的“#”号即注释去掉,修改成:

Port 22

Port 10086

SSH默认监听端口是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。

Ok,继续,我增加了10086端口,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。

第二步:如果你关闭了SELinux可以忽略第二步。

先查看SELinux开放给ssh使用的端口

  1. semanage port -l|grep ssh  

我的系统打印如下:

ssh_port_t                    tcp      22

可知,SELinux没有给SSH开放10086端口,那么我们来添加该端口:

  1. semanage port -a -t ssh_port_t -p tcp 10086  

完成后,再次查看

  1. semanage port -l|grep ssh  

ssh_port_t                    tcp      22,10086

第三步:如果你关闭了防火墙,可以忽略第三步,话说防火墙不开启太危险了,建议开启。

先查看防火墙是否开启了10086端口:

  1. firewall-cmd --permanent--query-port=10086/tcp  

打印结果如下:

no

表示没有开放10086端口,那么添加下该端口:

  1. firewall-cmd --permanent--add-port=10086/tcp  

打印结果如下:

success

重新加载防火墙策略:

  1. firewall-cmd --reload  

执行成功后,查看10086端口是否被开启:

  1. firewall-cmd --permanent--query-port=10086/tcp  

打印结果如下:

yes

第四步:重启SSH服务和防火墙,最好也重启下服务器

  1. systemctl restart sshd  
  2. systemctl restart firewalld.service  
  3. shutdown -r now  

第五步:尝试通过10086端口登录SSH,或者进入该服务器直接本地访问SSH如下:

  1. ssh root@localhost -p 10086  

如果成功,说明10086已经完全可以使用了,接下来你就可以根据上述步骤把sshd_config的Port22注释掉,SELinux和防火墙(Firewalld关闭22端口就OK,大工造成!

原文地址:https://www.cnblogs.com/yaok430/p/8940325.html