SSH服务如何远程管理RHEL 5

Linux提供了多种方式让用户进行远程管理,如Telnet,它的基本应用就是提供远程管理,共享远程系统中的资源。Telnet使用户坐在自己的电脑前通过网络进入另一台电脑,并把用户输入的每个字符传递给主机。再将主机输出的每个信息回显在屏幕上,这样的连接可以发生在同一个房间,也可以发生在地球的两端。但Telnet服务在本质上是不安全的,原因在于在Telnet整个通信过程中采用明文传送数据,在当今的网络环境下这样的操作如果发现在Internet上无异于自杀。

  SSH(Secure Shell)则不同,它是以远程联机服务方式操作服务器时的较为安全的解决方案,最初由芬兰一家公司开发完成,但由于版权等相关问题,目前大多使用OpenSSH来代替。它可以将所有传输的数据进行加密,这样“中间人”功能方法就不太可能成功。而且SSH在传输数据的过程中会对数据进行压缩,这样也可以加快数据的传输速度。总之SSH的功能很好、很强大,正在逐渐取代Telnet,成为远程登录主要选择。

  SSH同Telnet相同采用客户机/服务器的工作方式。目前主要有二个互不兼容的版本,分别是1.x及2.x。而OpenSSH 2.x同时支持1.x及2.x。

  下面将以RHEL 5为例讲述SSH服务在远程登录中的应用:

  在RHEL 5中默认情况下已经安装并已开启SSH,但在使用前最好还是检查进程及端口是否工作正常。

SSH服务如何远程管理RHEL 5

  在实验过程中,将用户将在football.example.zqin上通过SSH远程登录到golf.example.zqin上。在讲述配置过程前先介绍几个在SSH中常用的命令:

  ssh [user@]hostname [command]

  远程连接到指定服务器

  ◆ [user@]:远程计算机的用户名,如不输入表示使用root进行连接

  ◆ [command]:连接成功后直接执行的命令

  scp [user@]host:/path [-rpC]

  文件在ssh客户端与服务器端之间复制

  ◆-r:递归

  ◆ -p:保留原文件权限

  ◆ -C:传输中压缩数据

  rsync srcfile host:/path

  在客户端与服务器间同步文件,这个命令是一次性的,如果需要定时执行,要使用crontab。在同步是只从srcfile到host:/path。

SSH服务如何远程管理RHEL 5

  一、通过SSH远程登录

SSH服务如何远程管理RHEL 5

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

  2:如果是第一次连接到远程计算机,由于OpenSSH不知道该计算机所以出现警告提示此处输入yes,OpenSSH会将这台计算机识别标记加入~/.ssh/know_hosts文件中,第二次连接时就不会出现警告。

  3:输入远程计算机root用户口令。

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

  不知道是OpenSSH有Bug还是其它原因,有时一切配置正常但总无法连接到远程计算机,此时可将客户端~/.ssh里面内容删除后再试。

  二、通过密钥方式远程登录

  在使用ssh连接到远程计算机时每次需要输入远程计算机的密码,如企业中有多台服务器需要通过ssh进行管理时这样可能比较麻烦。可以通过使用密钥文件的方式,先在本机生成一对密钥文件,再将公钥文件复制到远程计算机,只要私钥文件在本机那样连接远程计算机时不需要输入密码。

  当然为了安全,可以在生成密钥对时对私钥文件设置密码,这样连接到远程计算机时输入的密码就是私钥文件的密码,而不是远程计算机的用户密码。为了方便可以将私钥文件的密码保存在当前计算机,这样连接到远程计算机时什么密码都不需要输入,但私钥文件如果复制到其它计算机时还是需要输入私钥文件的密码。具体配置步骤如下:

  ◆ 生成密钥对文件

SSH服务如何远程管理RHEL 5

  1:生成密钥对。

  2:输入私钥文件的名称,直接回车使用默认名称。

  3:输入私钥文件密码。

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

  ◆ 将公钥复制到远程计算机

SSH服务如何远程管理RHEL 5

SSH服务如何远程管理RHEL 5

  1:ssh-cop-id命令会将指定的公钥文件复制到远程计算机。

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

  3:公钥文件被复制到远程计算机后,会自动更名为authorized_keys。

  ◆ 再次连接到服务器

SSH服务如何远程管理RHEL 5

SSH服务如何远程管理RHEL 5

  此处输入的是私钥文件密码,而不是远程计算机root用户的密码。

  ◆ 将私钥文件密码保存到本机

SSH服务如何远程管理RHEL 5

  1:启用代理功能。

  2:保存私钥口令。

  3:输入私钥口令。

  当完成上述步骤后,再次连接到远程计算机时无需输入任何密码。









====================================分割线================================



最新内容请见作者的GitHub页:http://qaseven.github.io/

上一篇:关于diarc系统运维的思考及可行性建议


下一篇:新浪微博开放平台开发-android客户端(3)