通过 ssh 密钥对登录到 Linux 主机

通过 ssh 密钥对登录到 Linux 主机

💡 原文中文,约1300字,阅读约需3分钟。
📝

内容提要

本文介绍了如何通过SSH密钥对登录Linux主机。首先,在客户端使用ssh-keygen生成密钥对,默认存储在~/.ssh文件夹。生成后,将公钥复制到目标主机的~/.ssh/authorized_keys文件中。使用WinSCP连接时,需选择scp协议并配置私钥文件。最后,建议在sshd配置中禁用密码登录以增强安全性。

🎯

关键要点

  • 在客户端设备上运行ssh-keygen生成SSH密钥对,默认存储在~/.ssh文件夹。

  • 可选参数包括:-b(指定密钥的二进制位数),-C(注释),-f(指定密钥生成位置),-t(指定算法)。

  • 将生成的公钥复制到目标主机的~/.ssh/authorized_keys文件中,每行一个公钥。

  • 使用WinSCP连接时,选择scp协议并配置私钥文件,填写主机名、端口和用户名,密码留空。

  • 在sshd配置文件中添加PasswordAuthentication no以禁用SSH密码登录,增强安全性。

🔎

延伸解读

SSH密钥对的安全性

使用SSH密钥对登录比传统密码登录更安全。密钥对的破解难度较高,尤其是当密钥位数设置为2048时,安全性显著提升。建议用户在生成密钥时,选择合适的位数以平衡安全性与性能开销。

WinSCP连接配置注意事项

在使用WinSCP连接Linux主机时,确保选择scp协议并正确配置私钥文件。填写主机名、端口和用户名时,密码应留空。此步骤对于确保连接的成功至关重要,避免因配置错误导致的连接失败。

禁用密码登录的必要性

在sshd配置中禁用密码登录(PasswordAuthentication no)是增强系统安全的重要措施。这可以有效防止暴力破解攻击,建议所有用户在配置SSH时务必执行此步骤,以保护主机免受未授权访问。

延伸问答

如何在Linux主机上生成SSH密钥对?

在客户端设备上运行ssh-keygen命令即可生成SSH密钥对,默认存储在~/.ssh文件夹。

生成SSH密钥对时有哪些可选参数?

可选参数包括-b(指定密钥的二进制位数)、-C(注释)、-f(指定密钥生成位置)、-t(指定算法)。

如何将公钥复制到目标主机?

使用文本编辑工具打开公钥,将其复制到目标主机的~/.ssh/authorized_keys文件中,每行一个公钥。

使用WinSCP连接Linux主机时需要注意什么?

选择scp协议并配置私钥文件,填写主机名、端口和用户名,密码留空。

如何增强SSH登录的安全性?

在sshd配置文件中添加PasswordAuthentication no以禁用SSH密码登录。

SSH密钥对的默认存储位置是什么?

对于Linux设备,SSH密钥对默认存储在~/.ssh文件夹;对于Windows设备,通常位于C:\Users\<UserName>\.ssh。

🏷️

标签

➡️

继续阅读