Linux中國

如何在 Linux 中創建 SSH 別名

如果你經常通過 SSH 訪問許多不同的遠程系統,這個技巧將為你節省一些時間。你可以通過 SSH 為頻繁訪問的系統創建 SSH 別名,這樣你就不必記住所有不同的用戶名、主機名、SSH 埠號和 IP 地址等。此外,它避免了在 SSH 到 Linux 伺服器時重複輸入相同的用戶名、主機名、IP 地址、埠號。

在 Linux 中創建 SSH 別名

在我知道這個技巧之前,我通常使用以下任意一種方式通過 SSH 連接到遠程系統。

使用 IP 地址:

$ ssh 192.168.225.22

或使用埠號、用戶名和 IP 地址:

$ ssh -p 22 sk@192.168.225.22

或使用埠號、用戶名和主機名:

$ ssh -p 22 sk@server.example.com

這裡

  • 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 別名

HostHostnameUserPort 配置的值替換為你自己的值。添加所有遠程主機的詳細信息後,保存並退出該文件。

現在你可以使用以下命令通過 SSH 進入系統:

$ ssh webserver
$ ssh dns
$ ssh dhcp

就是這麼簡單!

看看下面的截圖。

使用 SSH 別名訪問遠程系統

看到了嗎?我只使用別名(例如 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 別名的一種應急變通的方法,可以加快通信的速度。你可以使用 alias 命令使這項任務更容易。

打開 ~/.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 地址。保存文件並退出。

然後,使用命令應用更改:

$ source ~/.bashrc

或者

$ source ~/.bash_profile

在此方法中,你甚至不需要使用 ssh 別名 命令。相反,只需使用別名,如下所示。

$ webserver
$ dns
$ dhcp
$ ubuntu

這兩種方法非常簡單,但對於經常通過 SSH 連接到多個不同系統的人來說非常有用,而且非常方便。使用適合你的上述任何一種方法,通過 SSH 快速訪問遠程 Linux 系統。

建議閱讀:

目前這就是全部了,希望它對你有幫助。更多好東西要來了,敬請關注!

乾杯!

via: https://www.ostechnix.com/how-to-create-ssh-alias-in-linux/

作者:sk 選題:lujun9972 譯者:MjSeven 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國