如何在Linux中创建SSH别名

时间:2020-03-21 11:44:15  来源:igfitidea点击:

如果我们经常通过SSH访问大量不同的远程系统,则此技巧将为我们节省一些时间。
我们可以通过SSH将SSH别名创建到频繁访问的系统。
这样你不需要记住所有不同的用户名,主机名,SSH端口号和IP地址等。
另外,只要在将SSH中发送到Linux服务器时,它避免了重复键入相同的用户名/主机名,IP地址,端口号( s)。

在Linux中创建SSH别名

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

使用IP地址:

$ssh 192.168.225.22

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

$ssh -p 22 Hyman@theitroad

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

$ssh -p 22 Hyman@theitroad

其中

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

我相信大多数新手Linux用户和/或者管理员将以这种方式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 theitroad
    Port 2233

替换我们自己的主机,主机名,用户和端口的值。
添加了所有远程主机的详细信息,保存并退出文件。

现在,我们可以使用命令中的系统进行SSH:

$ssh webserver
$ssh dns
$ssh dhcp

这很简单。

我只使用别名名称(i webserver)来访问具有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 Hyman@theitroad'
alias dns='ssh Hyman@theitroad'
alias dhcp='ssh Hyman@theitroad -p 2233'
alias ubuntu='ssh Hyman@theitroad -i ~/.ssh/id_rsa_remotesystem'

再次确保我们已使用自己的主机,主机名,端口号和IP地址替换。
保存文件并退出。

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

$source ~/.bashrc

或者,

$source ~/.bash_profile

在此方法中,我们甚至不需要使用"ssh alias-name"命令。
相反,只需使用下面的别名名称。

$webserver
$dns
$dhcp
$ubuntu

这两种方法非常简单,但对于那些经常被陷入多个不同系统的人来说,更有用,更方便。
使用任何一个上述方法,这些方法都适合我们通过SSH快速访问远程Linux系统。