第8章远程登录管理使用Telnet使用SSH使用VNC本章小结Telnet是进行远程登录的标准协议和主要方式,它为用户提供了在本地计算机上完成远程主机工作的能力。8.1使用Telnet在Linux系统中,要建立一个到远程主机的对话,只要在系统提示符下输入命令:telnet远程主机名/IP地址8.1.1Telnet简介远程登录过程基本服务类型Telnet定义一个网络虚拟终端为远程系统提供一个标准接口,客户机程序不必详细了解远程的服务器,它们只需构造使用标准接口的程序;Telnet包含了一个允许客户机和服务器协商选项的机制,同时还提供了一组标准选项;Telnet对称处理连接的两端,即不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。命令传输对于发送的数据:客户机软件把来自用户终端的按键和命令序列转换为NVT格式,并发送到服务器,服务器软件收到数据和命令之后,再将其从NVT格式转换为远地机器所需的格式;对于返回的数据:服务器将数据从远地机器的格式转换为NVT格式,而本地客户机将接收到的NVT格式数据再转换为本地的格式。8.1.2Telnet原理安装和启动Telnet通常要安装两个Telnet软件包,其中:telnet:提供Telnet客户端程序;telnet-server:提供Telnet服务器端程序。启动Telnet服务有两种方法:使用setup命令通过xinetd启动8.1.3安装和启动Telnet使用Telnet服务的过程中,可以对其端口、服务等方面进行一些配置:设置Telnet端口Telnet服务限制Telnetroot用户的登入8.1.4配置Telnet使用Telnet登录服务器的命令非常简单,见示例。8.1.5Telnet会话示例传统的网络服务程序,例如Telnet、FTP、POP等在本质上都是不安全的,因为它们在网络上使用明文来传送口令和数据,别有用心的人很容易就可以截获这些口令和数据。SSH软件可以在不安全的网络环境下通过密码机制来保证口令和数据的安全传输。8.2使用SSHSSH的英文全称是SecureSHell。通过使用SSH,用户可以把所有传输的数据进行加密,这样中间人的攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗。另外一个好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP、甚至PPP提供一个安全的通道。SSH协议是建立在应用层和传输层基础上的安全协议,它主要由下面三个部分构成,共同实现SSH的安全机制:传输层协议用户认证协议层连接协议层8.2.1SSH介绍从客户端来看,SSH提供了两种级别的安全验证基于口令的安全验证基于密匙的安全验证8.2.1SSH介绍在RedHatEnterpriseLinux5的安装光盘中已经包含了与OpenSSH相关的软件包,主要包括:openssh-clients-4.3p2-36.el5.i386.rpmopenssh-askpass-4.3p2-36.el5.i386.rpmopenssh-server-4.3p2-36.el5.i386.rpmopenssh-4.3p2-36.el5.i386.rpm8.2.2安装与启动SSHssh[选项]远程主机选项:-llogin_name:指定登入远程主机的账号,如果没加这个选项,则以当前用户的账号登入。-cblowfish|3des:指定加密的密码类型,默认值为3des。-C:对传输的数据进行压缩,压缩的算法与gzip相同,但压缩等级不能控制。-iidentity_file:指定所读取的RSA认证文件,默认设置为用户主目录下的.ssh/identity文件。-pport:指定远程主机的端口号,默认为22。-P:使用非特定的端口对外联机。8.2.3简单测试和使用SSHSSH有两个配置文件:/etc/ssh/sshd_config/etc/ssh/ssh_config8.2.4配置/etc/ssh/sshd_config文件ssh_config文件用来设置SSH客户端的运行方式。8.2.5配置/etc/ssh/ssh_config文件SSH的密钥管理主要包括两个方面:生成公钥/私钥对和公钥的分发。#ssh-keygen8.2.6SSH的密匙管理为了方便用户使用,SSH提供了一个scp命令,用户可以使用该命令进行文件的远程拷贝工作。scp文件用户名@主机名或IP地址8.2.7使用scp远程拷贝文件SSH的加密通道是通过端口转发来实现的。用户可以在本地端口(没有使用过的)和在远程服务器上运行的某个服务的端口之间建立加密通道。所有对本地端口的请求都被SSH加密并且转发到远程服务器的端口。实现端口转发,可以使用下面的命令:ssh–f[远程主机名/IP地址]-L[本地端口]:[远程主机名/IP地址]:[远程端口][命令]8.2.8使用SSH设置加密通道在Linux客户端下使用SSH,优点是操作更方便,无需其它软件;缺点是不太直观。8.2.9配置SSH的客户端在上面介绍SSH的使用过程中,用户每次登录服务器都要输入密码,这对于用户来说未免有些麻烦,由于SSH充分使用了密钥机制,那么就可以通过一定的系统配置,而达到一次配置,以后都不用输入密码,方便登录的目的,下面分别介绍如何配置Linux和Windows客户端的自动登录。8.2.10配置SSH自动登录在主机A上的操作为:#ssh-keygen-trsa#sshroot@192.168.89.1mkdir.ssh;chmod0700.ssh#scp~/.ssh/id_rsa.pubroot@192.168.89.1:.ssh/id_rsa.pub在主机B上的操作为:#touch/root/.ssh/authorized_keys#cat/root/.ssh/id_rsa.pub/root/.ssh/authorized_keys#sshroot@192.168.89.18.2.10配置SSH自动登录VNC(VirtualNetworkComputing)是一套由AT&T实验室开发的远程控制的软件,可以让在本地主机上显示远程主机的桌面环境。8.3使用VNCVNC遵循GPL许可协议,是一个开源而且免费的软件产品,它能够支持UNIX、Linux、Windows、MacOS等多种操作系统。VNC服务的基本流程为:VNC客户端通过浏览器或VNCViewer连接VNCServerVNCServer传送一个对话窗口给客户端,要求输入口令客户端输入口令之后,VNCServer验证客户端是否具有存取权限如果客户端通过VNCServer的验证,则要求VNCServer显示桌面环境VNCServer通过X协议要求XServer将画面显示控制权交由VNCServer负责VNCServer将来自XServer的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNCServer的桌面环境及输入设备8.3.1VNC简介安装和启动VNC通常要安装两个软件包,其中:vnc:提供VNC客户端程序;vnc-server:提供VNC服务器端程序;8.3.2安装和启动VNC要是某个用户使用VNC进行登录,可以按照如下步骤进行配置:修改VNC服务器配置文件初始化VNC用户修改用户VNC配置文件8.3.3配置VNCVNC服务器配置完成之后,就可以进行登录了。#vncviewerIP地址:桌面号8.3.4VNC会话示例8.4本章小结本章主要知识点:Telnet的基本原理Telnet的配置和使用SSH的安全机制SSH的配置和使用VNC的基本原理VNC的配置和使用