引言

SSH(Secure Shell)是一种网络协议,用于计算机之间的安全通信和数据传输。在Linux系统中,SSH是远程登录和管理服务器的常用工具。Rocky Linux作为CentOS的继承者,同样支持SSH服务。本文将详细介绍如何在Rocky Linux上配置SSH,实现安全远程登录。

1. 安装SSH服务

在Rocky Linux上,可以使用包管理器dnf来安装SSH服务。

sudo dnf install openssh-server 

安装完成后,SSH服务会自动启动。

2. 配置SSH服务

SSH服务的配置文件位于/etc/ssh/目录下,主要的配置文件有sshd_configssh_config

2.1 编辑sshd_config

使用文本编辑器打开sshd_config文件:

sudo nano /etc/ssh/sshd_config 

以下是sshd_config文件中一些重要的配置项及其含义:

  • Port:SSH服务的端口号,默认为22。
  • PermitRootLogin:是否允许root用户登录,建议设置为no,以增强安全性。
  • PasswordAuthentication:是否允许密码认证,建议设置为no,使用密钥认证。
  • UsePAM:是否使用PAM(Pluggable Authentication Modules)进行认证,建议设置为yes

修改完成后,保存并退出。

2.2 重启SSH服务

重启SSH服务以应用配置更改:

sudo systemctl restart sshd 

3. 生成SSH密钥对

为了实现安全登录,可以使用SSH密钥对进行认证。以下是生成密钥对的过程:

ssh-keygen -t rsa -b 4096 

该命令会生成一个名为id_rsa的私钥文件和一个名为id_rsa.pub的公钥文件。

3.1 将公钥添加到授权列表

将公钥添加到服务器的~/.ssh/authorized_keys文件中:

sudo nano /home/用户名/.ssh/authorized_keys 

将公钥内容粘贴到文件中,然后保存并退出。

3.2 设置文件权限

确保私钥和公钥的权限正确:

sudo chmod 600 /home/用户名/.ssh/id_rsa sudo chmod 644 /home/用户名/.ssh/authorized_keys 

4. 远程登录

使用SSH客户端(如PuTTY、SSH Terminal等)连接到Rocky Linux服务器。在客户端输入以下命令:

ssh 用户名@服务器IP 

系统会提示输入密码,但为了安全起见,建议使用密钥认证。

5. 总结

通过以上步骤,您可以在Rocky Linux上配置SSH服务,实现安全远程登录。使用SSH密钥对认证可以有效提高安全性,防止密码泄露。希望本文对您有所帮助。