5154

Good Luck To You!

CentOS 7如何开启SSH服务并远程连接?

在CentOS 7系统中,SSH(Secure Shell)是一种常用的远程管理协议,它允许用户通过加密连接安全地登录和管理服务器,本文将详细介绍如何在CentOS 7上启用和配置SSH服务,确保远程连接的安全性和稳定性。

CentOS 7如何开启SSH服务并远程连接?

安装SSH服务

默认情况下,CentOS 7可能未安装SSH服务,首先需要检查系统是否已安装OpenSSH服务器,执行命令rpm -q openssh-server,如果返回包名,则表示已安装;否则需要使用yum install openssh-server命令进行安装,安装完成后,启动SSH服务并设置开机自启,命令分别为systemctl start sshdsystemctl enable sshd

配置SSH服务

SSH的主配置文件位于/etc/ssh/sshd_config,通过编辑该文件可以自定义SSH的行为,建议使用vinano编辑器打开文件,修改关键参数,如端口号(默认为22)、允许登录的用户、是否允许root登录等,修改后保存文件,并执行systemctl restart sshd使配置生效,为增强安全性,建议禁用root直接登录,设置PermitRootLogin no,并使用普通用户登录后切换至root权限。

防火墙设置

CentOS 7默认使用firewalld作为防火墙管理工具,若要通过SSH远程连接,需开放SSH端口(默认为22),执行firewall-cmd --permanent --add-service=ssh添加SSH服务规则,然后运行firewall-cmd --reload重新加载防火墙配置,若需自定义端口,需使用firewall-cmd --permanent --add-port=端口号/tcp命令,并确保配置文件中的端口号与防火墙设置一致。

CentOS 7如何开启SSH服务并远程连接?

密钥认证与密码认证

SSH支持密码认证和公钥认证两种方式,公钥认证更为安全,建议优先使用,生成密钥对使用ssh-keygen命令,默认会在用户目录下的.ssh文件夹中创建id_rsa(私钥)和id_rsa.pub(公钥),将公钥文件内容追加到远程服务器的~/.ssh/authorized_keys文件中,即可实现免密登录,若需禁用密码认证,可在sshd_config中设置PasswordAuthentication no,重启SSH服务后生效。

常见问题排查

若无法通过SSH连接服务器,首先检查SSH服务状态(systemctl status sshd),确认服务是否正常运行,查看防火墙和SELinux设置,确保SSH端口未被阻止,若连接超时或被拒绝,可检查服务器日志(/var/log/secure)定位问题,确保客户端使用的IP地址或域名正确,网络连接正常。

FAQs

问题1:如何更改SSH默认端口?
答:编辑/etc/ssh/sshd_config文件,找到#Port 22行,取消注释并修改为自定义端口(如Port 2222),保存后,在防火墙中开放新端口(firewall-cmd --permanent --add-port=2222/tcp),重新加载防火墙并重启SSH服务(systemctl restart sshd)。

CentOS 7如何开启SSH服务并远程连接?

问题2:SSH连接时出现“Permission denied (publickey,password)”错误如何解决?
答:此错误通常由认证失败引起,首先检查客户端公钥是否已正确添加到服务器的authorized_keys文件中,并确保文件权限设置正确(chmod 600 ~/.ssh/authorized_keys),确认sshd_configPubkeyAuthentication yes已启用,若使用密码认证,检查PasswordAuthentication是否设置为yes,并确认用户密码无误。

发表评论:

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

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

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.