侧边栏壁纸
  • 累计撰写 1,975 篇文章
  • 累计创建 73 个标签
  • 累计收到 20 条评论

目 录CONTENT

文章目录

Linux CentOS 修改SSH端口

猿哥
2022-04-24 / 0 评论 / 0 点赞 / 500 阅读 / 0 字

一、修改sshd_config

1、编辑文件,路径:/etc/ssh/sshd_config (需要root权限才能看到。)

  • 删除Port 22前的#号
  • 增加新的ssh端口号29500

image

2、重启sshd服务:systemctl restart sshd.service

3、查看sshd的服务状态:systemctl status sshd.service

正常情况下会报错如下,需要在SELinux添加端口号。

image

二、SELinux添加ssh端口

查看SElinux是否开启:/usr/sbin/sestatus

image

发现Selinux是开启状态,查看SSH服务的端口:semanage port -l | grep ssh

image

若semanage 没有安装,执行安装命令:yum install -y policycoreutils-python

向SELinux添加端口号:semanage port -a -t ssh_port_t -p tcp 29500,这个命令需要等待20秒左右。

查看SElinux端口号是否添加成功: semanage port -l | grep ssh

image

重启sshd服务:systemctl restart sshd.service

查看sshd状态:systemctl status sshd.service,9550已经被监听。

image

此时,如果直接用ssh登陆,会发现依旧报错,因为防火墙还没有添加新的ssh端口。

三、防火墙添加ssh端口

查看防火墙状态:firewall-cmd --list-all ,ports中没有新增的ssh端口号。

image

防火墙增加端口: firewall-cmd --zone=public --add-port=29500/tcp --permanent

```Plain Text

说明:

开放29500端口

--zone 作用域

--add-port=29500/tcp #添加端口,格式为:端口/通讯协议

--permanent 永久生效,没有此参数重启后失效

```

image

添加完毕过后重新读取防火墙规则或者重启防火墙,规则才生效,重新加载防火墙规则:firewall-cmd --reload 或者重启防火墙:systemctl restart firewalld.service

image

再次查看防火墙状态: firewall-cmd --list-all

image

四、注释掉22端口

使用新的端口号连接服务器。

重新编辑sshd配置文件:vim /etc/ssh/sshd_config,删除或注释掉Port 22这一行

重启sshd服务:systemctl restart sshd.service

到此,修改ssh端口号结束。

五、常见问题

ssh连接新的端口号报错:no route to host,防火墙端口没开放或者Selinux中没开放新的端口。

0
博主关闭了所有页面的评论