创建脚本/快捷方式以通过 ssh 登录



我的问题是,每次我必须在Linux服务器上登录给定帐户(有很多)时,我都必须去拉一个文本文件,而不是我必须查看用户名和ip。

示例:"ssh some_user@xxx.xxx.xxx.x -pxxxxx"

我想通过创建一个快捷方式来让我的生活更轻松一点,例如"ssh some_user"......

我搜索了一下,找不到答案,可能没有使用正确的术语。

谢谢!

您可以使用 ssh 客户端配置文件 ( .ssh/config )。如果必须键入 ssh -p 1234 mylogin@my.server.with.a.long.name.com ,则可以

使用
host server
    hostname my.server.with.a.long.name.com
    user mylogin
    port 1234

然后,您只需键入ssh server,它就会产生相同的效果。您可以在.ssh/config文件中拥有任意数量的条目,甚至可以使用通配符(*

如果您使用的是最新版本的 bash,则可以进一步使用 command_not_found_handle 函数:

command_not_found_handle () {
    if grep "host $1" ~/.ssh/config &>/dev/null; then
        ssh $@
    else
       printf "Sorry: Command not found: $1n"
       return 127
    fi
}

然后你可以简单地连接

server
我不知道

我是否正确理解了您的问题,但是正确的ssh配置文件使生活更轻松。没有IP,没有域,没有密码,甚至没有用户名。

请参阅手册页:http://linux.die.net/man/5/ssh_config

我喜欢像ssh vm这样的东西,或者scp vm:...不再scp blablubb@192.168.226.xy:...+密码。

另请参阅非对称密钥交换的ssh-keygenssh-copy-id。会让你摆脱输入密码。

通常我建议阅读ssh教程。

最新更新