1. 程式人生 > >【效率工具】SSH一鍵登錄腳本(可一鍵從跳板機登錄線上服務器)

【效率工具】SSH一鍵登錄腳本(可一鍵從跳板機登錄線上服務器)

git 修改 href 分享圖片 got online brew apt-get username

說明

前陣子上線,一次性上了十個服務,一直上到淩晨才完事,期間每個服務都要先輸入跳板機的登錄信息來登錄跳板機,然後再輸入線上服務器的信息來登錄線上服務器,實在是太過於麻煩,而且有些服務還有好幾臺服務器,檢查問題的時候,服務器跳來跳去的,簡直苦不堪言。

技術分享圖片

於是,便萌發了用shell腳本的方式來一鍵跳轉的想法,先上github上搜了搜現成的輪子,發現都不太好用,要不就是沒說明,要不就是只能登一臺服務器,不能滿足從跳板機A跳轉到線上服務器B的需求。

所以,還是自己動手,豐衣足食。

Shell腳本

Shell腳本已經發布到了github上,鏈接在此:https://github.com/MFrank2016/GotoSSH

這個腳本借鑒了AutoSSH的腳本,並將其進行了修改,使得能夠支持從跳板機直接跳轉登錄服務器。

使用說明

GotoSSH是一個一鍵登錄SSH的腳本,可直接從跳板機登錄到線上服務器,致力於幫助你提高工作效率。

安裝依賴

CentOS :

$ sudo yum install -y expect

Ubuntu :

$ sudo apt-get install tcl tk expect

Mac :

$ sudo brew install expect

安裝 GotoSSH

$ git clone https://github.com/MFrank2016/GotoSSH.git
$ cd GotoSSH
$ chmod a+x gotossh
$ sudo cp gotossh /usr/local/bin/

配置

$ vim ~/.gotossh_config
server_name|ip|username|password|port|rely_server_no

最後一列是代表該服務器依賴於哪個服務器,如果該列的值設置為0,代表不依賴於其他服務器,否則代表需要先登錄其他服務器後才能登錄該服務器,目前暫時只能從A跳轉到B,不支持多跳轉,感覺沒有必要,如果有需要,把腳本稍微改改就行了。

舉個栗子

$ vim ~/.gotossh_config
test_server|192.168.0.1|root|password|22|0
online_server|192.168.2.2|root|password|22|1

使用說明

$ gotossh
######################################################################################
#                                  [GOTO SSH]                                        #
#                                                                                    #
#                                                                                    #
# [1] test_server - 192.168.0.1:root                                                 #
# [2] online_server - 192.168.2.2:root                                               #
#                                                                                    #
#                                                                                    #
######################################################################################
Server Number:(Input Server Number Here)

OR

gotossh 1

OR

gotossh 2

因為配置文件裏設置了服務器2依賴於服務器1,所以會先登錄服務器1,然後再登錄服務器2。

這樣,只需要小手一點,就能直接登錄線上服務器,豈不是美滋滋。

技術分享圖片

小結

雖然只是一個簡單的腳本,奈何道法太淺,硬生生折騰了大半天才調試完成,但也算是了卻了一樁心願。

獨樂了不如眾樂樂,特此分享給大家,希望能對大家有所幫助。

如果覺得還不錯,別忘了加個star?也歡迎關註我的公眾號留言交流。

技術分享圖片

【效率工具】SSH一鍵登錄腳本(可一鍵從跳板機登錄線上服務器)