SecureCRT的设置

[转载]简要介绍:

VanDyke CRT 和 VanDyke SecureCRT是最常用的终端仿真程序,简单的说就是windows下登录UNIX或Liunx服务器主机的软件。二者不同的是SecureCRT支持SSH∗(SSH1和SSH2)。

本文主要介绍SecureCRT的使用方法和技巧。

[概念解释]什么是SSH?

SSH的英文全称是Secure Shell。

传统的网络服务程序,如:ftp和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而通过使用SSH客户端与服务器端通讯时,用户名及口令均进行了加密,有效防止了对口令的窃听。同时通过SSH的数据传输是经过压缩的,所以可以提高数据的传输速度,既然如此我们为什么不使用它呢。SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。至于具体如何安装服务器端,普通用户就不需要关心了。☺

一、安装

1、安装

首先要下载SecureCRT,目前最新的版本为6.0 (截止到2008年1月,其破解版本还未出现),我们以5.53版为例进行介绍,下载安装文件scrt553.exe和破解文件keygen.exe。

安装过程很简单,运行scrt553.exe,只要“下一步”即可,安装过程中可以看到 SecureCRT支持以下协议:

安装完成后,第一次启动SecureCRT会有如下提示:

用户需要指定一个目录,用来存放SecureCRT的配置信息。此目录默认为C:\Documents and Settings\用户名\Application Data\VanDyke\Config,如果是升级SecureCRT需要保持此文件夹与旧版本一致,如果重装系统,一定要备份此目录。

如果需要更改,启动SecureCRT后点击Options => Global ptions => General修改 Configuration folder即可。

2、破解

未破解版本,只有30天的使用期。关闭SecureCRT,将keygen.exe拷贝到安装目录C:\Program Files\SecureCRT中,运行它,填写Name,Company后点击Generate得到Serial, Date, License Key信息,点击Patch按钮,破解并备份SecureCRT主程序。

运行SecureCRT,点击Help=> Enter License Data…, 填写从keygen得到的注册信息即可.

二、基本设置

1、修改设置

为了SecureCRT用起来更方便,需要做一些设置,需要修改的有如下几处:

1、退出主机自动关闭窗口

Options => Global ptions => General => Default Session => Edit Default Settings...

Terminal中将Close on disconnect 选上,当用户从主机中退出后可以自动关闭当前连接的窗口。

2、修改默认卷屏行数

当你做一个操作,屏幕输出有上百行,当需要将屏幕回翻时,这个设置会有很大帮助,默认为500行,可以改为10000行,不用担心找不到了。

Terminal => Emulation => Scrollback 修改为10000。

3、修改SFTP默认下载路径(可选):

对于使用SSH的连接中,可以使用SFTP下载文件,在这里可以设置文件的下载目录(默认为下载到“我的文档”中)

Connection => SSH2 => SFTP Tab => Initial directories => Local directory

4、修改Xmodem/Zmodem上传下载路径(可选)

SecureCRT可以使用Xmodem/Zmodem方便的上传和下载文件。

在Session ptions =>Xmodem/Zmodem => Directories中设置

5、拷贝与粘贴的设置

通过鼠标操作即可拷贝或粘贴所需内容是一个非常方便的设置

Options => Global ptions => Terminal => Mouse

选中Copy on select 和 Paste on middle button

这样设置后,只要用鼠标选中所需内容,则将内容拷贝到剪切板中,点击鼠标中键即可粘贴内容。

另外可以设置使用Windows下的拷贝粘贴快捷键,Options => Global ptions => General => Default Session => Edit Default Settings... => Terminal => Mapped keys => Use windows copy and paste hotkeys

6Tabs设置

从Secure5.0以后,增加了Tabs(标签)选项,多个连接可以在同一个窗口下打开,类似IE7.0的风格。将Double-click 选项修改为 Close Tab,双击标签可关闭连接窗口。

三、界面介绍

1、菜单

1File文件

Connect... 连接,打开一个连接或者编辑已有的连接,创建新连接。

Quick Connect... 快速连接,快速连接对话框,快速连接主机的最便捷方式

