- A+
SSH为Secure Shell,由IETF的网络工作小组(Network Working Group)所制定,SSH是建立在应用层和传输层基础上的一种安全协议,SSH传输数据是加密的,可以有效防止传输过程被截取数据保障安全。SSH协议默认端口号为TCP 22,这个端口也是端口扫描软件重点扫描的对象,所以我们可以修改此端口来增加服务器的安全性。
Centos7下更改SSH的默认端口
Centos7与之前的版本最大的不同,在于Centos6和之前的版本使用的iptables,而Centos7版本以及未来以后的版本则默认使用 FirewallD。鉴于Centos7的趋势化,收集并学习如何在Centos7下更改SSH默认22端口。
FirewallD 简介
FirewallD是iptables的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数Linux发行版的仓库中都有。与直接控制iptables相比,使用FirewallD有两个主要区别:
- FirewallD使用区域和服务而不是链式规则。
- 它动态管理规则集,允许更新规则而不破坏现有会话和连接。
修改shhd_config
在增加Port端口1025保存之后
重启SSH
增加SElinux端口
在Centos7系统更改shhd_config的过程中,你会看到这段注释:
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
所以,下一步就是告诉SElinux这步操作,我们需要用到semanage
首先,我们安装下semanage
yum -y install policycoreutils-python
添加新端口1025
检测是否成功
当返回值出现1025和22即为成功。
配置防火墙FirewallD
首先检测防火墙是否已经启用,启用返回值runing,反之,为not running
若没有启用,需要启用
systemctl enable firewalld
若已经启用,则进行下一步
查看防火墙的默认、活跃区域(zones)
firewall-cmd --get-active-zones
看两条命令的返回值是否含有public,有则为正确。
端口永久开放
为了防止出错,22端口一同开放
与临时开放的区别在于多了permanent
firewall-cmd --permanent --zone=public --add-port=1024/tcp
防火墙重载
查看已暴露端口
firewall-cmd --zone=public --list-all
重启SSH
之后用Putty、Xshell之类的软件换成1025端口登录,看能否成功登录。
禁用22端口
首先,删除ssh运行端口
在Port 22前加#成为#Port 22后保存退出即可
在把防火墙中的22端口移除
重启并查看是否移除
firewall-cmd --permanent --list-port
若移除,则成功。
总结,我们已经成功修改了linux默认的ssh端口,由22改为1025,提升了系统安全,使得端口扫描工具无法推测出SSH的连接端口。
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