要在 SecureCRT 中免密登录 Ubuntu,核心思路是:使用 SSH 密钥认证代替密码登录。下面按步骤详细说明。
如果你已经有
~/.ssh/id_rsa,可以跳过这步。
ssh-keygen -t rsa -b 4096
一路回车即可,会生成:
~/.ssh/id_rsa~/.ssh/id_rsa.pubcat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
✅ 权限非常重要,否则免密会失败。
编辑配置文件:
sudo vim /etc/ssh/sshd_config
确保以下内容存在且未被注释:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
(可选)如果你只想用密钥登录:
PasswordAuthentication no
重启 SSH 服务:
sudo systemctl restart ssh
Tools → Create Public KeyIdentityIdentity.pub将 Identity.pub 内容复制到 Ubuntu:
~/.ssh/authorized_keys
例如:
echo "ssh-rsa AAAA..." >> ~/.ssh/authorized_keys
如果你在 Ubuntu 上生成了密钥:
id_rsa 拷贝到 WindowsSession OptionsSSH2Authentication → 勾选 PublicKeyid_rsa)SSH2 → AuthenticationPasswordPublicKey直接连接 Ubuntu:
✅ 不再提示输入密码
✅ 直接登录成功
检查:
ls -ld ~/.ssh
ls -l ~/.ssh
确保:
.ssh → 700authorized_keys → 600查看日志:
sudo tail -f /var/log/auth.log
✅ 私钥设置 passphrase
✅ 禁用 root 密码登录
✅ 使用非 22 端口
✅ 配合防火墙(ufw / iptables)
如果你愿意,我可以:
直接告诉我你用的是 Ubuntu 版本 + SecureCRT 版本 即可。