SSH配置:禁用Root远程登陆与公钥认证

需积分: 2 5 下载量 44 浏览量 更新于2024-09-17 收藏 37KB DOC 举报
本篇文档详细介绍了如何配置Linux SSH服务以及禁止Root用户进行远程登陆。首先,SSH服务可以通过命令`service sshd restart`或`/etc/init.d/ssh restart`来重启,确保其正常运行。 配置过程主要涉及`/etc/ssh/sshd_config`文件的编辑。该文件是SSH守护进程的配置文件,对SSH服务的行为有着重要影响。以下是一些关键配置项: 1. **修改默认端口**:默认情况下,SSH监听22号端口。为了提高安全性,可以将`Port`选项的默认值取消注释并改为你选择的其他端口,如`Port 2222`。 2. **禁止Root远程登陆**:原默认设置`PermitRootLogin yes`允许root用户通过SSH远程登录,为了防止潜在的安全风险,应将其注释并改为`PermitRootLogin no`,这样root用户就无法直接通过SSH连接。 3. **密码认证控制**:`PasswordAuthentication`选项决定是否允许基于密码的登录,将其改为`no`可以强制使用非密码方式登录。同时,`PubkeyAuthentication`启用公钥认证,提高登录安全性,确保只有拥有正确公钥的用户才能访问。 4. **启用公钥认证**:虽然默认不启用,但建议开启`RSAAuthentication`和`PubkeyAuthentication`,以便采用更安全的密钥对方式进行身份验证。 5. **`StrictModes`选项**:默认为`yes`,它会检查用户家目录的权限。为了支持公钥登录,需将其设置为`no`,但注意要确保存放公钥的文件夹拥有适当的权限,即文件夹所有者与登录用户名一致。 完成配置后,需要重启SSH服务以使更改生效:`/etc/init.d/ssh restart`。 最后,生成SSH公钥对是使用`ssh-keygen -t rsa`命令,其中`-t rsa`指定了RSA加密算法。键对将保存在指定路径,如`/home/linden.guo/.ssh/id_rsa`。输入密码保护私钥,提供更高的安全性。 总结起来,本文档提供了全面的SSH配置指导,包括基本安全设置、端口调整和高级认证策略,确保了Linux系统远程管理的安全性和便捷性。