Debian SSH密钥认证设置步骤如下:
生成密钥对(客户端):
ssh-keygen -t ed25519 -C "your_email@example.com" # 推荐ED25519算法
# 或使用RSA:ssh-keygen -t rsa -b 4096
按提示回车使用默认路径和密码(可选)。
复制公钥到服务器:
ssh-copy-id
):ssh-copy-id -p 2222 user@server_ip # 若修改了SSH端口需指定
输入服务器密码即可自动完成。cat ~/.ssh/id_ed25519.pub
),在服务器上执行:mkdir -p ~/.ssh && chmod 700 ~/.ssh
echo "公钥内容" >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
配置SSH服务器(服务器端):
编辑/etc/ssh/sshd_config
:
sudo nano /etc/ssh/sshd_config
确保以下配置:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no # 可选:禁用密码认证(需先配置密钥)
重启服务:
sudo systemctl restart ssh
测试连接:
ssh -p 2222 user@server_ip # 使用私钥连接
若配置正确,可直接登录无需密码。
安全建议:
600
,.ssh
目录权限设为700
。