Connect in Tab... 在Tab中打开一个新的会话窗口。

Clone Session 克隆当前会话窗口。

Connect SFTP Tab 打开SFTP窗口,对于SSH连接,此选项可用。在此会话窗口中可使用SFTP命令传输文件。

Reconnect 重新连接

Disconnect 中断当前会话窗口的连接

Log Session 把当前窗口的会话记录到log文件中。

Raw Log Session 将更详细的会话记录到log文件中,包括服务器更详细的响应信息。

Trace Options 在log文件中记录协议会话信息选项。(包括客户端与主机互相连接时的一些信息内容)

2Edit编辑

拷贝粘贴等

3) View视图

显示各种工具条

4) Options选项

包括全局选项和Session选项

5) Transfer传递文件

使用Xmodem/Zmodem上传下载文件

6) Script.脚本

运行一个脚本文件,或记录一个新的脚本。(类似Word中的宏功能)

7) Tools工具

键盘映射编辑,密钥生成工具等

8) Help帮助

2、对话框和按钮

点击File => Connect可出现Connect对话框。

从左至右按钮依次为:

连接(激活选中的连接条目);快速连接(快捷连接新的主机);新建连接(在对话框中新增一个连接条目);剪切;复制;粘贴;删除(对话框中的条目);新建文件夹,属性(显示选中条目的属性),创建条目的桌面快捷方式,帮助。

Connect对话框下方有两个选项:

Show dialog on start (启动SecureCRT时显示Connect对话框);

Open in a tab (以新标签卡的形式打开一个会话),选中此选项,新的会话窗口如下图所示:

否则将打开多个SecureCRT窗口:

四、使用方法

1、新建连接

File => Connect => 点击 New Session 按钮,出现以下窗口,填写连接的名字,协议(SSH1,SSH2,Telnet, Rlogin等)

点击SSH2选项,填写主机名或者IP地址,端口号,用户名。另外可设置会话窗口的颜色方案,点击Appearance选项,可自己设计或者选择已有的颜色方案,更改字体,光标等。

2、快速连接

点击快速连接按钮出现下面的对话框,填入主机信息和用户名即可快速连接。

下面有两个选项Save session(保存快速连接的信息到连接对话中);Open in a tab (以新标签卡的形式打开一个会话)

3、使用SSH连接主机

按照上面的介绍新建一个SSH连接,如果是第一次连接会有如下提示,点击Accept & Save即可。

对于SSH连接,鼠标右键单击条目卡,可出现右键菜单,单击其中的Connect SFTP Tab,可打开SFTP窗口

可使用SFTP命令下载和上传文件,本地路径设置见Connection => SSH2 => SFTP Tab => Initial directories => Local directory,默认为“我的文档”。

基本的SFTP命令:

get [-a | -b] remote-path 下载文件,(-a) 强制使用ascii模式,(-b)强制使用binary模式

put [-a | -b] local-path 上传文件,(-a) 强制使用ascii模式,(-b)强制使用binary模式

建议使用-b选项,否则上传到UNIX或LINUX主机上的文件后有^M字符。

4、使用Telnet连接主机

新建一个Telnet连接,在Telnet选项中填写主机IP,端口号信息。

在Linux主机下,可以使用Xmodem/Zmodem方便的上传和下载文件

基本命令:sz 下载文件到本地;rz 上传本地文件到主机。

5、其它技巧

1)使用脚本来进行重复性工作

可以像word的宏一样,把你的重复性操作记录为一个脚本文件

Script. => Start Recording Script, 开始记录

Script. => Stop Recording Script,停止记录, Save as …保存成script文件。下次调用时Script. => Run => Select Script. to run …

2)使用Map key来进行重复输入工作

可以设置为全局选项(对所有连接都有效),也可以只设置为Session选项,如下图

Options => Session ptions => Terminal => Mapped keys => Map a key,出现Map Key 对话框

例如,单击F12键,在Send String 输入你要经常重复使用的命令,ok

则下次在会话窗口中点击F12键将直接输入df –m

