如何在Linux中創(chuàng)建SSH別名
如果你經(jīng)常通過 SSH 訪問許多不同的遠程系統(tǒng),這個技巧將為你節(jié)省一些時間。你可以通過 SSH 為頻繁訪問的系統(tǒng)創(chuàng)建 SSH 別名,這樣你就不必記住所有不同的用戶名、主機名、SSH 端口號和 IP 地址等。此外,它避免了在 SSH 到 Linux 服務(wù)器時重復(fù)輸入相同的用戶名、主機名、IP 地址、端口號。
在 Linux 中創(chuàng)建 SSH 別名
在我知道這個技巧之前,我通常使用以下任意一種方式通過 SSH 連接到遠程系統(tǒng)。
使用 IP 地址:
$ ssh 192.168.225.22
或使用端口號、用戶名和 IP 地址:
$ ssh -p 22 sk@192.168.225.22
或使用端口號、用戶名和主機名:
$ ssh -p 22 sk@server.example.com
這里
22
是端口號,sk
是遠程系統(tǒng)的用戶名,192.168.225.22
是我遠程系統(tǒng)的 IP,server.example.com
是遠程系統(tǒng)的主機名。
我相信大多數(shù) Linux 新手和(或一些)管理員都會以這種方式通過 SSH 連接到遠程系統(tǒng)。但是,如果你通過 SSH 連接到多個不同的系統(tǒng),記住所有主機名或 IP 地址,還有用戶名是困難的,除非你將它們寫在紙上或者將其保存在文本文件中。別擔(dān)心!這可以通過為 SSH 連接創(chuàng)建別名(或快捷方式)輕松解決。
我們可以用兩種方法為 SSH 命令創(chuàng)建別名。
方法 1 – 使用 SSH 配置文件
這是我創(chuàng)建別名的***方法。
我們可以使用 SSH 默認配置文件來創(chuàng)建 SSH 別名。為此,編輯 ~/.ssh/config
文件(如果此文件不存在,只需創(chuàng)建一個):
$ 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 中創(chuàng)建 SSH 別名
將 Host
、Hostname
、User
和 Port
配置的值替換為你自己的值。添加所有遠程主機的詳細信息后,保存并退出該文件。
現(xiàn)在你可以使用以下命令通過 SSH 進入系統(tǒng):
$ ssh webserver
$ ssh dns
$ ssh dhcp
就是這么簡單!
看看下面的截圖。
使用 SSH 別名訪問遠程系統(tǒng)
看到了嗎?我只使用別名(例如 webserver
)來訪問 IP 地址為 192.168.225.22
的遠程系統(tǒng)。
請注意,這只使用于當(dāng)前用戶。如果要為所有用戶(系統(tǒng)范圍內(nèi))提供別名,請在 /etc/ssh/ssh_config
文件中添加以上行。
你還可以在 SSH 配置文件中添加許多其他內(nèi)容。例如,如果你已配置基于 SSH 密鑰的身份驗證,說明 SSH 密鑰文件的位置,如下所示:
Host ubuntu
HostName 192.168.225.50
User senthil
IdentityFIle ~/.ssh/id_rsa_remotesystem
確保已使用你自己的值替換主機名、用戶名和 SSH 密鑰文件路徑。
現(xiàn)在使用以下命令連接到遠程服務(wù)器:
$ ssh ubuntu
這樣,你可以添加希望通過 SSH 訪問的任意多臺遠程主機,并使用別名快速訪問它們。
方法 2 – 使用 Bash 別名
這是創(chuàng)建 SSH 別名的一種應(yīng)急變通的方法,可以加快通信的速度。你可以使用 alias 命令使這項任務(wù)更容易。
打開 ~/.bashrc
或者 ~/.bash_profile
文件:
alias webserver='ssh sk@server.example.com'
alias dns='ssh sk@server.example.com'
alias dhcp='ssh sk@server.example.com -p 2233'
alias ubuntu='ssh sk@server.example.com -i ~/.ssh/id_rsa_remotesystem'
再次確保你已使用自己的值替換主機、主機名、端口號和 IP 地址。保存文件并退出。
然后,使用命令應(yīng)用更改:
$ source ~/.bashrc
或者
$ source ~/.bash_profile
在此方法中,你甚至不需要使用 ssh 別名
命令。相反,只需使用別名,如下所示。
$ webserver
$ dns
$ dhcp
$ ubuntu
這兩種方法非常簡單,但對于經(jīng)常通過 SSH 連接到多個不同系統(tǒng)的人來說非常有用,而且非常方便。使用適合你的上述任何一種方法,通過 SSH 快速訪問遠程 Linux 系統(tǒng)。