posts - 33,  comments - 70,  trackbacks - 0

          tag: ssh script bash linux expect sssh

          此腳本對于那些需要經(jīng)常 ssh 登陸遠程服務器的朋友應該有點用處。尤其是需要中轉(zhuǎn)服務器 ssh 2 次以上的。腳本功能包括:將服務器 IP 和密碼保存于文本文件中 (明文保存,安全性要自己保證),方便登陸,支持多次 ssh 中轉(zhuǎn),支持服務器編碼自動轉(zhuǎn)換,支持某個用戶名的通用密碼。

           
          版本說明:  v2.0版本中 ssh可以指定連接端口,改善bash環(huán)境支持

          使用方法:

          最好將腳本保存在 PATH 變量包含的路徑下,建議保存于 ~/bin 并確保此目錄在 PATH 中。

          編寫 ~/.pass 文件,并執(zhí)行 chmod 600 ~/.pass

          安裝 expect 包。

          .pass 文件的寫法:

          1. 最簡單的,可以在文件中寫下如下一行:

            name=hostA usernameA@IP-A passwordA

            就可以使用 sssh hostA 登陸此服務器了。

          2. 中轉(zhuǎn)登陸:

            name=hostA usernameA@IP-A passwordA
            name-hostA=hostB usernameB@IP-B passwordB

            執(zhí)行 sssh hostA hostB 就相對于先登陸 hostA,然后在 hostA 上登陸 hostB。同理,理論上可以中轉(zhuǎn) N 次,hostA->hostB->hostC->hostD……,嘿嘿……

          3. 使用通用用戶名的密碼:

            這是用于這樣的例子:有 N 個服務器,都開通了一個通用用戶名 (例如:view 用戶,只有很低的權(quán)限),這些 view 用戶的密碼都是同一個,而且會定期同步修改。這種情況下,如果修改了 view 密碼的話,.pass 文件就要修改 N 個密碼了,為了避免這樣的麻煩,可以使用通用用戶名和密碼功能:

            usualName view
            usualPSW password-of-view
            name=hostA view@IP-A
            name=hostB view@IP-B
            name=hostC view@IP-C

            這樣就可以直接用 sssh hostA,sssh hostB 登陸了。可以看到,這里省略了第 3 列的密碼字段。此法同樣適用于多級登陸的服務器。

          4. 指定服務器使用的編碼:

            usualName view
            usualPSW password-of-view
            name=hostA usernameA@IP-A passwordA gbk
            name=hostB view@IP-B | gbk

            在某行服務器的后面 (第 4 列),加上 gbk,就可以指明該服務器使用的是 gbk,登陸了以后不會出現(xiàn)亂碼了。如果某行使用了通用用戶名和密碼的話,為了不致引起混亂,密碼那列需要加個 | (豎線) 占位。

          5. 使用通用編碼:

            usualCODING gbk

            加上此行,對于沒有指定編碼的服務器,將默認使用 gbk 編碼。

          6. 手工指定遠程連接端口:
                     name=hostA usernameA@IP-A:port passwordA
                    name=hostD view@IP-D:port

               7.
          改善bash環(huán)境支持(~/.bash_profile文件)
                    用到第三方 term時, bookmark command運行sssh時一些環(huán)境支持
                    例如: .bash_profile文件加入環(huán)境上下文.
                    cat ~/.bash_profile
                          alias ls="ls -Gw"
                          source ~/.profile
                    注:要區(qū)分 bash,tcsh
                         
            

          下載v2.0:

          由于腳本貼在這里會出現(xiàn)半角引號變?nèi)堑臓顩r。所以,請直接在 [這里下載]


          原1.0版本請訪問 [這里]


          posted on 2008-12-19 12:49 地獄男爵(hellboys) 閱讀(1461) 評論(1)  編輯  收藏

          FeedBack:
          # re: sssh v2.0 - 快速 ssh 登陸腳本[未登錄]
          2009-02-17 14:38 | Nicholas Ding
          何必這么麻煩呢,用 SSH Agent + Key 認證就行了,明文 + 腳本是很不安全的做法。  回復  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          <2009年2月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          1234567

          常用鏈接

          隨筆分類

          隨筆檔案

          文章檔案

          相冊

          連接

          最新隨筆

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 景宁| 新乡市| 卢龙县| 昂仁县| 灵山县| 冀州市| 宁陵县| 南丹县| 麦盖提县| 安新县| 抚松县| 柞水县| 景洪市| 竹溪县| 西华县| 建昌县| 子洲县| 锡林郭勒盟| 华宁县| 虎林市| 藁城市| 江西省| 托克逊县| 全南县| 都江堰市| 桂东县| 绵竹市| 时尚| 乳山市| 盐山县| 龙江县| 西峡县| 巫溪县| 岢岚县| 漳州市| 新河县| 阿图什市| 凤山县| 石嘴山市| 榕江县| 隆昌县|