3)自动登录

以登录一个Telnet的主机为例,Session ptions => Connection => Logon Scripts => Automate logon, 在login后的send中输入用户名,在Password后的send中输入密码。则可实现自动登录。

用SecureCRT来上传和下载数据
今天才知道,原来SecureCRT可以使用linux下的zmodem协议来快速的传送文件,而且还使用非常方便哦,我还傻傻的找其他软件来sftp,笨死了:(
你只要设置一下上传和下载的默认目录就行
options-->session options-->file transfer 下可以设置上传和下载的目录
剩下的你只要在用SecureCRT登陆linux终端的时候:
发送文件到客户端:
sz filename
zmodem接收可以自行启动.
从客户端上传文件到linux服务端:
只要服务端执行,
rz
然后在 SecureCRT 里选文件发送,协议 zmodem
简单吧,如果你以前一直使用ssh,而又没有对外开放ftp服务,你就直接使用这种方式来传输你的文件吧,很方便哦:)

===================

使用SecureCRT登录路由器   
 
   
看到这个题目,想必大家一定觉得很无聊,但如果你看完了,一定会惊呼SecureCRT功能的强大。 
    大家以前可能大部分都是用Windows自代的Telnet程序或是通过Putty来连接Dynamips虚拟的路由器,但Telnet功能太单一,复制粘贴也不方便,我一开始就不用它,除非是该机器上没有其它程序。Putty呢,功能不少,程序也不大,还是一个绿色单一文件,确实很好,但是,如果你想登录多个网络设备,就要开多个Window窗口,弄得系统任务栏上都是putty的窗口,虽然WinXP可以对任务分组,但要找登录到某一设备的任务还是比较麻烦的。讲到这里,大家肯定马上就想到了SeucreCRT,不错,是这个软件。下面就详细说说。
    SecureCRT的功能确实强大,强大到哪里,一般的功能就不说了,单纯支持JS或VBS脚本,就非常了不得,当然,在这里我还要提一下它的标签(TAB)功能。也就是说,给一个任务,不是新开一个Windows窗口,而是新建立一个标签(就象IE和Maxthon的区别一样)。此外,SecureCRT除了传统的图形化界面之处,还支持命令行参数功能,就是这一项和VBS脚本结合,才实现我要说的主题。
   在Dynagen的命令行输入telnet R1(当然R1这个设备得存在),是开启windows的Telnet还是Putty或是SecureCRT,是由一个配置文件dynagen.ini 决定的,这个文件存在于dynagen安装好的目录中(当然,绿色版本另当别论,自己找一找吧),用文本文件编辑器打开,找到这些行:
#telnet = start telnet %h %p 
#telnet = start putty.exe -telnet %h %p
telnet = start secureCRT.exe /T /telnet %h %p
注:#是注释的意思
    如果想用Win自己带的Telnet,用第一行,如果想用putty,用第二行(要确保putty在系统路径中),想用SecureCRT,就用第三行(我就是这么用的)。这里需要说明一下参数的意思:secureCRT.exe就是安装好SecureCRT后的可执行程序,当然,你要确保它在系统路径中(什么意思?晕,把你安装好的路径,如:C:\Program Files\SecureCRT,追加到系统的path变量上,方法很多,这里超出范围,不再赘述)。/T是一个secureCRT的参数,意思是新开一个标签,注意,这个参数只有SecureCRT 5.2及以后版本才有,其它版本没有。/telnet的意思是走Telnet协议,%h是要telnet到的主机,%是要telnet的主机的端口。
    做到这里,你只能在Dynagen的命令行输入telnet R1时,开启SecureCRT或是新开一个标签来连接R1,些时,每个设备的标签都是相同的,这就没有意义了,想要找某个设备,还是比较困难,怎么办?我找遍了SecureCRT的命令参考,也没有找到好办法,后来觉得还是用VBS比较好。下面是一个脚本,主要是用来解决每个设备一个标签名字的问题,顺便解决了连接路由器需要敲无数回车或是输入“No”等一系列我认为必须设备的路由器命令。下面先看一下,再做解释(文件名为DyCRT.vbs,当然,你也可以自己命名):

