SecureCRT 录制或编写登录脚本

注:本教程也适合用xshell的,但是命令稍微有变,想看详情直接去最后。

公司对内网机器稍微有些安全意识的话,会采用跳板机的方式让你登录远程服务器。

所谓跳板机(也叫堡垒机),就是登录所有线上服务器的方式,不是ssh直连,而且你需要先直连到某一台机器A,然后在那台机器ssh到线上具体要操作的服务器B上。而直接访问B机器是访问不了的。

但是线上有很多机器的话,你要每次都登录到跳板机A上之后,每次手动输入命令登录到具体机器,那样好麻烦。机器一多,光连接机器都烦的不行。这时候就是登录脚本的作用了。

登录脚本可以直接录制,方法就是点击“脚本——开始录制脚本”,接下来开始登录机器,等登录完之后,再点击“脚本——停止录制脚本”,这时候把脚本保存下来就可以了。

当然,除了录制,你也可以直接自己编写脚本,或者在录制的脚本基础上直接修改脚本。有100台机器,你不可能把所有机器的登录都录制一遍吧,直接录制一个,笨点的就是手动修改里面的ip、密码,好点的方式就是写个程序复制和修改这些文件。

下面介绍一下SecureCRT脚本的基本命令。
先来看个我写好的脚本a.vbs,给大家一点点讲解,其实是个vb代码。

首先Main应该是个执行方法,类似java执行的main方法,这个没什么好说的。

crt代表主进程,我们用的都是crt的内置对象操作。

crt.Screen代表屏幕,用来操作屏幕输入输出流。

crt.Screen.Synchronous这段是用来设置同步模式,防止丢失对象,接下来就是重头戏了。
以带引号开头的,标识这行是注释。

crt.Sleep代表等待,后面时间单位为毫秒,这里有时候如果访问跳板机之后出现一大堆介绍,可以用这个命令,让后面的程序等待一下,不然可能后面程序有时候执行不好,没法等待到字符。当接收到的内容比较多的时候,就可以用这个让这些内容走走。

crt.Screen.WaitForString "$"这行被注释掉了,原因就是有时候上面提示的内容太多了,没法等到这个$符号。这行本身命令的意思就是等到出现这个字符的时候,执行下面的命令。

crt.Screen.Send向屏幕发命令,这里发的命令就是我们的ssh登录具体机器的命令了。

crt.Screen.Send VbCr这里的VBCr意思是回车,也就是上面命令执行完了,再向屏幕发个回车命令。chr(13)也是这个意思。

下面的就简单了,意思是等到密码提示出现了输入密码、回车。这里因为不知道P会大写还是小写,干脆就把P忽略了,哈哈。
最后再把模式改回去,完事~

上面这些命令就是我们登录脚本常用的命令了,当然crt包括ActivePrinter(打印机),Dialog,Screen,Session(会话),Version,Window(窗口)这些二级对象,操作有Sleep,Quit。有兴趣可以深入研究。

写好这些脚本之后,直接去crt中右键会话,左侧选择“连接——登录动作”,在登录脚本一行选择脚本,打上勾,这样登录到跳板机就会直接登录到具体服务器啦。

本文原创于赵伊凡BLOG转载请注明出处。

下面简单介绍下xshell的登录脚本命令,xshell常用命令和crt一模一样,只不过把crt改为xsh就行了,比如xsh.Screen.Send,它一样是个vb脚本。

©原创文章,转载请注明来源: 赵伊凡's Blog
©本文链接地址: SecureCRT 录制或编写登录脚本

发表评论

电子邮件地址不会被公开。 必填项已用*标注