搜索
您的当前位置:首页SSH客户端访问

SSH客户端访问

来源:小侦探旅游网
张勤

1.1 SSH客户端访问

1.1.1 Linux平台

在Linux平台访问SSH服务器主要通过以下几个命令完成。 1. ssh命令是Linux平台连接到SSH服务器最常用的命令。 (1)ssh命令参数。 ssh [-CfLRv] [用户名@] SSH服务器 [命令] 参数:

 SSH服务器:指定需要连接的SSH服务器,可以使用FQDN或IP地址。

 用户名@:指定连接SSH服务器的用户名,不指定用户名时默认以root用户连接。  命令:使用ssh命令可以连接到SSH服务器,但有时只需要在SSH服务器上执行一个命令时,可直接通过此参数指定需要执行的命令。  -C:启用压缩功能。

 -f:在询问密码之后且在执行[命令]之前,将ssh转到后台运行。  -L:将本地系统中的某个端口转发到远程系统。  -R:将远程系统上的某个端口转发到本地客户端。

 -v:显示与连接和传送有关的调试信息。如果命令运行不太正常的话,这个选项就会非

常有用。

(2)ssh命令使用实例。

 在下面的例子中将使用root作为用户名连接到IP地址为192.168.0.10的

SSH服务器,如图 1所示。

ssh 192.168.0.10

图 1 ssh

其中各行含义如下。

①:通过ssh命令连接远程计算机,未输入用户名则默认使用root用户。

②:如果是第一次连接到远程计算机,由于本地主机的用户需要生成连接远程主机的RSA公钥,所以出现警告提示此处输入yes,OpenSSH会将这台计算机识别标记加入~/.ssh/know_hosts文件中,第二次连接时就不会出现警告。

③:输入远程计算机root用户密码。

④:已成功连接到远程计算机,此时输入的所有命令将在远程计算机中执行,可通过exit命令退出。

 在下面的例子中将使用root作为用户名连接到IP地址为192.168.0.10的

SSH服务器只执行ifconfig命令(如图 2所示)。在本例中并没有向上一个

1 / 9 http://onlyzq.cublog.cn

张勤

例子直接连接到远程计算机,而是只是在远程计算机上执行了ifconfig命令后将结果在本地主机显示。

图 2 ssh

2. scp命令可以使用SSH的方式在远程主机和本地主机之间复制文件或目录。 (1)scp命令参数。 scp [-Cpqrv] [[用户名@]复制源主机:]复制源文件[[用户名@]复制目标主机:][复制目标文件] 说明:“复制源主机”和“复制目标主机”为两个系统名称,分别表示文件复制操作的源和目的地,可以使用FQDN或IP地址。当未指定时,默认为本地主机。用户名都默认为本地主机上正在输入该命令的用户,可以用“用户名@”来指定不同的用户。如果没有指定复制目标文件,那么scp将把文件复制到指定目标主机用户的家目录。 参数:

 -C:启用压缩功能。

 -p:保留原文件的修改时间、访问时间以及模式。  -q:不要显示复制进度信息。  -r:递归复制。

 -v:显示与连接和传送有关的调试信息。如果命令运行不太正常的话,这个选项就会非

常有用。

(2)scp命令使用实例。

 在下面的例子中将使用root作为用户名将IP地址为192.168.0.10的SSH服

务器上/etc/目录的所有内容复制到本地主机/test目录,如图 3所示。

scp -pr 192.168.0.1:/etc /test

2 / 9 http://onlyzq.cublog.cn

张勤

图 3 scp

 在下面的例子中将使用root作为用户名将本地主机/etc目录所有内容复制

到IP地址为192.168.0.10的SSH服务器上/test目录,如图 4所示。

scp -pr /etc 192.168.0.10:/test

图 4 scp

3. sftp命令可以代替Linux平台的ftp命令,提供一种安全的连接FTP服务器的方式。

该命令使用方法与ftp命令相同,下面的例子中使用sftp连接到IP地址为192.168.0.10的FTP服务器,如图 5所示。 sftp 192.168.0.10

3 / 9 http://onlyzq.cublog.cn

张勤

图 5 sftp

4. 通过密钥方式远程登录。

在使用ssh连接到远程主机时每次需要输入远程主机的密码,如有多台服务器需要通过ssh进行管理时这样可能比较麻烦。这时可以通过使用密钥文件的方式,先在本机生成一对密钥文件,再将公钥文件复制到远程主机,这样当私钥文件所在主机连接远程主机时就不需要输入密码。使用密钥文件的配置方法如下(本章中配置方法是使用本地主机连接IP地址为192.168.0.10的远程主机)。

(1)使用如下命令生成密钥对文件,如图 6所示。

ssh-keygen

图 6 ssh-keygen

其中各行含义如下。

①:输入私钥文件的名称,直接回车使用默认名称(如果有多台需要连接的SSH服务器时,需要定义不同的文件名)。

②:输入私钥文件密码。

③:完成后在用户家目录.ssh中会自动生成密钥对文件,id_rsa为私钥文件,id_rsa.pub为公钥文件。

(2)使用如下命令将公钥复制到远程主机,如图 7所示。 ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.0.10

图 7 ssh-copy-id

