openEuler 22.03 修改 ssh 22 端口

目录

  • [一、配置 shhd_config](#一、配置 shhd_config)
    • [1.1 文件备份](#1.1 文件备份)
    • [1.2 修改 shhd_config](#1.2 修改 shhd_config)
  • [二、配置 SELinux](#二、配置 SELinux)
    • [2.1 检查 SELinux 状态](#2.1 检查 SELinux 状态)
    • [2.2 安装 semanage](#2.2 安装 semanage)
    • [2.3 修改 SSH 的 SELinux 端口上下文](#2.3 修改 SSH 的 SELinux 端口上下文)
  • 三、配置防火墙
  • [四、重启 SSH 服务并测试](#四、重启 SSH 服务并测试)
  • [五、禁用 22 端口](#五、禁用 22 端口)
    • [5.1 修改 shhd_config](#5.1 修改 shhd_config)
    • [5.2 配置防火墙](#5.2 配置防火墙)
    • [5.3 重启 SSH 服务](#5.3 重启 SSH 服务)

一、配置 shhd_config

1.1 文件备份

bash 复制代码
[root@localhost ~]# sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

1.2 修改 shhd_config

可以使用 ss -tuln 查看已占用的端口。

bash 复制代码
# 1、编辑命令,输入【i】编辑
[root@localhost ~]# sudo vi /etc/ssh/sshd_config

# 2、添加端口,以防无法登录服务器,暂时先放开22端口
# =====================================================================
# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
Port 22
Port 2222
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
# =====================================================================

# 3、保存并退出
在 vi 中按 Esc,输入 :wq,然后回车


如图所示,如果您想要更改SELinux系统上的端口,您必须告知 SELinux 关于这个变化。

二、配置 SELinux

2.1 检查 SELinux 状态

bash 复制代码
[root@localhost ~]# sudo getenforce
Enforcing

如果返回 Enforcing,则需要进行下一步。

2.2 安装 semanage

bash 复制代码
# CentOS 8/RHEL 8+
[root@localhost ~]# sudo yum -y install policycoreutils-python-utils
# CentOS 7/RHEL 7+
#[root@localhost ~]# sudo yum -y install policycoreutils-python

2.3 修改 SSH 的 SELinux 端口上下文

bash 复制代码
# 添加新端口
[root@localhost ~]# sudo semanage port -a -t ssh_port_t -p tcp 2222
# 验证是否成功
[root@localhost ~]# sudo semanage port -l | grep ssh
ssh_port_t                     tcp      2222, 22

三、配置防火墙

bash 复制代码
# 开放端口(TCP协议)
[root@localhost ~]# sudo firewall-cmd --permanent --zone=public --add-port=2222/tcp
success
# 重新加载防火墙规则
[root@localhost ~]# sudo firewall-cmd --reload
success
# 验证端口是否开放
[root@localhost ~]# sudo firewall-cmd --list-ports
2222/tcp

四、重启 SSH 服务并测试

bash 复制代码
# 1、重启服务
[root@localhost ~]# sudo systemctl restart sshd
# 2、查看 SSH 监听的端口
[root@localhost ~]# sudo ss -tnlp | grep sshd
# 3、在新终端测试连接(不要关闭当前终端!),如使用 win 命令提示符
# ssh -p port username@localhost
ssh -p 2222 root@192.168.0.110
输入登录密码

也可以使用Putty、Xshell软件测试是否成功登录。

五、禁用 22 端口

5.1 修改 shhd_config

bash 复制代码
# 1、编辑命令,输入【i】编辑
[root@localhost ~]# sudo vi /etc/ssh/sshd_config
# 2、注释端口
#Port 22
# 3、保存并退出
在 vi 中按 Esc,输入 :wq,然后回车

5.2 配置防火墙

bash 复制代码
# 移除22端口
[root@localhost ~]# sudo firewall-cmd --permanent --zone=public --remove-port=22/tcp
# 重新加载防火墙规则
[root@localhost ~]# sudo firewall-cmd --reload

5.3 重启 SSH 服务

bash 复制代码
[root@localhost ~]# sudo systemctl restart sshd
相关推荐
梦想的旅途213 小时前
从句柄操作到内存指令:企微外部群自动化推送的底层演进
运维·自动化·企业微信
运维有小邓@13 小时前
如何分析 Linux 系统登录失败事件
linux·运维·服务器
物联网软硬件开发-轨物科技13 小时前
技术白皮书:AI驱动下的光伏电站智能化运维新范式
运维·人工智能·物联网
江湖有缘13 小时前
PicoShare + Docker 实战:打造极简自托管文件分享系统
运维·docker·容器
负二代0.013 小时前
系统引导过程及修复
linux·运维·服务器
kft131413 小时前
SkyWalking10.3.0-性能监控管理工具部署教程-Docker模式(二)-保姆级教程
运维·docker·容器
2501_9419820513 小时前
企微死锁破解:自动化推送自动恢复技术
运维·自动化·企业微信
宇钶宇夕13 小时前
CoDeSys入门实战一起学习(十三):函数(FUN)深度解析:自定义、属性与实操案例
运维·算法·自动化·软件工程
bukeyiwanshui13 小时前
Nginx 服务器
运维·服务器·nginx
楼田莉子14 小时前
Linux学习之库的原理与制作
linux·运维·服务器·c++·学习