是否有可能配置ssh来知道我的用户名应该是什么?
ssh
默认情况下,它使用当前用户名,这在我的例子中是不正确的。
我在一台借来的笔记本电脑上,我的用户名是loaner,但我想告诉ssh我的用户名是buck。
loaner
buck
额外提示:我在家里的用户名是bgolemon。如果我可以配置每个主机的用户名,那就更好了。
在~/.ssh中创建一个名为config的文件。在文件中你可以添加:
~/.ssh
config
Host * User buck
或添加
Host example HostName example.net User buck
第二个示例将设置用户名,并且是特定于主机名的,而第一个示例只设置用户名。当你使用第二个时,你不需要使用ssh example.net;ssh example就足够了。
ssh example.net
ssh example
man ssh_config说
man ssh_config
用户指定登录的用户。当a 不同的机器使用不同的用户名。这将保存 必须记住在命令行上给出用户名的麻烦
用户
指定登录的用户。当a 不同的机器使用不同的用户名。这将保存 必须记住在命令行上给出用户名的麻烦
如果你只想ssh几次,比如在一台借来的或共享的计算机上,尝试:
ssh buck@hostname
或
ssh -l buck hostname
有一个Ruby宝石接口你的ssh配置文件,称为sshez。
sshez
你所要做的就是sshez <alias> username@example.com -p <port-number>,然后你可以使用ssh <alias>连接。它也很有用,因为你可以使用sshez list列出你的别名,并可以使用sshez remove alias轻松删除它们。
sshez <alias> username@example.com -p <port-number>
ssh <alias>
sshez list
sshez remove alias
你可以走捷径。在主目录中创建一个.bashrc文件。在那里,你可以添加以下内容:
alias sshb="ssh buck@host"
要使别名在终端中可用,您可以关闭并打开终端,或者运行
source ~/.bashrc
然后你只需输入:
sshb
如果你有多个对特定变量的引用,如User或IdentityFile, SSH配置文件的第一个条目始终优先,如果你想要特定的东西,那么把它放在前面,任何通用的东西把它放在底部。