跳至主要內容

linux修改ssh默认22端口

tanmantang原创大约 2 分钟linuxcentos7sshsshd_config服务器安全

centos7 linux修改ssh默认22端口

查看端口信息

修改前,查看要修改的端口是否被占用

netstat -tunlp | grep 2022

没有输出则未被其他程序占用

修改配置文件{#alterconfig}

大概在17行左右,默认端口 #Port 22 处于注释状态,取消注释,添加新端口

vim /etc/ssh/sshd_config

# 默认22端口,暂时不要关闭这个端口,防止修改失败,导致无法连接到服务器
Port 22

#修改成你需要的端口
Port 2022

重启SSH服务

systemctl restart sshd

配置防火墙

查看详细设置页面

查看防火墙状态

firewall-cmd --state

若防火墙是运行状态,则添加你要修改的端口

firewall-cmd --zone=public --add-port=2022/tcp --permanent
firewall-cmd --reload

若未运行,你可以自行决定是否开放,开放后请添加开放端口

systemctl start firewalld.service

验证端口

退出服务器后,通过2022端口登录,检查是否能够登录成功

若能正常登录,则修改成功,然后 去掉默认22端口,如无法正常登录,请查看检查问题

检查问题

#安装semanage
yum provides semanage
yum -y install policycoreutills-python
#ssh添加新的连接端口
semanage port -a -t ssh_port_t -p tcp 2022
#查看当前SELinux运行的端口
semanage port -l | grep ssh
#会看到 ssh_port_t    tcp    2022, 22
#重启ssh
systemctl restart sshd

去掉22端口{#loss22}

修改配置文件,去掉22端口,只保留Port 2022

防火墙移除22端口,并重启SSH服务

firewall-cmd --zone=public --remove-port=22/tcp --permanent 
firewall-cmd --reload
systemctl restart sshd

重新验证端口