在Debian系统上配置SSH密钥认证涉及几个步骤,包括生成密钥对、将公钥复制到服务器、配置SSH客户端以及测试连接。以下是详细的步骤:
ssh-keygen -t ed25519 -a 4096 -C "your_email@example.com"
这将生成一个名为id_ed25519
的私钥文件和一个名为id_ed25519.pub
的公钥文件,默认存储在~/.ssh/
目录下。ssh-copy-id
命令将公钥复制到目标服务器:ssh-copy-id user@server_ip
如果您无法使用密码登录服务器,可以使用以下命令手动复制公钥:cat ~/.ssh/id_ed25519.pub | ssh user@server_ip "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
如果您使用SecureCRT作为SSH客户端,可以按照以下步骤配置:
Session
菜单,然后选择SSH
-> Edit Default Session...
。SSH
-> Authentication
。Public key authentication
选项,并点击Browse
按钮选择您的私钥文件(通常是~/.ssh/id_ed25519
)。OK
保存设置。ssh user@server_ip
如果一切配置正确,您应该能够无需输入密码即可登录服务器。请注意,为了确保安全性,建议对私钥文件进行加密保护,并使用SSH代理来管理密钥。此外,您还应该修改SSH配置文件(通常是/etc/ssh/sshd_config
),禁用密码登录并禁止root登录。