#$language = "VBScript"
#$interface = "1.0"
Option Explicit
Function mysubstring(srcString,bChar,eChar)
  Dim fIndex,sIndex  
  fIndex=InStr(srcString,bChar)
   sIndex=InStrRev(srcString,eChar)
   mysubstring=Mid(srcString,fIndex+1,sIndex-fIndex-1)   
End Function
'用来得到一个时间字符串,该字符串用来设置路由器的时间和日期
Function ciscoDate()
   dim   em, y,m,d,h
   Dim nowDate
   nowDate=Now()
  em=Array("January","February","March","April","May","June","July","August","September","October","November","December")
   y=Year(nowDate)  
   m=em(Month(nowDate)-1)
   d=Day(nowDate)  
   h=Time()
  ciscoDate=h & " " & m & " " & d & " " & y
  
End Function
Sub main
   On Error Resume Next
   
   crt.Screen.Synchronous = True
   crt.Screen.WaitForString "Console port"
   crt.Screen.Send  VbCr
   
   '得到第一行显示文本,主要从中提取设备名称
   Dim firstLine
   '用来存储标签的标题,也就是设备的名称
   Dim tabTitle
   firstLine=crt.Screen.Get2(1,1,1,100) '得到第一行文本
   tabTitle=mysubstring(firstLine,"""","""") '调用方法取两个双引号之间的文本
   crt.Window.Caption= tabTitle
   
   'Dim result
   'result = crt.screen.WaitForStrings("'yes' or 'no'", "[yes/no]:", "RETURN")
   'If result = 1 Then
   '  crt.Screen.Send VbCr
   'ElseIf result = 2 Then
   '  crt.Screen.Send "no" & VbCr
   'ElseIf result = 3 Then
   '  crt.Screen.Send VbCr   
   'Else
   ' crt.Screen.Send VbCr
   'End If
   If crt.Screen.WaitForString("[yes/no]") Then    
     crt.Screen.Send "no" & VbCr
   End If
   crt.Screen.Send VbCr &VbCr
   crt.Screen.WaitForString "Router>"   
   crt.Screen.Send  "enable" & VbCr
   crt.Screen.Send "conf terminal" & VbCr
   crt.Screen.Send "no ip domain-lookup " & VbCr
   crt.Screen.Send "hostname " & tabTitle & VbCr
   crt.Screen.Send "line con 0" & VbCr   
   crt.Screen.Send "exec-timeout 0 0" & VbCr   
   crt.Screen.Send "logging synchronous" & VbCr      
   crt.Screen.Send "end" & VbCr
   
  crt.Screen.Send "clock set " & ciscoDate() & VbCr  
   crt.Screen.Synchronous = False
  
End Sub


这个脚本的意思,我在程序中都注释了,总体意思是给标签更名为设备的名称,并在设备起来后,设备几个常见的路由命令,如:不需要域名查找,永不超时,没有恼人的提示信息的不换行干扰(也就是自动换行吧,防止提示信息干扰),如果你不需要这些,用'注释到这些行,或者删除。

脚本弄好了,要想它正常工作,有两个办法,一个是纯命令行方法,就是在dynagen.ini文件中的:
telnet = start secureCRT.exe /T /telnet %h %p改为telnet = start secureCRT.exe /T  /SCRIPT DyRouter.vbs  /telnet %h %p,当然,要确保系统能找到DyCRT.vbs,最好用绝对路径指明DyRouter.vbs 脚本所在位置。
第二种方法( 推荐此种方法),打开SecureCRT的界面,找到菜单Options->Global Options,弹出如下界面:
按序设置好就OK了,现在,开启你的Dynamips,点击net文件,输入telnet /all,就会看到如下界面:
其中绿色标签表示当然活动窗口,从中可以看到已经从脚本中输入了一些命令。
下面是用第二种方法的配置过程:
 
 
 
 
   
 

你可能感兴趣的:(windows,session,ssh,脚本,Terminal,路由器)