基於secureCRT的unix服務器批量登陸的腳本

做運維的人大概都有體會,一個變更要登錄服務器,輸入IP、用戶、密碼一臺臺服務器登錄,花時間還沒成就感。遇上幾十臺上百臺的變更,登錄的時間得花個把小時了。 
有沒有比較方便的辦法呢,其實很簡單,secureCRT+簡單的VB腳本就能做到。 
一、首先我們要安裝secureCRT 7以上版本,先登錄一臺服務器保證CRT可以正常使用 
二、把以下內容拷貝到一個txt裏,把文件名修改爲自動登錄.vbs 
' Written by Suren 
Const ForReading = 1 

Dim fso, iplistpath , iplist, StrIp, StrPwd 
Dim loginuser 

'======================path and some parameters ========================================== 
iplistpath=".\ip.txt" 


  loginuser = InputBox("請輸入用戶:")   '登陸用戶 
  StrPwd=InputBox("請輸入密碼:") 
  'MsgBox("Your Password is " & StrPwd) 


'=======================open file================================================== 
Set fso = CreateObject("Scripting.FileSystemObject") 
Set iplist = fso.OpenTextFile(iplistpath , ForReading, False) ' ip-list file path 
'========================end open================================================== 



 Do While  iplist.AtEndOfStream <> True 
                StrIp = Trim(iplist.Readline) 
                If StrIp <> "" Then 
                        cmd = "/ssh2 /L " & loginuser &" /PASSWORD " & StrPwd & " /C 3DES " & StrIp 
                        crt.Session.ConnectInTab cmd 
                End If 
         Loop 

三、在腳本同一目錄下,新建一個ip.txt,然後把要登錄的IP輸入進去 
四、打開secureCRT,選擇腳本-運行-選中你剛纔編輯的自動登錄.vbs,按提示輸入用戶密碼即可 

從此一次登錄個幾十臺服務器不在話下了,再利用secureCRT的send chat to all session的功能,可以實現變更、維護的批量操作。後來根據需要又做了很多版本,比如不用默認的ip.txt,而是手工選擇ip文件;將ip.txt中寫入用戶名和密碼,不同用戶密碼的服務器也可以批量登陸,這裏就不一一列舉了。 

當然互聯網公司幾千幾萬的同一種服務器,就需要專門的工具了。不過大部分傳統企業,比如像我們這種巨型銀行,同一類服務器最多也就幾百臺,這種辦法就會比較合適。 

適合自己的就是最好的。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章