CentOS 7 配置 SSH 服务器
(图片来源网络,侵删)SSH(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络中进行安全的远程登录和其他安全网络服务,以下是在 CentOS 7 上配置 SSH 服务的详细步骤:
我们需要安装 OpenSSH 软件包,OpenSSH 是 SSH 的免费替代产品,它实现了 SSH 协议。
1.1 使用 yum 安装 OpenSSH
打开终端,输入以下命令:
sudo yum install opensshserver opensshclients
安装完成后,我们需要启动 SSH 服务并设置为开机自启。
2.1 启动 SSH 服务
在终端中输入以下命令:
(图片来源网络,侵删)sudo systemctl start sshd.service
2.2 设置 SSH 服务开机自启
在终端中输入以下命令:
sudo systemctl enable sshd.service
我们需要对 SSH 服务进行一些基本的配置,配置文件位于/etc/ssh/sshd_config。
3.1 备份原始配置文件
在进行修改之前,最好先备份原始的配置文件,以防万一,可以使用以下命令进行备份:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
3.2 编辑配置文件
使用任何你喜欢的文本编辑器打开配置文件,使用 vi 编辑器:
(图片来源网络,侵删)sudo vi /etc/ssh/sshd_config
3.3 修改配置文件
在配置文件中,你可以找到许多可以修改的选项,以下是一些常见的配置选项及其说明:
| 选项 | 默认值 | 功能描述 |
| Port | 22 | SSH 服务的监听端口 |
| PermitRootLogin | prohibited | 是否允许 root 用户远程登录 |
| PasswordAuthentication | yes | 是否允许使用密码进行认证 |
根据你的需求进行相应的修改,如果你想改变 SSH 服务的监听端口,可以找到Port 这一行,将其改为你想要的端口号,如Port 2222。
完成修改后,保存并关闭文件。
为了使新的配置生效,你需要重启 SSH 服务,在终端中输入以下命令:
sudo systemctl restart sshd.service
我们可以测试一下 SSH 服务是否正常工作,你可以在本地机器上尝试 SSH 连接到远程服务器,或者从其他机器上尝试连接到该服务器。
ssh [username]@[remote_ip] p [port]
[username] 是你的用户名,[remote_ip] 是远程服务器的 IP 地址,[port] 是你在配置文件中设置的 SSH 端口号,如果一切正常,你应该能够成功登录到远程服务器。
下面是一个介绍,概述了在CentOS 7系统中配置SSH服务的过程:
| 步骤 | 命令/操作 | 说明 | |
| 1. 检查SSH服务是否已安装 | rpm qa | grep openssh | 确认系统是否已经安装了SSH服务组件 |
| 2. 安装SSH服务(如果尚未安装) | yum install opensshserver | 安装SSH服务器 | |
| 3. 启动SSH服务 | systemctl start sshd | 启动SSH服务守护进程 | |
| 4. 设置SSH服务开机自启 | systemctl enable sshd | 将SSH服务设置为随系统启动而自动运行 | |
| 5. 生成SSH密钥对 | sshkeygen t rsa | 在客户端生成RSA密钥对,一路回车接受默认值 | |
| 6. 将公钥上传至服务器 | sshcopyid 用户名@服务器IP地址 | 将客户端生成的公钥复制到服务器上,输入用户密码确认 | |
| 7. 配置SSH服务器 | vim /etc/ssh/sshd_config | 编辑SSH服务器配置文件,修改以下设置:PermitRootLogin yes 允许root用户登录RSAAuthentication yes 启用RSA认证PubkeyAuthentication yes 启用公钥认证 | |
| 8. 重载SSH服务配置 | systemctl reload sshd | 重新加载SSH服务的配置文件 | |
| 9. 配置防火墙允许SSH连接 | firewallcmd permanent addservice=sshfirewallcmd reload | 更新防火墙规则,允许SSH连接 | |
| 10. 尝试SSH连接 | ssh 用户名@服务器IP地址 | 尝试从客户端SSH到服务器,如果配置正确,将不需要输入密码 | |
| 11. (可选)配置SSH客户端 | cd ~/.ssh/ls | 查看客户端的SSH密钥文件,确保.ssh目录下有私钥和公钥文件 |
请注意,介绍中的命令可能需要根据你的具体环境和安全需求进行调整,出于安全考虑,通常不建议允许root用户直接登录,因此PermitRootLogin yes配置应根据实际情况慎重考虑,配置SSH服务时,建议遵循最小权限原则,确保系统的安全性。