在CentOS系统上从零开始配置SSH服务,可以按照以下步骤进行:
首先,确保你的CentOS系统已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:
sudo yum install openssh-server
安装完成后,启动SSH服务并设置为开机自启动:
sudo systemctl start sshd
sudo systemctl enable sshd
编辑SSH配置文件 /etc/ssh/sshd_config 来进行自定义配置。你可以使用任何文本编辑器,例如 vi 或 nano:
sudo vi /etc/ssh/sshd_config
以下是一些常见的配置选项:
允许root登录:默认情况下,root用户不能通过SSH登录。如果你需要允许root登录,可以取消注释或添加以下行:
PermitRootLogin yes
更改默认端口:为了安全起见,你可以更改SSH的默认端口(22)。找到并修改以下行:
Port 22
将其改为其他端口号,例如:
Port 2222
禁用密码登录:为了提高安全性,可以禁用密码登录,只允许使用密钥登录。找到并修改以下行:
PasswordAuthentication no
确保以下行未被注释:
PubkeyAuthentication yes
限制用户登录:你可以限制哪些用户可以通过SSH登录。找到并修改以下行:
AllowUsers user1 user2
将 user1 和 user2 替换为你希望允许登录的用户名。
保存并退出配置文件后,重启SSH服务以应用更改:
sudo systemctl restart sshd
如果你的系统启用了防火墙(例如 firewalld),你需要允许SSH流量通过。使用以下命令打开SSH端口(假设你使用的是默认端口22):
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
如果你更改了SSH端口,请将 ssh 替换为你设置的端口号。
现在,你可以从另一台计算机测试SSH连接到你的CentOS服务器。使用以下命令:
ssh username@your_server_ip
将 username 替换为你的用户名,your_server_ip 替换为你的服务器IP地址。
为了进一步提高安全性,你可以配置SSH密钥登录。生成SSH密钥对并将其添加到服务器:
在本地机器上生成SSH密钥对:
ssh-keygen -t rsa -b 4096
将生成的公钥(通常是 ~/.ssh/id_rsa.pub)复制到服务器的 ~/.ssh/authorized_keys 文件中:
ssh-copy-id username@your_server_ip
这样,你就可以使用密钥登录而无需密码。
通过以上步骤,你应该能够在CentOS系统上成功配置SSH服务。