在CentOS系统中,OpenSSH是用于远程连接和文件传输的核心工具,掌握其查看和管理方法对系统管理员至关重要,本文将详细介绍在CentOS系统中查看OpenSSH相关命令的多种方法,包括版本信息、配置文件、服务状态及安装情况等,帮助用户全面了解系统中的OpenSSH部署情况。

查看OpenSSH版本信息
确认OpenSSH的版本号是排查兼容性问题和安全漏洞的第一步,在CentOS中,可以通过以下命令快速查看版本信息:
- 使用
ssh -V命令:直接在终端输入ssh -V,系统会返回SSH客户端的版本信息,OpenSSH_8.2p1, OpenSSL 1.1.1k FIPS 24 May 2021",注意,此命令仅显示客户端版本。 - 查看服务器版本:若需查看SSH服务端版本,可执行
rpm -qa | grep openssh,命令会列出系统中安装的OpenSSH相关软件包,如"openssh-8.2p1-5.el8.x86_64",从中可间接推断服务端版本。 - 详细版本信息:通过
rpm -qi openssh-server命令,可以查看OpenSSH服务端的详细版本号、发布日期及描述信息。
检查OpenSSH服务状态
确认SSH服务是否正常运行是远程连接的前提条件,CentOS中可通过以下命令检查服务状态:
- 使用systemctl命令:执行
systemctl status sshd,系统会显示sshd服务的当前状态(运行/停止)、启用情况及最近日志,若服务未运行,可通过systemctl start sshd启动。 - 查看监听端口:SSH服务默认监听22端口,使用
netstat -tuln | grep 22或ss -tuln | grep 22可确认端口是否处于监听状态。 - 检查进程信息:通过
ps -ef | grep sshd命令,可以查看sshd进程的PID及启动参数,验证服务是否正常加载。
查看OpenSSH配置文件
OpenSSH的配置文件通常位于/etc/ssh/目录下,了解其内容有助于自定义服务行为,主要配置文件及查看方法如下:

- 主配置文件:
/etc/ssh/sshd_config是服务端的核心配置文件,使用cat /etc/ssh/sshd_config或less /etc/ssh/sshd_config可查看其内容,关键配置项包括Port(端口)、PermitRootLogin(是否允许root登录)等。 - 客户端配置:
/etc/ssh/ssh_config定义了SSH客户端的默认行为,如端口号、用户身份验证方式等。 - 配置文件语法检查:修改配置后,可通过
sshd -t命令检查语法是否正确,避免服务无法启动。
确认OpenSSH安装情况
若系统中未安装OpenSSH,需先进行安装,以下命令可检查安装状态并进行安装:
- 检查已安装包:执行
rpm -qa | grep openssh,若返回空值则表示未安装。 - 安装OpenSSH:使用
yum install openssh-server命令安装服务端组件,yum install openssh-clients安装客户端组件,CentOS 8及以上系统可使用dnf替代yum。 - 验证安装:安装完成后,通过
ssh -V和systemctl status sshd确认客户端和服务端均正常工作。
调试OpenSSH连接问题
当SSH连接出现问题时,可通过以下命令排查故障:
- 查看服务日志:
journalctl -u sshd -n 50显示最近50行sshd服务日志,定位错误原因。 - 测试连接语法:使用
ssh -v user@hostname命令,通过详细输出检查DNS解析、认证及密钥交换过程。 - 检查防火墙规则:执行
firewall-cmd --list-ports确认22端口是否已开放,必要时通过firewall-cmd --add-port=22/tcp --permanent添加规则。
FAQs
如何在CentOS中升级OpenSSH版本?
答:可通过以下步骤升级:备份当前配置文件cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak;使用yum update openssh*升级所有OpenSSH相关包;重启服务systemctl restart sshd并验证版本,若需升级到最新测试版,可添加EPEL仓库后安装。

SSH连接被拒绝但服务已启动,如何解决?
答:常见原因包括防火墙拦截、SELinux启用或配置错误,排查步骤:1. 检查防火墙状态firewall-cmd --state,开放22端口;2. 临时禁用SELinuxsetenforce 0测试连接;3. 检查/etc/ssh/sshd_config中PermitRootLogin和PasswordAuthentication配置是否正确;4. 查看日志journalctl -u sshd定位具体错误。