bash,grep "^Port" /etc/ssh/sshd_config,
``,,这会显示配置文件中设置的 SSH 端口号。在CentOS 6.5系统中,SSH(Secure Shell)是一种用于远程登录和管理服务器的重要协议,默认情况下,SSH服务运行在端口22上,为了提高系统的安全性,有时需要查看或修改SSH服务的端口号,本文将详细介绍如何在CentOS 6.5中查看和修改SSH端口。
一、查看SSH端口
1. 使用命令查看SSH端口
最直接的方法是使用netstat
命令来查看当前正在监听的端口:
sudo netstat -antp | grep sshd
该命令会列出所有与SSH相关的端口信息,输出示例如下:
Proto | Recv-Q | Send-Q | Local Address | Foreign Address | State | PID/Program name |
tcp | 0 | 0 | 0.0.0.0:22 | 0.0.0.0: | LISTEN | 1234/sshd |
从上述输出可以看出,SSH服务正在监听0.0.0.0:22
端口。
2. 检查防火墙配置
如果系统中启用了防火墙,还需要检查防火墙规则以确保SSH端口被允许通过,可以使用以下命令查看防火墙状态:
sudo service iptables status
如果防火墙处于活动状态,可以使用以下命令查看具体规则:
sudo iptables -L -n -v
输出示例如下:
Chain | num | pkts | bytes | target | prot opt | in | out | source | destination |
INPUT | ACCEPT | tcp | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 | |||
ACCEPT | tcp | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 | ||||
REJECT | all | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 | 0.0.0.0/0 |
从上述输出可以看出,防火墙允许TCP协议的22端口通过。
二、修改SSH端口
1. 备份配置文件
在进行任何修改之前,建议先备份当前的SSH配置文件:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
2. 编辑配置文件
使用文本编辑器(如vi
)打开SSH配置文件:
vi /etc/ssh/sshd_config
找到以下行:
#Port 22
将其修改为新的端口号,例如41134:
Port 41134
保存并退出编辑器。
3. 重启SSH服务
修改完成后,需要重启SSH服务以使更改生效:
sudo service sshd restart
4. 更新防火墙规则
如果系统中启用了防火墙,还需要更新防火墙规则以允许新的SSH端口通过,备份当前的防火墙配置文件:
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak
编辑防火墙配置文件:
vi /etc/sysconfig/iptables
找到以下行:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
将其修改为新的端口号,例如41134:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 41134 -j ACCEPT
保存并退出编辑器,重启防火墙服务:
sudo service iptables restart
三、验证修改结果
1. 确认SSH服务在新端口上运行
再次使用netstat
命令确认SSH服务是否在新端口上运行:
sudo netstat -antp | grep sshd
输出应显示新的端口号,例如41134:
Proto | Recv-Q | Send-Q | Local Address | Foreign Address | State | PID/Program name |
tcp | 0 | 0 | 0.0.0.0:41134 | 0.0.0.0: | LISTEN | 1234/sshd |
2. 尝试连接新端口
使用SSH客户端尝试连接到新的端口号,
ssh -p 41134 user@hostname
如果连接成功,说明修改已生效。
四、常见问题解答(FAQs)
Q1:如何更改CentOS 6.5中的SSH默认端口数?
A1:要更改CentOS 6.5中的SSH默认端口数,可以按照以下步骤操作:
1、备份当前的SSH配置文件和防火墙配置文件。
2、编辑/etc/ssh/sshd_config
文件,将Port 22
修改为新的端口号,例如Port 41134
。
3、重启SSH服务以使更改生效:sudo service sshd restart
。
4、如果系统中启用了防火墙,还需要更新防火墙规则以允许新的SSH端口通过,编辑/etc/sysconfig/iptables
文件,将--dport 22
修改为新的端口号,例如--dport 41134
,然后重启防火墙服务:sudo service iptables restart
。
5、验证修改结果,确保SSH服务在新端口上运行并且可以通过SSH客户端连接到新端口。
Q2:为什么修改SSH端口后无法连接?
A2:修改SSH端口后无法连接可能由以下几个原因造成:
防火墙未更新:如果系统中启用了防火墙,但忘记更新防火墙规则以允许新的SSH端口通过,那么即使SSH服务已经更改到新端口,也无法通过防火墙进行连接,请确保防火墙规则已正确更新。
配置文件错误:在编辑/etc/ssh/sshd_config
文件时,如果不小心删除或修改了其他重要配置项,可能会导致SSH服务无法正常启动或工作,建议在修改前备份原始配置文件,并在修改后仔细检查是否有误。
服务未重启:修改完配置文件后,必须重启SSH服务才能使更改生效,如果忘记重启服务,那么修改将不会生效,请使用sudo service sshd restart
命令重启SSH服务。