Linux系统的云服务器默认的远程连接端口为22,为了防止被陌生人扫描爆破,偷偷登录您的云服务器,君哥建议修改为其他端口。下面以centos7、阿里云服务器、修改默认端口为2019来写这篇教程,希望能对童鞋们有所帮助,其他云服务器也可参考执行。
修改和增加云服务器的远程连接端口主要做三处修改,对于使用阿里云服务器,腾讯云服务器等的用户还需要对管理控制台的安全组进行修改。
- 修改SSH端口配置文件
- 修改SeLinux安全策略
- 修改防火墙(FireWall)设置
一、修改SSH端口配置文件
1、使用下面的命令检查您想增加或修改的端口号是否被占用,执行命令后如果没有任何打印,说明这个端口没有被占用,可以增加或修改为这个端口。有打印的话,说明被占用了,一般会列出哪个进程占用。(下面以查看2019端口为例)
netstat -lnp|grep 2019
2、修改SSH配置文件,ssh配置文件的路径一般在 /etc/ssh/ 下面。采用 vim 文本编辑器进行修改,需要注意:修改的是sshd_config而不是ssh_config。
vim /etc/ssh/sshd_config
用下箭头移动光标到“#Port 22”,这一行直接键入“yyp”复制该行到下一行,然后按” i “键进入编辑模式,把 Port22 两行前面的 “ # ” 号去掉,然后按 ” ESC ” 进入命令模式,输入 ” : ” 进入末行模式,输入 ” wq ” 保存并退出 vim 编辑器。修改成如下图所示:
说明:
- 如果检查端口时有打印输出,请更换其他端口号。
- SSH默认监听端口是22,如果不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。
- 刚才修改配置文件时保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。
- 等到新端口2019测试正常,再通过修改配置文件关闭22端口。
二、修改 SELinux 安全策略
有些教程建议直接关闭 SELinux ,君哥觉着为了安全着想,还是不要关闭为好。本教程将从没有关闭 SELinux 管理工具semanage进行说明。
1、通过下面的命令检查是否关闭了SELinux ,如果打印输出结果为 disabled ,则说明已经关闭了 SELinux 安全策略,可以忽略 “ 第二步:修改 SELinux 安全策略 ”,直接进入 “ 第三步:修改 firewall 防火墙设置 ”。
sestatus -v
2、检查是否安装了安装 SELinux 管理工具 semanage
- 用下面的命令检查是否安装了安装 SELinux 管理工具 semanage ,如果有显示帮助信息,可以跳过安装SELinux管理工具这一步,如果不是帮助信息,请安装SELinux管理工具semanage。
semanage -h
- 用下面的命令安装依赖包
yum install policycoreutils-python
- 用下面的命令安装管理工具
yum provides semanage
3、查看SELinux开放给ssh使用的端口,可以看到我的系统只开放了22端口,SELinux没有给SSH开放 2019 端口。
semanage port -l|grep ssh
4、添加需要放行的端口。君哥这里需要开放2019端口,命令如下:
semanage port -a -t ssh_port_t -p tcp 2019
5、添加完成后,再次查看
semanage port -l|grep ssh
三、修改 firewall 防火墙设置
1、先查看防火墙是否开启了 2019 端口,如果您关闭了防火墙,可以忽略“ 第三步:修改 firewall 防火墙设置 ”操作,直接进入 “ 第四步:尝试用新端口进行SSH连接 ” 。话说防火墙不开启太危险了,建议开启。
firewall-cmd --permanent --query-port=2019/tcp
2、打印结果为 no (如上图),表示没有开放 2019 端口,用下面的命令添加该端口:
firewall-cmd --permanent --add-port=2019/tcp
3、打印结果为 success (如上图),用下面的命令重新加载防火墙策略,执行成功后,再次用firewall-cmd –permanent –query-port=2019/tcp 命令查看 2019 端口,会打印 yes 。
firewall-cmd --reload
四、尝试用新端口进行SSH连接
1、重启SSH服务和防火墙,最好也重启下服务器
systemctl restart sshd systemctl restart firewalld.service shutdown -r now
2、尝试通过 2019 端口登录SSH,或者进入该服务器直接本地访问SSH如下:
ssh root@localhost -p 2019
如上图所示,表示连接成功,说明 2019端口 已经完全可以使用了,接下来你就可以根据上述步骤把 sshd_config 的Port22 注释掉,SELinux 和防火墙(Firewalld)关闭 22 端口就 OK,大工造成!下面附上 SELinux 删除22端口的命令:
semanage port -d -t ssh_port_t -p tcp 22
聚云网旨在收集阿里云、腾讯云、百度云等云计算产品的行业资讯,最新优惠信息,提供代金券、优惠券领取,让用户以最低的价格购买服务器,享受优质的产品服务。聚云网提供免费服务器购买咨询,科技前沿资讯,互联网行业动态,软件开发及服务器运维教程,竭全力为用户提供优质服务。
如果您有任何疑问,请在页面右侧点击联系聚云网客服,第一时间为您服务。如果您有教程需求,可以在我们的社区中留言。如果您有经验要分享,我们欢迎您的到来。文章中有什么问题,也欢迎留言指正,我们共同创建一个服务平台。
本站所有内容,如有版权、侵权等问题,请及时联系本站做删除。发布者:聚云网,转载请注明出处:https://www.juyun.top