温馨提示×

CentOS从零开始如何配置SSH

小樊
35
2025-11-24 02:52:13
栏目: 智能运维

在CentOS系统上从零开始配置SSH服务,可以按照以下步骤进行:

1. 安装OpenSSH服务器

首先,确保你的CentOS系统已经安装了OpenSSH服务器。如果没有安装,可以使用以下命令进行安装:

sudo yum install openssh-server

2. 启动并启用SSH服务

安装完成后,启动SSH服务并设置为开机自启动:

sudo systemctl start sshd
sudo systemctl enable sshd

3. 配置SSH服务

编辑SSH配置文件 /etc/ssh/sshd_config 来进行自定义配置。你可以使用任何文本编辑器,例如 vinano

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
    

    user1user2 替换为你希望允许登录的用户名。

4. 重启SSH服务

保存并退出配置文件后,重启SSH服务以应用更改:

sudo systemctl restart sshd

5. 配置防火墙

如果你的系统启用了防火墙(例如 firewalld),你需要允许SSH流量通过。使用以下命令打开SSH端口(假设你使用的是默认端口22):

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

如果你更改了SSH端口,请将 ssh 替换为你设置的端口号。

6. 测试SSH连接

现在,你可以从另一台计算机测试SSH连接到你的CentOS服务器。使用以下命令:

ssh username@your_server_ip

username 替换为你的用户名,your_server_ip 替换为你的服务器IP地址。

7. 配置密钥登录(可选)

为了进一步提高安全性,你可以配置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服务。

0