對於網上傳的修改cent7的ssh默認端口的方法都已失效,試了半天才知道cent7的firewall也改了,對於修改cent7服務器的ssh登錄默認端口的方法需要進行修改,semanage 工具使用和防火牆配置才能生效。
一、修改配置文件
vim /etc/ssh/sshd_config
添加一條端口,並暫時先不要將22端口刪除,以避免之後不可用的情況
修改保存 sshd_config 文件後重啓 sshd 服務:
systemctl restart sshd
網傳的方法到這裏就結束了,就想用新端口去連接了???做夢吧,大清都亡了
二、使用semanage 工具
SELinux 全稱 Security Enhanced Linux (安全強化 Linux),用於明確的指明某個進程可以訪問哪些資源(文件、網絡端口等)。接下來用 SELinux 管理配置工具 semanage,來修改 ssh 可訪問的端口
1、安裝semanage 工具:
yum provides semanage
yum -y install policycoreutils-python
2、使用semanage 工具添加新端口:
semanage port -a -t ssh_port_t -p tcp 6881
3、添加完後,查看下ssh允許登錄端口:
semanage port -l | grep ssh
表明添加成功
4、再來一次重啓ssh服務:
systemctl restart sshd
注:不要妄圖想使用semanage 工具刪除22端口,刪不掉的,留着吧,用防火牆禁了就好
三、修改防火牆配置
1、添加防火牆規則,放行6881端口
firewall-cmd --permanent --zone=public --add-port=6881/tcp
2、禁掉22端口,防止暴露
firewall-cmd --permanent --zone=public --remove-port=22/tcp
3、重啓防火牆,使規則生效
firewall-cmd --reload
4、查看當前端口開放狀態:
firewall-cmd --permanent --list-port
好了,可以看到22被禁了,6881被開了
配置完成,嘗試登錄
ssh -p6881 root@ip
成功