306

是否可以配置ssh以知道我的用户名应该是什么?

默认情况下,它使用当前用户名,这在我的情况下是不正确的。

我在借用的笔记本电脑上,我的用户名是loaner,但我想告诉ssh我我的用户名是buck

奖励积分:我在家里的用户名是 bgolemon。如果我可以为每个主机配置用户名,那就更好了。

4

6 回答 6

542

创建一个名为configinside的文件~/.ssh。在文件中,您可以添加:

Host *
    User buck

或添加

Host example
    HostName example.net
    User buck

第二个示例将设置一个用户名并且是特定于主机名的,而第一个示例仅设置一个用户名。当您使用第二个时,您不需要使用ssh example.net; ssh example就足够了。

于 2012-04-17T19:19:19.243 回答
49

如果您只想ssh几次,例如在借用或共享的计算机上,请尝试:

ssh buck@hostname

或者

ssh -l buck hostname
于 2012-04-17T20:05:59.260 回答
7

man ssh_config

用户

指定要登录的用户。当在不同的机器上使用不同的用户名时,这会很有用。这省去了必须记住在命令行上提供用户名的麻烦。

于 2012-04-17T19:20:25.487 回答
0

您可以使用快捷方式。在您的主目录中创建一个 .bashrc 文件。在那里,您可以添加以下内容:

alias sshb="ssh buck@host"

要使别名在您的终端中可用,您可以关闭并打开您的终端,或运行

source ~/.bashrc

然后您只需输入以下内容即可连接:

sshb
于 2018-12-04T04:42:12.547 回答
0

如果您对特定变量(即 User 或 IdentityFile)有多个引用,则 ssh 配置文件中的第一个条目始终优先,如果您想要特定的内容,则将其放在第一位,任何通用的都将其放在底部。

于 2020-06-29T11:01:42.883 回答
0

There is a Ruby gem that interfaces your ssh configuration file which is called sshez.

All you have to do is sshez <alias> username@example.com -p <port-number>, and then you can connect using ssh <alias>. It is also useful since you can list your aliases using sshez list and can easily remove them using sshez remove alias.

于 2016-01-05T01:09:07.477 回答