如何配置 OpenSSH 以询问用户名而不是使用当前本地登录?

Iva*_*van 1 ssh

当我使用 ssh 命令登录到远程 shell 时,会使用我的本地用户名,并且只需要密码(或证书密码)。如何以不同的远程用户身份登录而不在本地 PC 上添加此用户?

run*_*six 11

ssh username@hostname
Run Code Online (Sandbox Code Playgroud)

或者

ssh -l username hostname
Run Code Online (Sandbox Code Playgroud)

任何一个都有效。


Mei*_*Mei 6

我通常使用 slogin 而不是 ssh - 差异很小(两者都是 OpenSSH 的一部分)。使用 slogin,您可以使用以下表格:

slogin user@host
Run Code Online (Sandbox Code Playgroud)

slogin 旨在取代 rlogin(因此得名)。这几乎适用于安装了 OpenSSH 的任何地方(从技术上讲,您不需要安装 r* 替代品,但它们通常是......)

还有一件事:您可以将 OpenSSH 配置为在登录远程主机时使用特定的用户名 - 像这样(在~/.ssh/config):

Host fred
  User moxie

Host gabbie
  User mpotts

Host serial
  Hostname vx-port-lx08486-px-l1
  User fred
Run Code Online (Sandbox Code Playgroud)

然后像这样使用 ssh:

ssh gabbie
Run Code Online (Sandbox Code Playgroud)

(将作为 mpotts 登录)。示例serial还允许使用简写名称“serial”而不是长而难以记住的主机名 - 带有用户名。

  • +1 为`~/.ssh/config` - 这让生活变得更轻松。 (2认同)