SecureCRT自动登陆到服务器的脚本以及脚本编写简单说明

http://blog.csdn.net/marising/article/details/6409196

Secure用SSH登陆服务器时,如果服务器较多,登陆一次很麻烦,所以,可以自己编写VBScript来搞定。

一、Secure脚本介绍

Secure是VBScript脚本,VB脚本的教程,请参考有关文档。

Secure自带的对象如下:

Application对象,就是crt,是个顶层的对象,所有其他内容都从这个对象中获得

Session,会话对象,负责连接相关

Tab对象,就是标签页

Scree对象,负责交互相关的,比如发送命令、接收命令返回等

主要是上面这几个,其他的看帮助文档。

二、自动登陆的说明

1、创建Session,并连接到服务器

这里有两种方式,一种是自己设置参数连接,一种是利用现有的Session设置来连接

方式1:

crt.session.Connect("protocol [email protected]")

protocol:协议,支持ssh,ssh2,telnet

user:用户名

host:机器名

方式2:

Set conf = crt.OpenSessionConfiguration("session_name")

Set tab = conf.ConnectInTab()

session_name:是你自己设置的Session的名字,这样做的好处是可以利用已设置好的Session来连接,简单。

2、克隆(Clone)标签页,并登陆到服务器

Set newtab = tab.Clone()

克隆的好处是不用再登陆,直接Clone已有的即可。

3、设置标签页的名称等

tab.Caption = xxx

标签多了,需要每个设置一个别名

4、连接到服务器

连接功能主要是Screen对象中的各种方法。

Set scr = tab.Screen ‘首先获取tab的Screen

scr.Send("ssh " & host & VbCr) ‘发送ssh 登陆命令

scr.WaitForString(host & "‘s password: ") ‘等待输入密码的提示

scr.Send(pwd & VbCr) ‘输入密码

三、完整例子

[vb] view plaincopy

  1. #$language = "VBScript"
  2. #$interface = "1.0"
  3. crt.Screen.Synchronous = True
  4. Function Login(ptab,name,host,pwd,cmd)
  5. Dim tab,scr
  6. Set tab = ptab.Clone()
  7. tab.Caption = name
  8. Set scr = tab.Screen
  9. scr.Send("ssh " & host & VbCr)
  10. scr.WaitForString(host & "‘s password: ")
  11. scr.Send(pwd & VbCr)
  12. scr.Send(cmd & VbCr)
  13. Set Login = tab
  14. End Function
  15. Sub Main
  16. Dim conf,tab
  17. Set conf = crt.OpenSessionConfiguration("session_name")
  18. Set tab = conf.ConnectInTab()
  19. Set tab = Login(tab,"name1","[email protected]","xxx","cd /home/")
  20. Set tab = Login(tab,"name2","[email protected]","xxx","shell cmd")
  21. End Sub

更详细的介绍,请参考SecureCRT的帮助文件。

时间: 2024-10-04 00:04:31

SecureCRT自动登陆到服务器的脚本以及脚本编写简单说明的相关文章

Linux下无需输入密码自动登陆ssh服务器方法

用OpenSSH在linux下登陆ssh服务器时,每次都提示要输入密码,而且使用vim 的netrw插件编辑远程文件时每次修改后保存都要输密码,非常麻烦.查看了netrw的help文档,发现已经介绍了自动登陆ssh服务器的方法: 1. 创建一个公开/私密钥对(在客户端机器上进行) ssh-keygen -t rsa (saving the file in ~/.ssh/id_rsa as prompted) 输入上面的命令(括号内的不用输入)后,会提示输入passphrase,直接按两次回车,不

使用ssh公钥密钥自动登陆linux服务器

作为一名 linux 管理员,在多台 Linux 服务器上登陆进行远程操作是每天工作的一部分.但随着服务器的增多,每次登陆,系统都会提示输入用户名和密码,频繁的输入用户名和密码是一件让人很烦的事情.也许有人说可以用一些客户端工具,比如:SecureCRT 等,的确使用这些软件会方便很多,但是这些软件不是价格昂贵的商业软件就是依附于特定平台才能安装使用,所以我今天介绍的是使用 ssh 自带的功能实现使用客户端工具所能带来的便利,那就是使用 ssh 的公钥密钥实现自动登陆. 测试环境:操作系统:Re

shell脚本编程-例子_自动登陆ftp备份

ftp很常见的是用于存取文件的应用,它也用于日常备份.这种周期性的工作无疑需要通过自动化脚本来完成.本次系统为CentOS7 本次实验需要你做如下操作: 1.修改ftp服务器的配置文件/etc/vsftpd/vsftpd.conf,将anon_upload_enable=YES,前面的注释符去掉,即允许匿名用户上传文件: 2.在下一行中增加anon_other_write_enable=YES,即允许匿名用户覆盖同名文件,并重启vsftpd服务配置生效. [[email protected] c

Linux FTP自动登陆下载备份,上传文件脚本

使用远程的服务器,对另外一台远程的服务器进行FTP操作,速度要比本地机器操作快很多. 之前写过一篇关于FTP如何手工的在Linux进行远程操作, 今天找到一个自动批量的脚本,感觉很好.满足了我的需要. 我的A网站在香港 我的B服务器Linux的在国内.这样就可以把A网站自动备份到B服务器了. 希望本篇博客能给需要的同学一些帮助. #####从ftp服务器上的/home/data 到 本地的/home/databackup#### #!/bin/bash ftp -n<<! open 192.1

SecureCRT上使用公钥登陆Linux服务器

SecureCRT部分配置 1.首先生成公钥. 打开SecureCRT(我的版本为7.0,估计其他版本基本相同)程序,点击菜单栏的“工具”->“创建公钥”.按照步骤执行.其中一步比较重要就是选择公钥的格式.建议选择“OpenSSH”,否则在服务器端使用时需要转换为OpenSSH各式.何必多次一举呢.所以这里必须选择“OpenSSH”.如果选错了.重新生成一次就可以了. 然后选择公钥私钥存放的地方.默认Identity是私钥,Identity.pub是公钥. 2.把Identity.pub文件上传

shell脚本实现无密码交互的SSH自动登陆

ssh连接远程主机时候询问密码,跟su.sudo命令的默认行为一样,是不从stdin读入数据的,据称是为安全考虑,但是有时候在脚本当中确实需要无人守值的登陆.搜索一下不难找到类似的例子,使用expect来完成密码应答: #!/bin/bash auto_login_ssh () { expect -c "set timeout -1; spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3}; expect *assword:*; send

shell脚本实现ssh自动登录远程服务器示例

本文转载自 懒惰的肥兔 :http://www.xuanhao360.com/linux-expects/ shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh [email protected] expect "*password:" send "123\r" expect "*#" interact Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使

通过expect免自动输入密码登陆远程服务器

1.前提必须已经安装expect 2.新建login.sh,文件内容如下 #!/usr/bin/expect -f spawn ssh [email protected]expect "password:"send "passwordR\r"interact 3.执行./login.sh即可登陆远端服务器

expect自动登陆linux系统

开发使用linux乌班图的系统,没有类似SecureCRT的工具,每次登陆linux系统都需要输入密码, 很浪费时间.于是弄了一个脚本让他们每次都直接输入一个服务器别名就能登陆linux系统.以下 是具体操作步骤: 1.vim /root/expect_ssh.exp #!/usr/bin/expect -f set timeout 99 set host [lindex $argv 0] set port [lindex $argv 1] set username [lindex $argv