分享

基于secureCRT的unix服务器批量登陆的脚本

 爱睡觉的猫 2017-09-27
做运维的人大概都有体会,一个变更要登录服务器,输入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中写入用户名和密码,不同用户密码的服务器也可以批量登陆,这里就不一一列举了。 

当然互联网公司几千几万的同一种服务器,就需要专门的工具了。不过大部分传统企业,比如像我们这种巨型银行,同一类服务器最多也就几百台,这种办法就会比较合适。 

适合自己的就是最好的。 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多