关于Windows下的SSH客户端工具,可以有许多选择,从开源免费到商业收费的,零零总总。
免费版: Putty就是最简单的SSH客户端,非常轻量级。 Electerm是一个开源可免费使用的跨平台SSH客户端,同时支持SSH和SFTP。 MobaXterm也是一个不错的选择,分为免费版和商业收费版,同时集成了SSH和SFTP等功能。 Termius是一个跨平台支持的SSH客户端,基础免费版只支持SSH功能。
商业收费版: Xshell功能丰富,可以集成xftp实现文件上传。 SecureCRT功能丰富,支持多平台。
通常来讲,商业收费版功能会更加丰富,易用性也更好,但是也很有痛点:价格昂贵。如果公司能提供付费版使用,那最好不过。免费版大多都是一些开源软件,功能相对单一,集成度也不够友好。例如:Putty安装包虽然同时提供了putty.exe
,psftp.exe
,pscp.exe
等工具,但是并没有将他们集成在一起,比如我在使用putty.exe
的时候就只能使用到SSH客户端的功能,并没有在putty.exe
的操作界面中集成可以使用pscp.exe
进行文件上传的功能,这样使用起来就很分散。当然,关于这一点“不足”,另一个基于Putty的工具Kitty就做了弥补。
总之,如果我对于SSH客户端的需求是这样的: 1.支持SSH登录远程主机(这是最核心的需求) 2.支持同时管理多个SSH会话 3.支持文件上传,只需要在SSH会话的操作界面就能唤起上传文件的操作界面 4.支持对SSH会话做一些主题设置,比如:字体,背景色,光标样式等 5.支持在SSH会话的命令行界面输入中文(比如有时候需要使用grep命令查看日志文件中的中文信息)
就目前看来,能同时满足上述4点需求的免费SSH客户端几乎没有(也可能是我没有找到)。 Putty只能满足1,4,5。 Electerm已经是一个非常不错的选择了,但是也只能满足1,2,3,并不支持自定义主题,也不支持在SSH会话的命令行界面输入中文。
虽然没有一款软件能同时满足这些需求,那是否可以将多款软件进行集成来达到目的呢?
答案是肯定的,先上一张基于MTPUTTY Kitty WinSCP
搭建的完全能满足上述5点需求的免费SSH客户端截图。
如下是关于如何使用MTPUTTY Kitty WinSCP
搭建一个能同时满足上述5点需求的SSH客户端详细实现步骤。
关于这几款软件的集成需要明确如下几点: 第一,Kitty本身就就满足1,4,5,并且Kitty默认就支持集成WinSCP实现文件上传。 第二,在Kitty中集成WinSCP可以满足3。 第三,在MTPUTTY中使用Kitty就可以满足2。
如此一来,只要将这些软件进行集成就可以达到目的。
步骤1:下载并安装Kitty,注意一定要下载名称为kitty-bin-${version}.zip
的整合包,同时包含了其他一些工具。
步骤2:下载WinSCP的非安装版本WinSCP-${version}-Portable.zip
,解压之后将其中的WinSCP.com
和WinSCP.exe
拷贝到Kitty的安装目录,这就完成了Kitty与WinSCP的集成。
如下是在Kitty集成WinSCP后的目录文件列表:
而且集成WinSCP之后在Kitty打开的SSH会话界面中单击鼠标右键,在弹出菜单中就可以看到Start WinSCP
的菜单项可以使用了。
步骤3:下载并安装MTPUTTY,然后一次打开如下设置路径:【Tools】->【Putty location...】,在弹出的Putty路径设置对话框中指定Kitty的可执行程序位置即可,如下图所示:
至此,一个支持多会话标签页管理,支持会话主题设置,支持文件上传,支持在命令行中输入中文,而且完全免费的多功能SSH客户端就诞生了。
【参考】 https://www.mingilin.com/2019/12/26/windows/windows-kitty-winscp-mtputty/ 使用kitty/putty,winscp,mtputty搭建安全免费的ssh客户端