Linux操作系统下利用SSH进行远程控制( 二 )


打开选单:Edit→Settings→Globe settings→User keys→Generate New keypairs,按照提示会自动产生新的密钥及公钥对 。
最后,将客户机产生的公钥复制到服务端的主机上用户的目录中(在UNIX下应为/home/usrname/.ssh2目录中) 。不同的版本的SSH对公钥及密钥的文件名有特定的要求,具体情况请阅读软件包中的安装说明 。
启动SSH服务器
在UNIX/Linux环境下,服务器程序放置在/usr/local/sbin目录下,启动方法如下:
# sshd
# ps x
可以看到SSHD已经启动了 。如果不希望每次重启动系统,都要手工运行启动SSHD,则可以自己写一个脚本,放置在init.d目录下,让系统启动后,自动执行SSHD服务的启动工作 。或者直接在rc.local中加入一行/usr/local/sbin/sshd也可 。Windows NT/2000/下启动SSH2 Server,运行程序组中的start SSH2 Server即可 。
使用SSH
客户端在UNIX/Linux系统中就是SSH,存放在/usr/local/bin目录下 。其中有SSH1、SSH2、scp等客户端工具,使用SSH登录远程主机方法如下:
host.ip.of.remote
如同使用Telnet一样,不同之处是要求用户输入认证字串,如果认证字串通过了认证,则用户直接登录成功;如果不成功,则是要求用户输入系统口令 。口令认证成功后,用户也可以成功登录系统 。从使用上看,与Telnet没有什么不同之处 。而且有了SSH客户端软件,如果你要上传文件,不必向以前一样再开一个FTP窗口,再次认证,然后上传文件 。使用SSH客户端自带的scp工具,就可以直接将文件上传到远端服务器上 。使用方法如下:
host1:dir/filename host2:/home/abc/filename
在Windows系统中,可供使用的SSH客户端有:SecurCRT,也即CRT的支持SSH的版本(下载地址: //www.vandyke.com/),这是一个很好的支持SSH的远程终端,它同时支持SSH1及SSH2 。用户可以根据服务器端自由选择,让它支持相应的标准 。
另一个可供选择的是ssh.com提供的客户端,下载地址:ftp://ftp.ssh.com/pub/ssh/SSHWin-2.4.0-pl2.exe,这是新版本的SSH2客户端 。
另外,还有支持SSH的FTP客户端工具,其中sshwin-2.4中就有一个SSH Secure File Transfer Client,它可以用来在两个主机之间传输加密后的文件 。也即scp的功能 。配合SecureCRT的也有一个相应的支持SSH的FTP工具,其名称为: SecureFX,可以从www.vandyke.com/下载使用 。
由于种种原因,一些支持SSH的GUI客户端不一定会很好地支持以上各个服务器,大家可以自行组合以上工具,找到适合自己的工具 。一般来说,在 UNIX下的客户端对各种服务器的支持是最好的 。通常在选择服务器及客户端软件时,最好选择同一软件商的产品,这样不会出现不兼容的问题 。
需要补充的是,如果你既想使用SSH2又不想付费,那么一个可供选择的自由软件是Openssh,它是一个遵守GPL协议的软件包,同时支持SSH1 及SSH2标准,是另一个被广泛使用的SSH软件包(可以从www.openssh.com下载) 。Openssh的最新版本为Openssh- 2.5.1,提供全部源码 。不过,在编译前,应仔细阅读其说明文件 。编译过程中要用到zlib及openssl两个软件包,用户首先需要下载并安装它们,之后再编译openssh 。具体过程请阅读软件包中的install文件 。

推荐阅读