在Linux系統中建立SSH伺服器別名

夢共裡醉發表於2019-05-26

如果你經常透過 SSH 訪問許多不同的遠端系統,這個技巧將為你節省一些時間。你可以透過 SSH 為頻繁訪問的系統建立 SSH 別名,這樣你就不必記住所有不同的使用者名稱、主機名、SSH 埠號和 IP 地址等。此外,它避免了在 SSH 到   伺服器時重複輸入相同的使用者名稱、主機名、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

在 Linux 中建立 SSH 別名在 Linux 中建立 SSH 別名

使用 SSH 配置檔案在 Linux 中建立 SSH 別名

將 Host、Hostname、User 和 Port 配置的值替換為你自己的值。新增所有遠端主機的詳細資訊後,儲存並退出該檔案。

現在你可以使用以下 透過 SSH 進入系統:

$ ssh webserver
$ ssh dns
$ ssh dhcp

就是這麼簡單!

看看下面的截圖。

在 Linux 中建立 SSH 別名在 Linux 中建立 SSH 別名

使用 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

在 Linux 中建立 SSH 別名在 Linux 中建立 SSH 別名

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

建議閱讀:

  • 允許或拒絕 SSH 訪問 Linux 中的特定使用者或組
  • 如何在 Linux 上 SSH 到特定目錄
  • 如何在 Linux 中斷開 SSH 會話
  • 4 種方式在退出 SSH 會話後保持命令執行
  • SSLH – 共享相同埠的 HTTPS 和 SSH

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

乾杯!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31524109/viewspace-2645667/,如需轉載,請註明出處,否則將追究法律責任。

相關文章