HCRM博客

如何在CentOS 7上配置SSH?

在CentOS 7系统中,配置SSH(Secure Shell)是一项重要的任务,它不仅提供了安全的远程访问方式,还能通过加密传输数据来保护敏感信息,以下是关于如何在CentOS 7上安装和配置SSH的详细指南。

一、安装OpenSSH服务

1、检查是否已安装:需要确认系统是否已经安装了OpenSSH服务,可以通过以下命令查看:

如何在CentOS 7上配置SSH?-图1
(图片来源网络,侵权删除)
   rpm qa | grep openssh

如果输出中包含openssh相关的包,则表示已安装;否则需要继续安装。

2、安装OpenSSH服务:如果未安装,可以使用以下命令进行安装:

   sudo yum install y opensshserver

二、启动并配置SSH服务

1、启动SSH服务:安装完成后,需要启动SSH服务:

   sudo systemctl start sshd

2、设置开机自启:为了确保每次系统重启后SSH服务都能自动启动,需要将其设置为开机自启:

   sudo systemctl enable sshd

3、检查服务状态:可以通过以下命令检查SSH服务的状态,确保其正常运行:

   sudo systemctl status sshd

三、配置SSH服务

1、编辑配置文件:SSH的主要配置文件位于/etc/ssh/SSHD_config,可以使用文本编辑器(如vi或vim)打开该文件:

如何在CentOS 7上配置SSH?-图2
(图片来源网络,侵权删除)
   sudo vi /etc/ssh/sshd_config

2、常见配置选项

Port 22:设置SSH服务的监听端口为22(默认),如果需要更改端口号,可以修改此值。

PermitRootLogin no:禁止root用户直接登录,以提高安全性,建议将此项设置为no,然后使用普通用户登录后再切换到root用户。

PasswordAuthentication yes:启用密码认证,如果希望仅使用密钥认证,可以将此项设置为no

PubkeyAuthentication yes:启用公钥认证,这是推荐的认证方式,因为它比密码认证更安全。

AuthorizedKeysFile .ssh/authorized_keys:指定存储公钥的文件路径,确保该文件存在且具有正确的权限(600)。

如何在CentOS 7上配置SSH?-图3
(图片来源网络,侵权删除)

3、保存并退出:编辑完成后,保存文件并退出编辑器。

4、重启SSH服务:为了使配置生效,需要重启SSH服务:

   sudo systemctl restart sshd

四、防火墙配置

如果系统启用了防火墙(如firewalld),需要确保允许SSH流量通过防火墙,可以使用以下命令开放SSH端口(默认22):

sudo firewallcmd permanent zone=public addport=22/tcp
sudo firewallcmd reload

五、生成SSH密钥对

为了使用密钥认证登录SSH服务器,需要生成一对公钥和私钥,可以在客户端机器上执行以下命令生成密钥对:

sshkeygen t rsa b 2048

按提示操作,通常会将密钥保存到~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。

六、将公钥复制到服务器

将公钥添加到服务器上的~/.ssh/authorized_keys文件中,可以使用以下命令之一:

1、使用sshcopyid命令

   sshcopyid username@hostname

2、手动复制:将公钥内容复制到剪贴板,然后在服务器上执行以下命令:

   echo "公钥内容" >> ~/.ssh/authorized_keys
   chmod 600 ~/.ssh/authorized_keys

七、测试SSH连接

现在可以尝试使用SSH连接到服务器了,在客户端机器上执行以下命令:

ssh username@hostname

如果一切正常,你应该能够成功登录到服务器,如果遇到问题,请检查上述步骤是否正确完成,特别是防火墙设置和密钥权限。

八、常见问题解答(FAQs)

1、如何更改SSH端口数?

答:编辑/etc/ssh/sshd_config文件,找到Port配置项,将其值更改为所需的端口号(例如2222),然后保存文件并重启SSH服务,确保防火墙允许新的端口号通过。

2、如何禁用密码登录,仅使用密钥登录?

答:在/etc/ssh/sshd_config文件中,将PasswordAuthentication设置为no,确保PubkeyAuthentication设置为yes,并正确配置AuthorizedKeysFile,然后重启SSH服务,这样,只有拥有正确私钥的用户才能登录服务器。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/17937.html

分享:
扫描分享到社交APP
上一篇
下一篇