上一篇
Linux SSH端口怎么查看
- Linux
- 2025-06-18
- 2294
要查看Linux SSH端口,编辑/etc/ssh/sshd_config文件搜索’Port’行,或运行sudo netstat -tuln | grep ssh命令检查监听端口,默认端口通常为22。
在Linux系统中,SSH(Secure Shell)是远程管理服务器的核心工具,其端口号决定了服务监听连接的位置,默认端口为22,但出于安全考虑,管理员常会修改它,以下是几种查看SSH端口的可靠方法:
通过配置文件直接查看(推荐)
SSH服务的配置文件明确指定了端口号,这是最权威的查看方式:
-
打开配置文件:
sudo nano /etc/ssh/sshd_config
(需要
root
权限,使用sudo
或切换至root用户) -
查找端口参数:
在文件中搜索Port
或#Port
(注释行)。Port 2222 # 若此行未注释,表示SSH端口为2222 #Port 22 # 默认配置被注释,实际未生效
注意:
- 若存在多个
Port
行,以最后一个未注释的配置为准。 - 若未显式配置,则使用默认端口22。
- 若存在多个
通过系统服务状态检查
通过systemctl
命令查看SSH服务运行时状态:
sudo systemctl status sshd
在输出中搜索 “Listening on” 或 “port” 字段:
Active: active (running)
...
May 15 10:00:00 server sshd[1234]: Server listening on 0.0.0.0 port 2222.
使用网络工具检测监听端口
通过以下命令检查当前所有监听端口,并过滤SSH服务:
方法1:ss
命令(推荐)
sudo ss -tuln | grep ssh
输出示例:
tcp LISTEN 0 128 0.0.0.0:2222 0.0.0.0:* users:(("sshd",pid=1234,fd=3))
2222
即为SSH端口。
方法2:netstat
命令(旧版系统备用)
sudo netstat -tulnp | grep sshd
输出中 :2222
或 :22
表示端口号。
通过进程信息验证
查看SSH守护进程启动参数:
ps aux | grep sshd
若输出包含 -p 2222
或 --port=2222
,则表明端口被指定为2222。
关键注意事项
- 权限要求:
除ps
命令外,其他方法均需root
权限(使用sudo
)。 - 配置生效:
修改sshd_config
后需重启服务:sudo systemctl restart sshd
- 安全建议:
- 避免使用默认端口22,降低暴力破解风险。
- 配置防火墙(如
ufw
或firewalld
)限制SSH端口的访问IP。 - 启用密钥认证替代密码登录。
方法 | 使用场景 | 是否需要root |
---|---|---|
查看配置文件 | 确认静态配置(最准确) | 是 |
systemctl status sshd |
快速检查运行中的服务端口 | 是 |
ss 或 netstat |
验证端口实际监听状态 | 是 |
检查进程参数 | 辅助验证运行时参数 | 否 |
通过以上任一方法,均可准确获取SSH端口,日常管理中建议优先检查配置文件(/etc/ssh/sshd_config
),并结合网络工具验证服务状态。
引用说明基于Linux系统通用管理实践,参考了OpenSSH官方文档、
sshd_config(5)
手册页及systemctl(1)
命令指南,网络工具用法符合iproute2
(ss
命令)和net-tools
(netstat
命令)标准实现。