其中各行含义如下。

①:输入远程计算机root用户密码。

②:公钥文件被复制到远程计算机后,会自动更名为authorized_keys,并复制到ssh-copy-id命令指定用户家目录中,在本章指定的是root用户。

4 / 9 http://onlyzq.cublog.cn

张勤

在上述配置完成后,使用ssh命令连接到远程主机时(如图 8所示),提示输入的密码就不是用户的密码,而是在生成密钥对时设置的密码(如图 6所示内容中②设置的密码)。

图 8 ssh

可以通过以下命令启用ssh代理功能,在启用代理后连接到远程主机时不需要输入任何密码。在输入第二个命令时会要求输入生成密钥对时设置的密码,如图 9所示。 ssh-agent bash ssh-add

图 9 ssh-agent、ssh-add

1.1.2 Windows平台

一般在Windows平台都是使用PuTTY(PuTTY官方网站:

http://www.chiark.greenend.org.uk/~sgtatham/putty/)连接到SSH服务器。PuTTY是一个开源软件,主要由Simon Tatham维护,使用MIT licence。PuTTY可以作为Telnet、SSH等的客户端连接软件,较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植至Mac OS X上。除了官方版本外,有许多非官方的团体或个人将PuTTY移植到其他平台上,比如使用Symbian的智能手机。PuTTY的Windows版本是一个绿色软件,下载(下载地址:http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe)后不需要安装即可使用。

打开PuTTY后输入需要连接的远程主机的IP地址或FQDN后,单击“Open”(如图 10所示)。如果是经常访问的服务器可以在“Saved Sessions”为当前服务器起个名称文件以后使用。

5 / 9 http://onlyzq.cublog.cn

张勤

图 10 PuTTY连接服务器

由于本地主机的用户需要生成连接远程主机的RSA公钥,所以在第一次连接远程主机时会出现警告提示此处选择“是”(如图 11所示)。在输入用户名及密码后即可使用SSH登录到远程主机,如图 12所示。

图 11 PuTTY警告提示

图 12 PuTTY连接成功

除了可以使用输入用户名和密码的方式连接到远程主机,PuTTY也可使用密钥对的方式登录SSH服务器。该方式配置方法如下。

(1)下载(下载地址:http://the.earth.li/~sgtatham/putty/0.60/x86/puttygen.exe)密钥

对生成工具PuTTYgen。

(2)运行PuTTYgen,单击“Generate”生成密钥对,在生成密钥对的过程中可以

在图 13所示内容①所在区域在移动数据,以使PuTTYgen可以获得更多的随机数据。

6 / 9 http://onlyzq.cublog.cn

张勤

图 13 PuTTYgen生成密钥对

(3)在图 14所示内容①是生成的公钥,可根据需要修改公钥的注释(在②处)。

设置私钥密码(在③、④处)后,单击“Save private key”保存私钥(该私钥文件应保存在一个安全的地点,比如U盘)。

图 14 保存密钥

(4)将图 14所示内容①处的公钥内容复制到远程主机对应用户家目录

下.ssh/authorized_keys文件中,比如使用root用户连接到远程主机,就将公钥内容复制到远程主机/root/.ssh/authorized_keys文件中(可使用PuTTY连接到远程主机后,使用vim打开authorized_keys文件后复制内容)。

(5)打开PuTTY,输入远程主机的IP地址或FQDN(如图 10所示)后,在

“Connection”→“Data”中输入连接远程主机的用户名(这里输入用户名是为了让PuTTY知道在哪个用户的家目录中读取公钥,这里需要输入上一步中保存公钥的用户名,如图 15所示), 在“Connection”→“SSH” →“Auth”中选择私钥文件并勾选“Allow agent forwarding”,如图 16所示内容。

7 / 9 http://onlyzq.cublog.cn

张勤

图 16 选择私钥文件 图 15 输入用户

(6)单击“Open”连接选择主机后应输入私钥文件的密码,而不是远程主机用户

的密码,如图 17所示内容。

图 17 输入私钥密码

图 18 保存会话

通过Pageant(下载地址:http://the.earth.li/~sgtatham/putty/0.60/x86/pageant.exe)可以在通过PuTTY访问远程主机时不输入私钥密码直接登录,该工具配置方法如下。

(1)打开PuTTY后输入远程主机IP地址或主机名、在“Connection”→“Data”

中输入连接远程主机的用户名、在“Connection”→“SSH”→“Auth”中选择

私钥文件并勾选“Allow agent forwarding”后,为该主机起一个会话名称后,单击“Save”,如图 18所示。

(2)双击打开“pageant.exe”后,在“系统托盘”处会显示pageant.exe图标,单击

选择“Add Key”(如图 19所示),选择私钥文件后输入私钥密码,如图 20所示内容。

8 / 9 http://onlyzq.cublog.cn

张勤

图 20 输入私钥密码

图 19 导入私钥

(3)单击pageant.exe图标选择“Saved Sessions”中对应会话名称(如图 21所示内

容)后即可在不输入任何密码的情况下连接到远程主机。

图 21 选择会话

9 / 9 http://onlyzq.cublog.cn

因篇幅问题不能全部显示,请点此查看更多更全内容

Top