项目三:配置与应用远程连接服务
【项目说明】:
作为一个运维人员,需要经常登录Linux服务器查看其是否正常运行,但是,服务器通常不在本地或分散在不同的地理位置,因此需要借助远程控制的方式对这些远程服务器进行管理。在CentOSlinux系统中,一般采用talent、SSH以及VNC服务实现远程控制。本项目的主要目的是实现这些远程服务的配置。
【项目实施】:
任务一:配置Telnet服务;
任务二:配置SSH服务;
任务三:配置VNC服务:
任务一 配置Telnet服务
【任务说明】:
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供在本地计算机上完成远程主机工作的能力。Telnet可以在自己的计算机前通过Internet登录到另一台远程计算机上,当登录上远程计算机后,本地计算机等同于远程计算机的一个终端,我们可以用自己的计算机直接操纵远程计算机,享受远程计算机本地终端同样的操作权限。Telnet的主要用途就是使用远程计算机所拥有的本地计算机没有的信息资源。
【任务实施】:
Telnet因为其安全性较差的特性,而在安装操作系统时不会默认安装,下面完成Telnet的配置。
第一步:挂在光盘
将光盘放入光驱,然后使用【mount /dev/cdrm /mnt】命令挂载光盘到系统中。
第二步:配置YUM源
YUM源解决软件的依赖性问题,所以一般的软件安装采用YUM的方式安装,但在安装之前必须配置好YUM源。
【cd /etc/yum.repos.d/】进入YUM配置目录下
【mkdir /etc/yum.repos.d/bak】建立备份文件夹
【mv /etc/yum.repos.d/Cent* /etc yum.repos.d/bak/】移动原有的配置文件到备份文件夹中
【vim /etc/yum.repos.d/local.repo】(必须是.repo为扩展名)编辑自己的repo文件
local.repo的具体内容如下:
[local _server] #库名称
name=This is a local repo #名称描述
baseur1=file://mnt/ #YUM源地址,光盘的挂载点
enabled=1 #是否启用yum源,0为比启用
gpgcheck=0 #GPG=KEY设置为不检查
编辑完成后按esc键,输入【:wq】保存并退出。
第三步:安装客户端以及服务器端软件
使用如下命令先查询软件是否安装,如果没有安装,则使用【yum】命令安装。
【rpm -q telnet】查询Telnet的客户端软件
【rpm -q telnet-server】查询Telnet的服务端软件如果没有查询到talnet相关软件的安装信息,则需要使用如下命令进行安装。
【yum install -y telnet】安装telnet的客户端软件
【yum install -y telnet-server】安装telnet的服务端软件
完成安装后,再次进行查询,可以看到telnet的相关软件信息。
第四步:修改主配置文件
使用【vim /etc/xintd.d/telnet】命令编辑Telnet的配置文件,找到disable=yes所在行,将其改为disable=no,打开Telnet功能。
(1)设置最大连接数。在disable=no的后一行加上一行:instance=4,表示只允许4个用户同时连接,如下图所示:
(2)在服务器上启用Telnet服务。
【/etc/int.d/xinetd retart】或【service xinetd retart】重启Telnet服务
【chkconfig xinetd on】设置Telnet服务在系统中运行
以user1远程Telnet的主机的效果如下图:
(3)修改连接端口
【vim /etc/services】修改服务器提供的默认端口,把telnet 23/tcp和telnet 23/udp的端口号改为自定义的端口。如下图示:
在服务器上使用【/etc/init.d/xinetd restart】命令重启Telnet服务。
第五步:允许root用户登录
因为Telnet在传输数据时。采用明文的方式,包括用户名和密码,所以数据在传输的过程中很容易被截取或篡改因此系统默认root不可以Telnet到远程的服务器上,而只允许普通用户Telnet到远程的服务器上。如果需要root用户也能远程Telnet到服务器上。则需要使用【mv /etcsecuretty /etc/securetty.bak】命令注释掉/etc/securetty这个文件,使之失效。然后再以root用户远程Telnet到主机,如下图示:
本实验主要使用Xshell进行第三方登录:
第六步:从其他第三方客户端登录
(1使用 PuTTY远程登录。Putty是一个Telnet、SSH、Rlogin、纯TCP以及串行接口连接软件。最早的版本支持Windows平台,在最近的版本开始支持各类UNIX平台,并打算 移植到Mac OS X上。除了官方版本外,有许多第三方的团体或个人将PuTTY移植到其他平台上,像是以Symbian为基础的移动电话。PuTTY为一开放源代码软件主要有Simon tatham维护,使用MIT licence授权。随着Linux在服务器端应用的普及,Linux系统管理越来越依赖于远程。在各种远程登录工具中,PuTTY是出色的工具之一。PuTTY是一个免费的Windows 86 平台下的Telnet、SSH和Rlogin客户端但是其功能丝毫不逊色与商业的Telnet类工具。
需要注意的是,服务器中的Telnet服务默认的端口号是23,如果已经改为188,在使用PuTTY登录时,需要把端口号改为188,如下图示:
(2SecureCRT远程登录。SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单的说,是Windows下登录UNIX或Linux服务器的软件。
使用decureCRT支持SSH,同时支持Telnet和Rlogin协议。SecueCRT是一款用于连接运行包括Windows、UNIX和VMS的理想工具。通过使用内涵的【VCP】命令行程序可以进行加密文件的传输。它有流行CRTTelnet客户机的所有特点,包括自动注册,对不同的主机保持不同的特性,打印功能,颜色设置,可变屏幕大小用户定义的键位图、能从命令行中运行或从浏览器中运行等。其他特点包括文本手稿、易于使用的工具条、用户的键位图编辑器、可定制的ANSI颜色等。SecureCRT的SSH协议支持DES、3DES和RC4密码以及RSA加密。SecureCRT快速连接的设置如下图示:
选择协议为Telnet,填写远程主机的主机名为远程的IP地址,端口修改为118。登录成功界面如下图示:
任务二:配置SSH服务
【任务说明】:
Telnet服务有一个致命的确定就是以明文的方式传输数据,包括用户名的密码,所以数据在传输的过程中,很容易被截取和篡改。而SSH服务可以代替Telnet进行远程管理,使用多种加密和认证方式,有效地解决了数据在传输过程中的安全问题。
SSH服务采用非对称性算法。本次任务的主要目的是配置SSH服务,以使主机能够使用SSH服务远程登录到服务器上。
【任务实施】:
通过以下命令检查SSH软件的安装情况。一般情况下,系统已经默认安装了此服务。
【rpm -q openssh】查看SSH服务客户端的安装。
【rpm -q openssh-server】查看SSH服务服务客户端的安装
如果没有查询到相关的openssh软件,请挂载光盘,配置好YUM源可以通过如下命令安装。
【yum install -y openssh】安装openssh客户端
【yum install -y openssh-server】安装openssh服务器端
第二步:解读SSH配置主文件
SSH的主配置文件是/etc/ssh/sshd-config,可以使用vim编辑器打开。部分行的释义如下:
Port 22 #监听端口所在行,可以把默认的22改为其他端口
Prottocal 2,1 #协议顺序(SSH有两个版本)
PermitRootlogin yes #设置是否允许root用户登录
PermitEmptyPasswords no #是否允许空口令用户登录
PasswordAuthentication yes #是否使用口令认证方式
此配置文件可以不做任何修改,直接启动服务即可。
【service sshd start】启sshd服务进程(一般情况下,服务名称后加字母d代表服务进程)
【chkconfig sshd on】配置服务器开机后自动启动sshd服务
第三步:使用第三方软件登录
(1)使用PuTTY登录
填写好要登录的服务器主机名或IP地址,使用默认的端口号,选择SSH服务即可登录,如下图示:
单击【open】按钮后会提示输入服务器的用户名以及密码。
使用secureCRT登录登录界面如下图示:
单击【连接】按钮后,输入用户名以及密码即可登录服务器。
第四步:使用【scp】命令传输文件
当远程到服务器以后,经常需要在两台主机上传输文件,通过以下方式可以实现文件的传输。
在Linux server上启动SSH服务。
在客户机上使用【scp LINUXSERVER IP:/目录/文件/本地目录】命令表示把服务器上某一文件复制到本地目录;【scp -r LINUXSERVER IP:/目录/本地目录】命令表示把服务器上某一目录中所有文件与目录复制到本地目录中;【scp -r 192.168.233.189:/mnt/yhy】命令表示复制主机192.168.233.189上mnt目录下的所有文件到本地的/yhy目录下。
第五步:一般来说,Linux服务器大多是通过SSH客户端来进行远程登录和管理。使用SSH登录Linux主机以后,如何能够快速地和本地机器进行文件的交互,也就是上传和下载文件到服务器和本地?使用【SZ】或【rz】命令实现远程主机与本地文件的传输与SSH有关的两个命令可以提供方便的操作。
【sz】将选定的文件发送到本地机器
【rz】运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器
但是,rz、sz是Linux/UNIX同Windows之间采用Zmodem文件传输的命令行工具,速度大概只有10KB/S,所以只适合中小文件。
任务三:配置VNC服务
【任务说明】:
Telnet和SSH服务只能实现基于字符界面的远程控制,对于习惯使用X-Windows的用户而言,使用字符界面就不是很习惯,那么如何远程也能使用X-Windows?VNC软件是实现该技术的绝佳选择。VNC是一款优秀的远程控制工具软件由欧洲实验室开发。它是在基于UNIX和Linux操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和Windows以及Mac中的任何远程控制软件相比。VNC基本上有两部分组成,一部分是客户端的应用程序,另一部分是服务器端的应用程序。VNC的服务器应用程序在UNIX和Linux中适应性很强图形用户界面很不错。
本次任务的主要目的是在centos6.5中安装VNC Server x实现远程图形化访问。
【任务实施】:
第一步:安装Gnomet图形化桌面
要能远程访问图形化界面,首先服务器自身需要安装图形化套件,在此还需安装中文支持套件。
【yum groupinstall "X Windows System ""Desktop】CentOS6.X安装Gnome桌面环境
【yum groupinstall Xfce】CentOS安装Xfce桌面环境,可选。
【yum groupinstall -y "Chinese Support"】安装中文支持
第二步:安装vncserver软件
【yum install -y tigervnc-server tigervnc】安装vncserver软件
第三步:配置VNC密码
vncserver运行后,没有配置密码,客户端是无法连接的,通过如下命令设置与修改密码。
【vncserver】设置VNC密码,密码必须是6位以上
【vncpasswd】修改VNC密码,同样,密码必须是6位以上
第四步:配置为使用Gnome桌面
【vim /root/.vnc/xstartup】打开gnome桌面的主配置文件,修改该文件,把最后的【twm &】删除,再加上【gnome-session &】。
第五步:配置vncserver启动后监听端口和环境参数
【vim /etc sysconfig/vncserver】修改配置文件,在最后面假如如下两行内容:
VNCSERVERS="1:root” VNCSERVERARGS[1]="-geometry 1024*768" -alwaysshared - depth 24" |
第六步:设置vncserver服务在系统中运行
修改任何有关vncserver的服务后需要重新启动相关的服务
【service ncserver restart】重启vncserver服务
【chkconfig vncserver on】设置vncserver开机自动启动
第七步:在网络中输入【VNC Viewer】关键字搜索并下载VNC Viewer,安装后打开,界面如下图示:
输入服务器的IP地址,然后单击【确定】按钮,弹出如下图示的要求输入root密码的提示框。
输入root的账号的密码,单击【确定】按即可登录成功登录成功的界面如下图:
第八步:排错
检查SELinux服务并关闭。使用【vim /etc/selinux/config】命令编辑/etc/selinux/config文件,设置Selinux字段的值为【disable】。
关闭NetworkManager服务。使用【chkconfig --delNetworkManage】命令关闭NetworkManage服务。
Iptables防火会墙默认阻止VNC远程桌面所以需要在iptables允许通过。启动VNC服务后,可以使用【netstat -tunlp】命令查看VNC服务所使用的端口,可以发现有5801/5901、6001等。
使用【vim】命令编辑/etc/sysconfig/iptables文件,在文件最后添加如下内容,可以开启这些端口。
-A RH Firewall -1 -INPUT -p tcp -m tcp -dport 5801 -j ACCCEPT
-A RH Firewall -1 -INPUT -p tcp -m tcp -dport 5901 -j ACCCEPT
-A RH Firewall -1 -INPUT -p tcp -m tcp -dport 6001 -j ACCCEPT
重启防火墙或直接关闭防火墙的命令如下:
【/etc/init.d/iptables restart】重启防火墙
【/etc/init.d/iptables stop】关闭防火墙
在大多数情况下,vncsever总处于监听状态vnc client主动向服务器发出请求从而建立连接。然而在一些特殊的场合,需要让VNC客户机处于监听状态,vncserver主动向客户机发出连接请求,此谓VNC反向连接。主要步骤如下:使用【vncviewer-listen】命令启动VNC client,使vncserver处于监听状态,使用【vncserver】命令启动vncserver,使用【vncconnect】命令,发起server到client的请求。
第十步:解决可能遇到黑屏问题
在Linux安装配置完成VNC服务端,发现多用户登录会出现黑屏的情况,具体的现象为:客户端可以通过IP与会话号登录进入系统,但进去是黑的,除了鼠标箭头以外,都看不见。
原因:用户的VNC启动文件权限未设置正确。
解决方法:将黑屏用户的xstartup(一般为/用户目录/.vnc/xstartup)文件的属性修改为755(rwxr-xr-x),然后杀掉已经启动的VNC客户端。操作步骤如下:使用【vncserver -kill 1】命令杀掉所有已经启动的VNC客户端1。使用【vncserver -kill :2】命令杀掉所有已经启动的VNC客户端2,使用【/etc /init.d/vncserver restart】命令重新启动vncserver服务。