让 ssh 记住主机的用户名

让 ssh 记住主机的用户名

我每天都会连接许多服务器。我的 ssh 配置默认用户名是“admin”

但是服务器来自不同的环境并且用户名可以改变。有时它会是“ec2-user”或“exploitation”或“something-else”...

SSH 有没有办法记住最后一次与 192.0.2.1/server.example.org 的连接是与“ec2-user”一起的吗?

所以下次我不必指定“-l ec2-user”。

答案1

您可以在您的配置文件中自行设置这些$HOME/.ssh/config

例如:

Host *.amazonaws.com
        User ec2-user

Host 192.0.2.1
        User centos

答案2

自我回答,我最终使用这个脚本作为“ssh”的包装器

#!/bin/bash
SSH_OPTIONS="-o PasswordAuthentication=no"
ssh $SSH_OPTIONS $*

if [ $? -eq 255 ]
then
  ssh -l admin $SSH_OPTIONS $*
fi

if [ $? -eq 255 ]
then
  ssh -l exploit $SSH_OPTIONS $*
fi

if [ $? -eq 255 ]
then
  ssh -l ec2-user $SSH_OPTIONS $*
fi

相关内容