5154

Good Luck To You!

centos系统下如何查询sftp服务端口号?

在CentOS系统中查询SFTP端口是一项常见的管理任务,SFTP(SSH File Transfer Protocol)通常运行在SSH服务之上,默认端口为22,出于安全或特定需求,管理员可能会修改默认端口,以下是查询SFTP端口的详细方法,涵盖多种场景和工具使用。

centos系统下如何查询sftp服务端口号?

检查SSH配置文件

SFTP依赖于SSH服务,因此首先需要检查SSH的主配置文件,在CentOS中,SSH配置文件通常位于/etc/ssh/sshd_config,使用文本编辑器(如vinano)打开该文件,查找Port指令。

sudo vi /etc/ssh/sshd_config

在文件中搜索Port关键字,若未注释掉(以开头),则其后的数字即为SSH/SFTP端口,若文件中未指定Port,则默认使用22,修改后需重启SSH服务使配置生效:

sudo systemctl restart sshd

使用netstat命令查询端口

netstat是传统的网络工具,可查看当前监听的端口,执行以下命令查看SSH/SFTP端口:

sudo netstat -tulnp | grep ssh
  • -t:显示TCP端口
  • -u:显示UDP端口
  • -l:仅显示监听端口
  • -n:以数字形式显示地址和端口
  • -p:显示进程ID和名称 输出结果中,类似0.0.0:22::2222的条目即为监听端口。

使用ss命令查询端口

ssnetstat的替代工具,性能更优,执行以下命令:

sudo ss -tulnp | grep ssh

参数与netstat类似,但输出格式更简洁,若看到LISTEN状态且关联SSH进程的端口,即为SFTP端口。

检查防火墙规则

CentOS默认使用firewalldiptables管理端口访问,若SSH端口被修改,需确保防火墙允许该端口,对于firewalld,执行:

centos系统下如何查询sftp服务端口号?

sudo firewall-cmd --list-ports

查看已开放的端口列表,若未包含目标端口,可通过以下命令添加:

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --reload

对于iptables,使用:

sudo iptables -L -n | grep ssh

查看进程监听端口

通过lsof命令可查看进程监听的端口:

sudo lsof -i -P -n | grep sshd

输出中类似LISTEN和端口的列即为SSH/SFTP监听端口。

验证端口连通性

确认端口配置后,可通过telnetnc测试连通性。

telnet localhost 22

centos系统下如何查询sftp服务端口号?

nc -zv localhost 22

若显示连接成功,则端口配置正确。


相关问答FAQs

Q1: 如何在CentOS中修改SFTP默认端口?
A1: 修改SFTP端口需编辑SSH配置文件/etc/ssh/sshd_config,找到Port指令并取消注释,设置新端口号(如Port 2222),保存后重启SSH服务:sudo systemctl restart sshd,同时需更新防火墙规则允许新端口访问,避免连接被阻。

Q2: 为什么修改端口后仍无法连接SFTP?
A2: 可能原因包括:防火墙未开放新端口、SELinux策略阻止、SSH服务未重启成功,可通过sudo firewall-cmd --list-ports检查防火墙,sestatus查看SELinux状态,并使用systemctl status sshd确认SSH服务运行状态,必要时调整SELinux策略:sudo setsebool -P ssh_port_t 1

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.