我的问题是每次我必须登录到linux服务器上的给定帐户(有很多)我必须去一个文本文件而不是我必须查看用户名和ip。
示例:“ssh some_user@xxx.xxx.xxx.x -pxxxxx”
我希望通过创建一个快捷方式让我的生活更轻松,例如“ssh some_user”......
我搜索过但无法找到答案,可能没有使用正确的术语。
谢谢!
答案 0 :(得分:2)
您可以使用ssh client configuration file(.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: $1\n"
return 127
fi
}
然后你可以简单地用
连接server
答案 1 :(得分:0)
我不知道我是否理解你的问题是正确的,但是正确的ssh配置文件会让生活变得更加容易。没有IP,没有域名,没有密码,甚至没有用户名。
请参见手册页:http://linux.die.net/man/5/ssh_config
我喜欢ssh vm
或scp vm:...
等scp blablubb@192.168.226.xy:...
+密码短语。
另请参阅ssh-keygen
和ssh-copy-id
以进行非对称密钥交换。可以让你摆脱输入密码。
一般来说,我建议您阅读ssh教程。