SSH,即Secure Shell,它是一种加密的网络传输协议,由IETF的网络工作小组制定,专为远程登录会话和其他网络服务提供安全性的协议。传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。而且,这些服务程序的安全验证方式也是有其弱点的, 就是很容易受到“中间人”(man-in-the-middle)这种方式的攻击。所谓“中间人”的攻击方式, 就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。 服务器和你之间的数据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。 通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、PoP、甚至为PPP提供一个安全的"通道"。
作为一个想要在Windows操作系统下开发嵌入式系统的用户,如果想要连接Linux服务器来进行文件之间的传送,那么需要一个Secure Shell软件(由于SSH采用客户端与服务端的架构设计,故一般使用ssh客户端来登录ssh的服务端),下面介绍几种可以连接SSH服务器的客户端,提供给大家进行应用选择参考,主要包括:Putty,SecureCRT,VMware(Ubuntu),XShell,Bitvise,MobaXterm,SmarTTY,CYGwin等,如下图所示。
在进行登录前,做如下假定:
1)SSH服务器指定为NanoPi2烧写镜像文件的系统
2)SSH的IP地址为:192.168.8.1;用户名为root;登录密码为fa
3)在登录过程中,需要用户验证或确信是否登录,在此默认是,故不再贴图,
4)登录后,使用ls命令输出信息,证明已正确登录
1 Putty
Putty是最有名的SSH和telnet客户端,由Simon Tatham为Windows平台开发。Putty是一款开源软件,提供可用的源代码并有一批志愿者进行开发和支持。Putty易于安装和使用,通常大部分的配置选项不需要修改。用户只需要输入少量基本的参数,就可以开始很简单地建立连接会话。
2 SecrueCRT
它是一款收费的商业软件,但也是应用最广的软件,最常用的是用其登录串口,来调试或控制嵌入式开发。它支持Windows,Mac,Linux等主流操作系统,提供安全的远程访问,文件传输,数据服务等。
3 Ubuntu
SSH分客户端openssh-client和openssh-server
1)在Ubuntu下,默认已经安装了SSH的客户端,如果没有,则执行命令进行安装
sudo apt-get install openssh-client
2)如果要使本机开放SSH服务,则执行如下命令
sudo apt-get install openssh-server
3)在Ubuntu下常用的命令:
sudo /etc/init.d/ssh start 启动 sudo /etc/init.d/ssh stop 停止 sudo /etc/init.d/ssh restart 重启 ps -e |grep ssh 查看状态 ssh servername@serverip 登录
4)登录
4 XShell
Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, SFTP, TELNET, RLOGIN , SERIAL 以及Microsoft Windows 平 台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。它对家庭和学校是免费的,下载时需要填一个表格并通过邮箱提供下载连接。
即登录到ssh服务器上,也即Nanopi2上。
5 Bitvise SSH Client
Bitvise SSH是一款支持SSH和SFTP的Windows客户端。由Bitvise开发和提供专业支持。这款软件工具性能突出,易于安装、便于使用。Bitvise SSH客户端拥有功能丰富的图形界面,通过自动重连功能的内置代理进行动态端口转发。据了解,Bitvise SSH客户端对个人用户使用是免费的,同时对于在内部的个人商业使用同样免费。
点击Bitvise SSH客户端,弹出如下登录界面,输入必须的登录信息:IP地址,用户名和密码。
Bitvise SSH客户端与上面3个客户端不同的是,点击登录后,会同时弹出两个对话框,其中一个是命令行,用来操作或控制SSH服务器的,另一个是支持SFTP协议的,用来在Window下进行对SSH服务器的控制,如上传文件,下载程序等。
6 MobaXterm
MobaXterm是远程计算的终极工具箱。在 单独一个Windows应用里,MobaXterm为程序员、网站管理员、IT管理员及其它用户提供了远程操作一揽子功能。另外,MobaXterm提供了所有重要的远程网络工具(如SSH、X11、RDP、VNC、FTP、MOSH等),以及Windows 桌面上的Unix命令(bash、ls、cat、sed、grep、awk、rsync等),这些均是由一个开箱即用的单一的便携可执行文件提供,并对个人使用免费。准确地说,它分为免费版收费版和绿色版安装版。
点击 MobaXterm,弹出其操作界面,由下图可知,该软件功能非常强大,点击新建会话按钮后,弹出一对话框,该对话框显示了 MobaXterm支持的所有登录协议,在此选择SSH,并赶写必要的登录信息:IP,用户名和密码。
登录后如下图所示,它支持SFTP协议,即可在Window下,对SSH服务器的文件进行操作,非常方便,除此之外,在左下面还包括其他功能,在此不再赘述。
7 DameWare SSH
DameWare SSH是最好的免费SSH客户端。该免费工具是一个终端模拟器,可以从一个易用的控制台建立多个telnet和SSH连接。用一个带标签的控制台界面管理多个会话;将常用的会话保存在 Windows 文件系统中;使用多套保存的证书来轻松登录不同的设备;使用telnet、SSH1和SSH2协议连接计算机和设备。这个没有安装成功,准确地说,安装后点击没有反应,还望高手指教。
8 SmarTTY
SmarTTY是一款免费的多标签SSH客户端,支持使用SCP命令随时复制文件和目录。SSH服务器每个连接支持最多10个子会话.SmarTTY在做得最好:没有多个窗口,不需要重新登录,仅打开一个新的标签页就可以。它包括两个版本,即绿色版与安装版,使用方便。
打开SmarTTY,点击新建SSH连接,弹出一输入对话框,输入必要的ip地址,用户名和密码。
点击连接后,即登录到ssh服务器上,也即Nanopi2上。另外可以通过scp,将window下的文件,传输到ssh服务器上。
9 Cygwin
Cygwin 是一款GNU和开源工具的集合,提供类似一个Windows平台下Linux的功能.Cygwin包括一个称为模拟库的Unix系统:cygwin.dll,集成大量GNU和其它免费软件。在安装包中,有高质量的编译器和其他软件开发工具、一个X11服务器、一套完整的X11开发套件、GNU emacs编辑器、Tex和LaTeX、openSSH(客户端和服务器),此外还包括在Windows下需要编译和使用PhysioToolkit软件的所有。
打开Cygwin,像在Ubuntu下的操作一样,输入登录命令,然后输入登录密码,即可登录到ssh服务器上,也即Nanopi2上。
总结:
1)从应用流行度来说,应该是Ubuntu,putty,Xshell和CygWin居在首位
2)从开源角度来说,应该是putty居在首位。
3)可以将以上SSH客户端工具,分为两类:一类为命令行式,即登录后,像类似linux终端一样,在Window下操作,一类是图形界面式(包括命令行),即还可以进行在Window下,进行文件的拖曳等。
4)通过以上工具介绍,哪一款SSH客户端值得你尝试,可以根据需求和喜好来选择。如果有另外的SSH客户端列举,可以进一步留言补充。
5)以上内容如有不妥,还有指教