作为网络工程师,连接网络设备进行状态查询和配置可以说是基本功,而连接设备的方式我们通常分为两类:
1. 带外管理:指的是不通过网络,直接连接设备的console接口进行调试
2. 带内管理:指的是通过网络远程Telnet、SSH等方式登录设备进行调试
而不管是带内管理还是带外管理,我们都会使用一些终端配置软件,由于每个人的工作场景不同,可能有不同的需求,而且类似的软件市面上非常多,本文仅介绍两款小编自用的两款软件,如您使用的软件不是这两款,欢迎留言
二、PuTTYPuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植至Mac OS X上。除了官方版本外,有许多第三方的团体或个人将PuTTY移植到其他平台上,像是以Symbian为基础的移动电话。PuTTY为一开放源代码软件,主要由Simon Tatham维护,使用MIT licence授权。随着Linux在服务器端应用的普及,Linux系统管理越来越依赖于远程。在各种远程登录工具中,Putty是出色的工具之一。Putty是一个免费的、Windows x86平台下的Telnet、SSH和rlogin客户端,但是功能丝毫不逊色于商业的Telnet类工具。
由于代码开源,故网上有中文界面的版本可供下载,但安全性不保证
在PuTTY官网可下载安装包,也可以直接下载免安装版,体积小巧,适合放在U盘等移动存储中
除了PuTTY之外,还有一些衍生软件也是挺不错的,比如:
pscp.exe | |
| 命令行下的SFTP客户端,可以用于文件的上传与下载,也支持FTP等其他协议 |
| 仅支持Telnet的PuTTY客户端(说是这么说,其实除了移除了对SSH协议的支持之外,其他功能和PuTTY没有什么区别) |
| 可以理解为命令行下的PuTTY,没有图形界面的PuTTY |
| |
| |
上面这些小工具在实现一些自动化任务时非常有用,而且使用起来一点也不难,只要简单看一下帮助即可快速上手,例如EVE-NG的抓包功能就是利用plink连接到EVE的
@ECHO OFFSET USERNAME="root"SET PASSWORD="eve" SET S=%1SET S=%S:capture://=%FOR /f "tokens=1,2 delims=/ " %%a IN ("%S%") DO SET HOST=%%a&SET INT=%%bIF "%INT%" == "pnet0" SET FILTER=" not port 22" ECHO "Connecting to %USERNAME%@%HOST%..." "C:\Program Files\EVE-NG\plink.exe" -ssh -pw %PASSWORD% %USERNAME%@%HOST% "tcpdump -U -i %INT% -s 0 -w -%FILTER%" | "C:\Program Files\Wireshark\Wireshark.exe" -k -i -
PuTTY本身不支持标签化,每个会话都是一个独立的窗口,如果需要一次性调试多台设备可能不是很方便,可以尝试一下MTPuTTY或者SuperPuTTY这两款小工具,可以实现PuTTY的标签化管理及一些高级设置
比较遗憾的是PuTTY目前没有Mac OS的版本,所以Mac OS下还是推荐使用SecureCRT
三、SecureCRTSecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内含的VCP命令行程序可以进行加密文件的传输。有流行CRTTelnet客户机的所有特点,包括:自动注册、对不同主机保持不同的特性、打印功能、颜色设置、可变屏幕尺寸、用户定义的键位图和优良的VT100,VT102,VT220和ANSI竞争.能从命令行中运行或从浏览器中运行.其它特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等.SecureCRT的SSH协议支持DES,3DES和RC4密码和密码与RSA鉴别。
SecureCRT是收费软件,而且价格不菲,不是土豪的话个人用户很少有自己掏钱购买正版,当然,在我大天朝肯定是能找到对应的和谐版本的,甚至是汉化免安装版本
毕竟是收费软件,其本身有一些功能还是挺强大的,比如:
命令窗口:可以将命令发往所有已连接的会话,如果是一次性需要调试一堆设备,而正好需要执行的命令都相同的话,就不需要一台台得去刷了(比如设备到货后的批量升级IOS、查询所有设备的状态等)
按钮功能:如果有高频使用的操作,可以预先编写好VBS、Python等脚本,需要使用的时候直接按一下对应的按钮就行,非常银杏
比如下面这两个我自己经常使用的脚本,第一个用于设备初次开机时刷入基本命令及设置hostname,第二个用于删除设备配置恢复默认配置
#$Language = "VBScript"#$Interface = "1.0"crt.Screen.Synchronous = TrueSub Main() Name = crt.Window.Caption a=Mid(name, 1, 10) crt.Screen.Send chr(13) & chr(13) & chr(13) crt.Screen.Send "no" & chr(13) & chr(13) & chr(13) crt.Screen.Send "enable" & chr(13) crt.Screen.Send "configure terminal" & chr(13) crt.Screen.Send "hostname " & a & chr(13) crt.Screen.Send "no ip domain lookup" & chr(13) crt.Screen.Send "line con 0" & chr(13) crt.Screen.Send "exec-timeout 0 0" & chr(13) crt.Screen.Send "privilege level 15" & chr(13) crt.Screen.Send "end" & chr(13) crt.Screen.Send "wr" & chr(13) End Sub#$Language = "VBScript"#$Interface = "1.0"crt.Screen.Synchronous = TrueSub Main() crt.Screen.Send "en" & chr(13) & "end" & chr(13) & chr(13) & chr(13) crt.Screen.Send "conf t" & chr(13) & "system mtu 1500" & chr(13) & "end" & chr(13) crt.Screen.Send "erase startup-config" & chr(13) & chr(13) & chr(13) crt.Screen.Send "delete flash:vlan.dat" & chr(13) & chr(13) & chr(13) crt.Screen.Send "reload" & chr(13) & chr(13) & chr(13) & "n" & chr(13) & chr(13) & chr(13)End Sub
透明窗体:可以将软件半透明,很多同学对这个功能也是非常喜欢,对着比较陌生的拓扑进行配置时,半透明化的窗口可以减少切换窗口的次数,或者扭头看另一个显示器的次数,非常银杏
彩色标识:可以对命令回显根据关键字进行彩色显示,看上去非常骚气
firewall功能:这个功能可以实现跳板,先创建一个A会话,再创建B会话时,firewall选择A会话,此时,每次连接B会话时,都会使用A会话进行跳转