Linux怎么修改SSH端口_Linux更改sshd默认端口号方法教程【实战】

雨涛大大_7938

雨涛大大_7938

2026-03-26

908人浏览

原创

需修改ssh端口以增强安全或规避策略,步骤包括:一、备份并编辑/etc/ssh/sshd_config,设置port为新端口号;二、防火墙放行该端口;三、selinux启用时需添加端口上下文;四、重启sshd并验证监听与连接;五、确认稳定后禁用22端口。

linux怎么修改ssh端口_linux更改sshd默认端口号方法教程【实战】

如果您尝试通过SSH连接Linux服务器,但希望避免使用默认的22端口以增强基础安全性或规避网络策略限制,则需要修改sshd服务监听的端口号。以下是修改SSH端口的具体操作步骤:

一、编辑sshd配置文件

OpenSSH服务的端口设置由主配置文件/etc/ssh/sshd_config控制。修改前需确保拥有root权限,并建议先备份原配置文件以防配置错误导致连接中断。

1、使用root用户登录系统,执行命令备份配置文件:cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak。

2、用文本编辑器打开配置文件,例如执行:nano /etc/ssh/sshd_config。

3、在文件中查找包含Port 22的行(可能被注释),取消该行注释(删除开头的#),并将数字22替换为期望的新端口号,例如Port 2222。

4、确保该行未被其他Port指令重复定义,仅保留一条有效Port配置。

二、配置防火墙放行新端口

系统防火墙若启用,必须显式允许新SSH端口的入站TCP连接,否则客户端将无法建立连接。

1、若使用firewalld,执行:firewall-cmd --permanent --add-port=2222/tcp(将2222替换为实际端口号)。

2、重载防火墙规则:firewall-cmd --reload。

3、若使用iptables,执行:iptables -A INPUT -p tcp --dport 2222 -j ACCEPT,并保存规则(如service iptables save或对应持久化命令)。

三、禁用SELinux端口限制(如启用)

SELinux默认仅允许sshd绑定到特定端口(包括22),若新端口不在许可列表中,sshd启动时将拒绝绑定,导致服务失败。

1、检查SELinux状态:sestatus,确认其为enforcing或permissive模式。

2、查询当前SSH允许的端口:semanage port -l | grep ssh。

3、为新端口添加SELinux上下文:semanage port -a -t ssh_port_t -p tcp 2222(2222替换为实际端口号)。

4、若系统未安装policycoreutils-python-utils包,需先安装:yum install policycoreutils-python-utils(CentOS/RHEL)或apt install policycoreutils-python-utils(RHEL系较新版本)。

四、重启sshd服务并验证监听状态

配置更新后必须重启sshd服务使更改生效,并确认进程确实在新端口上监听,同时保持原有连接不中断(OpenSSH默认支持平滑重启)。

1、执行重启命令:systemctl restart sshd。

2、检查服务状态是否正常:systemctl status sshd,确认无error或failed提示。

3、验证监听端口:ss -tlnp | grep ':2222'(2222替换为实际端口号),应显示sshd进程绑定信息。

4、在另一终端窗口尝试用新端口连接:ssh -p 2222 username@server_ip,成功登录即表示生效。

五、测试连接并禁用旧端口(可选)

为彻底迁移至新端口,应在确认新连接稳定可用后,从配置中移除对22端口的监听,防止攻击者仍尝试利用默认端口。

1、再次编辑/etc/ssh/sshd_config,确保文件中仅存在一行有效的Port指令,且值为新端口号;删除或注释掉所有其他Port行(包括Port 22)。

2、重新执行:systemctl restart sshd。

3、运行ss -tlnp | grep ':22',确认无sshd进程监听22端口。

4、更新客户端SSH配置(如~/.ssh/config)或连接脚本,统一使用新端口号。

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

969

5

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.25

2800

5

点击input框没有光标怎么办
点击input框没有光标怎么办

点击input框没有光标的解决办法:1、确认输入框焦点;2、清除浏览器缓存;3、更新浏览器;4、使用JavaScript;5、检查硬件设备;6、检查输入框属性;7、调试JavaScript代码;8、检查页面其他元素;9、考虑浏览器兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.11.24

794

4

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3990

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3413

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2573

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6270

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5922

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3453

8

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习