如何在 Linux 中创建 SSH 别名

如果您经常通过 SSH 访问许多不同的远程系统,那么这个技巧将为您节省一些时间。 您可以通过 SSH 为经常访问的系统创建 SSH 别名。 这样您就不需要记住所有不同的用户名、主机名、ssh 端口号和 IP 地址等。此外,它避免了在 SSH 进入 Linux 服务器时重复输入相同的用户名/主机名、IP 地址、端口号的需要( s)。

在 Linux 中创建 SSH 别名

在我知道这个技巧之前,我通常会使用以下任何一种方式通过 SSH 连接到远程系统。

使用 IP 地址:

$ ssh 192.168.225.22

或者使用端口号、用户名和 IP 地址:

$ ssh -p 22 [email protected]

或者使用端口号、用户名和主机名:

$ ssh -p 22 [email protected]

这里,

  • 22 是端口号,
  • sk 是远程系统的用户名,
  • 192.168.225.22 是我的远程系统的 IP,
  • server.example.com 是远程系统的主机名。

我相信大多数 Linux 新手用户和/或管理员都会以这种方式通过 SSH 连接到远程系统。 但是,如果您通过 SSH 连接到多个不同的系统,记住所有主机名/IP 地址、用户名有点困难,除非您将它们写在纸上或将它们保存在文本文件中。 不用担心! 这可以通过为 SSH 连接创建别名(或快捷方式)来轻松解决。

我们可以通过两种方法为 SSH 命令创建别名。

方法 1 – 使用 SSH 配置文件

这是我创建别名的首选方式。

我们可以使用 SSH 默认配置文件来创建 SSH 别名。 为此,请编辑 ~/.ssh/config 文件(如果此文件不存在,只需创建一个):

$ vi ~/.ssh/config

添加所有远程主机详细信息,如下所示:

Host webserver     HostName 192.168.225.22     User sk  Host dns     HostName server.example.com     User root  Host dhcp     HostName 192.168.225.25     User ostechnix     Port 2233
使用 SSH 配置文件在 Linux 中创建 SSH 别名

替换的值 Host, Hostname, UserPort 用你自己的。 添加所有远程主机的详细信息后,保存并退出文件。

现在您可以使用以下命令 SSH 进入系统:

$ ssh webserver
$ ssh dns
$ ssh dhcp

就这么简单。

看看下面的截图。

使用 SSH 别名访问远程系统

看? 我只使用了别名(即 网络服务器) 访问我的具有 IP 地址的远程系统 192.168.225.22.

请注意,这仅适用于当前用户。 如果要使所有用户(系统范围)都可以使用别名,请将上述行添加到 /etc/ssh/ssh_config 文件。

您还可以在 SSH 配置文件中添加许多其他内容。 例如,如果您有 已配置 SSH 基于密钥的身份验证,请提及 SSH 密钥文件位置,如下所示。

Host ubuntu     HostName 192.168.225.50     User senthil     IdentityFIle ~/.ssh/id_rsa_remotesystem

确保您已将主机名、用户名和 SSH 密钥文件路径替换为您自己的。

现在使用命令连接到远程服务器:

$ ssh ubuntu

通过这种方式,您可以添加任意数量的远程主机,通过 SSH 访问并使用它们的别名快速访问它们。

方法 2 – 使用 Bash 别名

这是创建 SSH 别名以加快通信速度的快速而肮脏的方法。 您可以使用 别名命令 使这项任务更容易。

打开 ~/.bashrc 或者 ~/.bash_profile 文件:

为每个 SSH 连接一个一个地添加别名,如下所示。

alias webserver="ssh [email protected]" alias dns="ssh [email protected]" alias dhcp='ssh [email protected] -p 2233' alias ubuntu='ssh [email protected] -i ~/.ssh/id_rsa_remotesystem'

再次确保您已将主机、主机名、端口号和 IP 地址替换为您自己的。 Save 文件并退出。

然后,使用命令应用更改:

$ source ~/.bashrc

或者,

$ source ~/.bash_profile

在这种方法中,您甚至不需要使用 "ssh alias-name" 命令。 相反,只需使用别名,如下所示。

$ webserver $ dns $ dhcp $ ubuntu
访问远程系统 bash 别名访问远程系统 bash 别名

这两种方法非常简单,但对于那些经常通过 SSH 连接到多个不同系统的人来说非常有用且方便得多。 使用上述任何一种适合您的方法通过 SSH 快速访问远程 Linux 系统。

建议阅读:

  • 在 Linux 中允许或拒绝对特定用户或组的 SSH 访问
  • 如何通过 SSH 连接到 Linux 上的特定目录
  • 如何在 Linux 中阻止 SSH 会话断开连接
  • 退出 SSH 会话后保持命令运行的 4 种方法
  • SSLH – 为 HTTPS 和 SSH 共享同一个端口
  • 如何在 Linux 中查找用户是否使用基于密码或基于密钥的 SSH 身份验证

aliasBash aliasCLI命令行创建 SSH 别名LinuxLinux 基础Linux 命令Linux 提示Secure ShellSSHssh configSSH 提示