管理ssh主機和私鑰的最佳方法

作為系統管理員,定期處理多個遠程系統。需要在工作期間多次使用ssh系統。許多遠程linux服務器都是通過密碼訪問的,其中許多是通過私鑰訪問的。因此,這對于管理所有這些內容來說更為典型。本篇文章將給大家介紹關于使用密鑰文件正確組織ssh服務器詳細信息。

管理ssh主機和私鑰的最佳方法

配置文件語法:

我們可以將多個ssh主機詳細信息添加到~/.ssh/config?文件中。在你最喜歡的編輯器(如vi、vim或nano)中編輯配置文件。

$?vi~/.ssh/config

語法如下所示:

Host<nick_name>? ?????HostName<ip>? ?????IdentityFile?<path>? ?????User<login>? ?????Port<ssh>? ?????LocalForward??<remote_location></remote_location></ssh></login></path></ip></nick_name>

1、添加第一個SSH主機

例如,我們的第一個ssh主機正在運行一個php開發Web服務器,其詳細信息名稱為php-web1,用戶root,端口22,并且可以通過密碼訪問。在配置文件中添加以下內容。

Host?php-web1 ?????HostName?192.168.1.100 ?????User?root

現在嘗試使用SSH作為以下命令。

$?ssh?php-web1

2、添加第二個SSH主機

我們的第二個主機服務器(php-web2)可以使用默認端口22上的用戶root的ssh密鑰對訪問。在配置文件中添加以下內容。

Host?php-web2 ?????HostName??192.168.1.101 ?????IdentityFile?~/.ssh/php-web2.pem ?????User?root

現在嘗試使用SSH作為以下命令。

$?ssh?php-web2

3、添加第三個SSH主機

我們的第三個ssh主機服務器(php-db1)在端口2222上運行,可通過用戶ubuntu的密鑰對訪問。在配置文件中添加以下內容。

Host?php-db1 ?????HostName?192.168.1.110 ?????Port?2222 ?????IdentityFile?~/.ssh/php-db1.pem ?????User?ubuntu

現在嘗試使用SSH作為以下命令。

$?ssh?php-db1

4.使用SSH進行設置轉發

在此設置中,我們需要將本地系統端口3306轉發到端口3306上的遠程服務器(php-db1)主機。在配置文件中添加以下內容。

Host?php-db1-mysql-tunnel ?????HostName?192.168.1.110 ?????Port?2222 ?????IdentityFile?~/.ssh/php-db1.pem ?????LocalForward?3306?127.0.0.1:3306

現在嘗試使用SSH作為以下命令。

$?ssh?php-db1-mysql-tunnel

最終配置文件

最終配置文件~/.ssh/config?如下所示。

Host?php-web1 ?????HostName?192.168.1.100 ?????User?root  Host?php-web2 ?????HostName??192.168.1.101 ?????IdentityFile?~/.ssh/php-web2.pem ?????User?root  Host?php-db1 ?????HostName?192.168.1.110 ?????Port?2222 ?????IdentityFile?~/.ssh/php-db1.pem ?????User?ubuntu  Host?php-db1-mysql-tunnel ?????HostName?192.168.1.110 ?????Port?2222 ?????IdentityFile?~/.ssh/php-db1.pem ?????LocalForward?3306?127.0.0.1:3306

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享