温馨提示×

SecureCRT如何免密登Ubuntu

小樊
37
2026-08-22 23:44:56
栏目: 智能运维

要在 SecureCRT 中免密登录 Ubuntu,核心思路是:使用 SSH 密钥认证代替密码登录。下面按步骤详细说明。


一、在 Ubuntu 上生成 SSH 密钥(服务端)

如果你已经有 ~/.ssh/id_rsa,可以跳过这步。

ssh-keygen -t rsa -b 4096

一路回车即可,会生成:

  • 私钥:~/.ssh/id_rsa
  • 公钥:~/.ssh/id_rsa.pub

二、将公钥加入授权文件

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh

✅ 权限非常重要,否则免密会失败。


三、确认 Ubuntu SSH 服务配置

编辑配置文件:

sudo vim /etc/ssh/sshd_config

确保以下内容存在且未被注释:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

(可选)如果你只想用密钥登录:

PasswordAuthentication no

重启 SSH 服务:

sudo systemctl restart ssh

四、在 SecureCRT 中配置免密登录

方法一(推荐):使用 SecureCRT 生成密钥

1️⃣ 生成密钥对

  1. 打开 SecureCRT
  2. 菜单:ToolsCreate Public Key
  3. 选择:
    • Key type:RSA
    • Passphrase:留空(实现完全免密)
  4. 保存:
    • 私钥:Identity
    • 公钥:Identity.pub

2️⃣ 把公钥传到 Ubuntu

Identity.pub 内容复制到 Ubuntu:

~/.ssh/authorized_keys

例如:

echo "ssh-rsa AAAA..." >> ~/.ssh/authorized_keys

方法二:使用 Ubuntu 已生成的私钥

如果你在 Ubuntu 上生成了密钥:

  1. 私钥 id_rsa 拷贝到 Windows
  2. SecureCRT:
    • Session Options
    • SSH2
    • Authentication → 勾选 PublicKey
    • 选择私钥文件(id_rsa

五、SecureCRT 会话设置

  1. 打开会话属性
  2. SSH2Authentication
  3. 取消 Password
  4. 只保留 PublicKey
  5. 指定私钥路径

六、测试登录

直接连接 Ubuntu:

✅ 不再提示输入密码
✅ 直接登录成功


七、常见问题排查

❌ 仍然提示输入密码

检查:

ls -ld ~/.ssh
ls -l ~/.ssh

确保:

  • .ssh700
  • authorized_keys600

查看日志:

sudo tail -f /var/log/auth.log

❌ Windows 和 Linux 权限问题

  • 私钥文件在 Windows 上 不要放在共享目录
  • 建议使用 SecureCRT 默认路径

八、安全建议(生产环境)

✅ 私钥设置 passphrase
✅ 禁用 root 密码登录
✅ 使用非 22 端口
✅ 配合防火墙(ufw / iptables)


如果你愿意,我可以:

  • ✅ 给你 SecureCRT 中文版截图级步骤
  • ✅ 帮你排查 具体报错日志
  • ✅ 配置 跳板机 / 多服务器免密

直接告诉我你用的是 Ubuntu 版本 + SecureCRT 版本 即可。

0