Linux服务器的远程管理.ppt

上传人:小飞机 文档编号:5438067 上传时间:2023-07-07 格式:PPT 页数:95 大小:2.03MB
返回 下载 相关 举报
Linux服务器的远程管理.ppt_第1页
第1页 / 共95页
Linux服务器的远程管理.ppt_第2页
第2页 / 共95页
Linux服务器的远程管理.ppt_第3页
第3页 / 共95页
Linux服务器的远程管理.ppt_第4页
第4页 / 共95页
Linux服务器的远程管理.ppt_第5页
第5页 / 共95页
点击查看更多>>
资源描述

《Linux服务器的远程管理.ppt》由会员分享,可在线阅读,更多相关《Linux服务器的远程管理.ppt(95页珍藏版)》请在三一办公上搜索。

1、第13章 Linux服务器的远程管理,本章重点:Linux上远程登录的四种方法的实基于密钥认证的SSH2登录设置iptables的设置,随着硬件成本的不断降低,越来越多的企业选择使用自己的服务器来提供服务,这样的优势很明显。首先,服务器的空间大小只取决于自己的硬盘容量,也就是说在使用空间上几乎是无限的,一般一台服务器在普通流量下做五六个虚拟主机肯定没有问题。服务质量得到可以很好的保证。其次,各种服务可以根据需要定制,不会像使用租用的虚拟主机那样受到提供商的种种限制。再次,带宽使用比较理想,对于普通企业站点,ISP所提供的带宽一般都可以满足需要。,在接入方式上一般会采用专线接入或主机托管的形式。

2、专线接入因为需要申请电信的光缆,所以成本较高。较多采用的是主机托管的形式,将主机托管给ISP,按照时间托管时间付一定的费用,这是一种比较经济的方法。无论是哪种接入方式,一般服务器都不会直接操作,这就涉及到如何进行服务器的远程管理问题。在Linux上常见的远程管理方法有4种,Telnet(Telecommunication Network)方式、SSH(Secure Shell)方式、VNC(Virtual Network Computing)方式和远程X方式。其中SSH方式最常见,也最安全。,13.1 Telnet方式远程管理Linux Telnet是使用最为简单的Internet工具之一,也

3、是最早应用的Internet工具之一,这是最早使用的远程登录工具。因此几乎所有的系统上都提供了对Telnet的支持。但是由于Telnet在网络上都是使用明文方式传输的,这对于传输口令以及其他秘密信息来说是极其不安全的,利用连接到网络上的计算机监听Telnet和服务器之间的通信可以很容易获取这些传递的口令和秘密信息,安全性差又使得Telnet显得有些过时。事实上现在对远程服务器管理基本上已经将Telnet远程登录方式淘汰了,Telnet只用来做一些普通的资料查询、BBS系统等等。现在的远程登录通常使用更为安全的SSH来取代Telnet。即使偶尔使用也只会在安全性相对较好的局域网环境下使用。,在默

4、认状态下Red Hat Linux 9已经将Telnet禁用。这是基于系统安全性的考虑,毕竟Telnet实在是太不安全了。要打开系统的Telnet服务可以在/etc/xinetd.d目录下找到telnet并打开该文件:service telnet flags=REUSE socket_type=stream wait=no user=root server=/usr/sbin/in.telnetd log_on_failure+=USERID disable=yes,将禁用设置disable=yes更改为disable=no,然后使用下面的命令重新启动xinetd:#service xinet

5、d restart然后就可以在windows系统下使用Telnet登录Linux。在命令行下输入telnet 系统会显示Linux系统信息,然后询问用户名密码(如图13-1):,图13-1Windows下使用命令窗口下的Telnet登录Linux,Red Hat Linux 9 基于安全的考虑禁止直接使用root身份登录系统,如果要使用root身份可以使用su命令来获取root权限。,图13-2使用su指令获得root权限,如图13-2所示,输入su root后系统会询问root密码,正确输入密码后系统提示符会由“$”转变为“#”。,系统在登录时显示系统信息会泄露系统信息,由于各种Unix类系

6、统的特色各不相同,其薄弱环节往往也不一样,显示系统信息就会让意图侵入计算机的黑客可以有针对性的对系统发起攻击,增加了系统的危险性。最好将登录信息修改以防止信息泄露,Linux用来显示系统信息的文件有两个,一个为/etc/issue,另一个为/etc/。issue是在本地登录时显示的内容,是在网络登录时显示的内容。可以将该文件修改以隐藏系统信息,如修成其他系统的提示信息,可以误导试图侵入系统的不法之徒,或者干脆将上述两个文件清空,这样在登录系统时就会只显示login:(图13-3),从而有效隐藏系统信息。,图13-3 屏蔽系统信息后使用Telnet登录Linux,13.2 SSH方式远程管理Li

7、nux SSH是一种跟Telnet类似的用于远程登录的系统,可以完全取代安全性十分脆弱的Telnet。SSH最初是由一家芬兰公司开发的。由于版权和加密算法的限制,现在越来越多人转向使用可免费的SSH的替代软件OpenSSH。SSH由客户端和服务端组成的,目前有两个版本:1.x和2.x,但是两个版本之间并不兼容,用SSH 2.x的客户程序无法和使用SSH 1.x的服务程序连接。Red Hat Linux 9系统中安装的OpenSSH版本是openssh-3.5p1-6,同时支持SSH 1.x和2.x。,SSH提供两种安全级别的验证方式,一种是基于口令的安全验证,另一种是基于密钥的验证方式。基于口

8、令的验证方式只需要提供服务器上用户的用户名和口令即可登录。而基于密钥的验证则需要重新生成一对密钥,在服务器上安装生成的公钥,客户端使用私钥来登录。但是无论是哪一种验证方式,SSH2都是基于密钥的验证方式,区别就在于使用口令验证过程中只使用了一对服务器密钥,而基于密钥的验证方式则是使用了一对服务器密钥和一对客户端密钥进行双方身份的互相验证,因此基于密钥的验证的安全性要高于基于口令的验证方式。,13.2.1 使用基于口令的验证 Red Hat Linux 9默认使用的是SSH的基于口令的验证。现在的主流操作系统是Windows,这里也只介绍Windows下使用SSH客户端连接Linux下SSH服务

9、器的设置。但是由于Windows本身没有提供SSH客户端的连接工具,因此要在Windows系统上使用SSH连接SSH服务器就必须借助于第三方软件。这里使用的是免费的PuTTY的windows版本,该软件的官方下载地址为:http:/the.earth.li/sgtatham/putty/latest/x86/putty.exe,该软件在国内的一些软件下载站点也可以找到,这里使用的是0.54版,该软件可直接运行无需安装,只有364K。同时支持SSH1和SSH2两种协议。该版本的PuTTY默认使用SSH2协议连接,较低版本的默认使用SSH1连接,但都可以指定连接中使用的协议。使用时直接运行可执行文

10、件putty.exe,如图13-4所示在Host Name or IP address 输入主机名或IP设置好端口单击Open即可。,图13-4配置PuTTY,Red Hat Linux 9上的OpenSSH在和客户端连接时会自动将服务器公钥发送到客户端。PuTTY会把服务器密钥存储于系统的注册表内。在第一次和服务器建立连接时PuTTY会显示一个警告信息(如图13-5)。这是由于PuTTY在第一次和服务器建立连接时,无法在系统注册表里找到该服务器的提供的公钥注册信息。,图13-5PuTTY发出警告信息,该警告信息的含义为:在注册表中没有存储该服务器提供的密钥。不能保证你要连接的服务器就是这台服

11、务器。服务器的 rsa2 密钥指纹是:ssh-rsa 1024 57:b2:c6:64:e0:3b:59:5f:24:9b:3b:c4:9a:03:52:bc如果你信任这台主机,选择按钮“是”,把密钥存储并连接到该主机。如果你只是想要连接一次,不存储该密钥,那么就选择按钮“否”,如果你不信任这台主机,就选择按钮“取消”放弃连接。,选择按钮“是”来建立连接,这样PuTTY就会将该服务器的密钥指纹存储在系统注册表内。存储于系统注册表的位置为:HKEY_CURRENT_USERSoftwareSimonTathamPuTTYSshHostKeys 在系统注册表里记录了连接的主机,密钥指纹,使用的密钥

12、等信息。然后PuTTY将使用服务器提供的公共密钥来对通信进行加密,这些加密信息只有在使用与之对应的服务器私钥才能解开,这就避免了其他计算机在冒充服务器时给用户发送从服务器获得的公共密钥(服务器公共密钥任何人都可以获得),而获得用户的信息,因为冒充的计算机无法解开使用服务器公共密钥加密后的数据。当第二次建立连接时PuTTY会取出这些信息和主机发送到客户端的密钥进行比较,如果一致将和服务器建立连接,提示输入用户名密码。如果发现不一致将发出警告信息:,图13-6PuTTY发现密钥不一致而发出警告信息,该警告信息含义为:警告-可能存在安全破坏!服务器密钥和PUTTY在注册表里保存的密钥不匹配。这有两种

13、可能,或者是服务器系统管理员更改了服务器密钥,或者是你实际上连接到了另外一台试图冒充服务器的计算机。新的 rsa2 密钥指纹是:ssh-rsa 1024 c4:f9:34:bb:33:b6:43:41:6c:1e:b6:9e:74:37:63:da如果你想要更新并且信任该密钥,那么就选择按钮“是”来更新PUTTY的注册信息并和该计算机建立连接。如果你想要建立连接,但又不想更新注册信息,那么就选择按钮“否”。如果你想要完全地放弃连接,那么就选择按钮“取消”。“取消”是唯一的可以保证安全的选择。,由于服务器默认密钥是在OpenSSH安装时随机生成的1024位密钥,其他服务器几乎没有可能生成相同的密

14、钥。因此当服务器发出这样的警告,而管理员对又没有对服务器密钥进行了重新安装,那这就肯定是有人在使用其他服务器冒充该服务器发起的中间人攻击。最好不要与之建立连接,否则有可能会泄露服务器使用的用户名密码。,图13-7使用基于口令的验证方式登陆服务器,没有什么问题后单击按钮【是】,出现一个和系统命令窗口相似的窗口,根据提示输入用户名密码即可。,13.2.2 使用基于密钥的验证 使用基于密钥的验证方式时也同样需要提供用户名,此时的用户名用来查看是否和用户提供的密钥匹配,因此用户身份识别完全依靠密钥进行,也就是必须为每一个需要登录服务器的用户设置用户密钥。,PuTTY本身没有创建密钥的功能,服务器直接创

15、建的密钥PuTTY也无法直接使用,必须使用由PuTTY官方站点提供的一个和PuTTY搭配使用的密钥工具PuTTYgen来转换服务器生成的密钥或者由该工具创建的密钥。和PuTTY一样,该文件也无需安装直接使用,大小只有156K。该软件官方下载地址为:http:/the.earth.li/sgtatham/putty/latest/x86/puttygen.exe 使用PuTTYgen可以自己创建密钥对,Openssh只能使用该工具生成的SSH1的密钥对,但可以将OpenSSH生成的SSH2密钥转换为PuTTY可以使用的私钥文件。,下面使用PuTTYgen创建一对SSH1密钥对。运行puttyge

16、n.exe(如图13-8)。,图13-8使用PuTTYgen创建密钥,从Parameters(参数)选择中选择SSH1(RSA),如果选择了使用SSH2(RSA)或者SSH2(DSA),可能无法正常工作,这可能是该程序的一个BUG,但是这并不影响转换Openssh创建的SSH2密钥,密钥长度使用默认设置1024即可。选择完毕单击Actions(动作)区域的按钮【Generate】(产生),开始生成密钥。,图13-9使用PuTTYgen生成密钥对,PuTTYgen的密钥是根据鼠标移动的位置信息来生成的,当鼠标指针移动速度较快时生成密钥的进度条也跟着变快。,图13-9复制PuTTYgen生成的SS

17、H1公钥,密钥生成后需要为私人密钥指定一个密钥密码(Key passphrase),输入密码并输入该密码的确认(Confirm passphrase)密钥就设置完成了。单击按钮【Save public key】保存公共密钥,单击按钮【Save private key】保存私人密钥。密码的长度最好不要少于八位。可以在Key comment除输入密钥说明。下面是将公共密钥发布到服务器上的步骤:(1)将密钥复制到用户目录 假设要为用户user设置密钥验证,那么可以先将公共密钥复制到该用户的主目录,复制方法可以使用FTP。,(2)建立密钥存放目录 使用该用户身份登录到服务器,在该用户主目录下建立一个名

18、称为.ssh的目录,然后将公钥文件移动到该目录,并重命名为authorized_keys。(3)打开系统的SSH认证 使用vi编辑器打开/etc/sshd/sshd_config,在该文件中找到下面的这行(大约在42行)。#AuthorizedKeysFile.ssh/authorized_keys 该选项用于设置用户公钥文件存储位置,系统默认位置在用户目录下的.ssh/authorized_keys,将前面的注释字符“#”删除。然后找到下面的一句(大约在57行):#PasswordAuthentication yes,该选项用于设置系统的验证方式,系统默认使用基于密码的验证方式,下面将前面的

19、注释字符“#”删除,然后将yes更改为no。这样系统就会禁止使用基于密码的验证方式而只使用基于密钥的验证方式,从而可以有效地提高系统的安全性。设置完成后使用service sshd restart命令重新启动sshd服务,使设置生效。此外还可以找到下面的一行:#PermitRootLogin yes 该选项为决定是否允许使用root用户直接登录,与Telnet默认不允许root登录不同,系统默认允许root使用SSH登录。为了增强系统的安全性可以禁止使用root直接登录,将该选项设置为PermitRootLogin no。,(4)客户端登录测试 运行putty.exe,在Host Name o

20、r IP address 输入主机名或IP地址,然后如图13-10所示,在Connection(连接)下的SSH窗口中的Protocol options(协议选项)中的Preferred SSH Protocol verision(首选SSH协议的版本)选项中选择1(选择SSH1协议)。,图13-10位PuTTY指定使用SSH1协议连接,然后在选择SSH下的Auth(验证),如图13-11所示窗口在Private key file for authentication(私钥验证文件)中单击按钮【Browse】(浏览),选择保存的私钥文件,单击按钮【Open】建立和服务器的连接。,图13-11选

21、择私钥文件,第一次和服务器建立连接时会弹出一个类似第一次使用密码方式连接的弹出警告窗口。说没有找到服务器提供的密钥信息,选择按钮【是】即可。然后按照提示输入用户名密码登录,这里的密码是设置的私钥的密码,而不是系统密码。输入用户名和密钥密码即可成功登录。,图13-12使用基于用户密钥的验证方式登录服务器,如果使用SSH2协议作基于密钥的验证就需要在服务器上使用OpenSSH为用户生成密钥。下面我们为用户user设置使用SSH2协议下基于密钥的验证。操作步骤如下:(1)创建用户密钥对 切换到user身份使用ssh-keygen命令创建用户密钥对。公钥由服务器用来识别用户身份,私钥下载到本地通过Pu

22、TTYgen转换为PuTTY可以使用的配置文件。,图13-13为用户user创建密钥对,使用ssh-keygen t rsa命令生成用户密钥(如图13-13所示),使用参数-t指定建立密钥的类型,SSH2协议可使用rsa 和dsa两种类型的密钥,如果是使用SSH1那么就只能使用rsa1。输入回车后系统提示指定密钥文件保存的路径,直接使用默认路径/home/user/.ssh/id_rsa即可。系统会自动在用户目录下建立.ssh目录,然后提示输入该密钥的密码,输入两次后会在用户目录下的.ssh目录生成两个文件id_rsa.和id_rsa.pub。id_rsa为用户私钥,id_rsa.pub为用户

23、公钥。将id_rsa.pub重命名为authorized_keys。,(2)转换用户私钥 然后把id_rsa下载到本地,使用PuTTYgen处理用户私钥。运行PuTTYgen,在Action处单击按钮【Load】,找到并打开从服务器获得的用户私钥。系统和会要求输入用户私钥密码(如图13-14)。,图13-14导入OpenSSH生成的私钥,正确输入密码后单击按钮【OK】,PuTTYgen会弹出一个成功导入外部密钥的对话框(如图13-15),单击【确定】关闭对话框。,图13-15 OpenSSH SSH2私人密钥成功被导入PuTTYgen,然后单击按钮【Save private key】将密钥保存

24、为PuTTY格式,关闭PuTTYgen。,(3)使用用户私钥登录 打开PuTTY在Host Name or IP address 输入主机名或IP地址。在Connection(连接)SSHAuth下选择刚才转换过的密钥,单击按钮【Open】连接服务器。,图13-16使用SSH2基于密钥的验证登录服务器,服务器会询问使用的用户名(如图13-16),输入用户名“user”输入回车,服务器会提示:“Authenticating with public key imported-openssh-key(使用公钥imported-openssh-key验证,imported-openssh-key是在创

25、建密钥时指定的公钥说明)”,然后提示输入为密钥设置的密码“Passphrase for key imported-openssh-key:”,当正确输入密码后就登录成功了。由于私钥和用户一一对应,当用户使用的密钥和用户提供的身份不符时系统就会不提示用户输入密码而直接将连接断开(如图:13-17)。,图13-17密钥和用户提供的身份不符,使用基于密钥的身份验证要求用户私钥、服务器公钥以及密钥密码三者完全对应,缺少任何一个都会使验证失败,这为服务器在用户身份验证方面提供了最为安全的保证。如果一旦怀疑用户私钥被窃取,不要迟疑马上重新建立密钥,并用新密钥替换旧密钥,这样即使有人窃取了用户密钥密码也会因

26、为密钥不同而无法登录。下面是SSHD服务的配置文件/etc/ssh/sshd_config的部分内容,可以根据需要适当调整。,#Port 22#指定SSHD使用的端口#Protocol 2,1#指定优先使用的SSH协议#ListenAddress 0.0.0.0#使用的IP地址(IPV4格式)#ListenAddress:#使用的IP地址(IPV6格式)#HostKey for protocol version 1#使用SSH1协议的密钥#HostKey/etc/ssh/ssh_host_key#SSH1协议密钥保存路经#HostKeys for protocol version 2#使用SS

27、H2协议的密钥#HostKey/etc/ssh/ssh_host_rsa_key#SSH2协议rsa密钥保存路经#HostKey/etc/ssh/ssh_host_dsa_key#SSH2协议dsa密钥保存路经,#Lifetime and size of ephemeral version 1 server key#SSh1服务器密钥生命周期#KeyRegenerationInterval 3600#密钥重建周期,单位为秒#ServerKeyBits 768#服务器密钥长度#Logging#日志#obsoletes QuietMode and FascistLogging#Syslog Fac

28、ility AUTH#日志方式#Syslog Facility AUTHPRIV#日志方式#LogLevel INFO#日志等级,#Authentication:#LoginGraceTime 120#登录延时PermitRootLogin yes#禁止root用户登录#StrictModes yes#严格模式#RSAAuthentication yes#RSA验证#PubkeyAuthentication yes#公钥验证AuthorizedKeysFile.ssh/authorized_keys#密钥存放路径#rhosts authentication should not be used

29、#禁用rhosts验证模式,#RhostsAuthentication no#rhost验证模式#Dont read the users/.rhosts and/.shosts files#不读取用户/.rhosts和/.shosts文件#IgnoreRhosts yes#忽略rhost#To disable tunneled clear text passwords,change to no here!PasswordAuthentication no#基于密码的验证模式#PermitEmptyPasswords no#允许空密码,13.3 VNC方式远程管理Linux 在Windows服务

30、器上的终端服务是一个非常方便的远程管理工具,由于使用图形方式,使得操作一台远程Windows服务器就好像操作本地主机一样方便。在Linux上也同样有这样的工具,而且要比Windows的终端服务更加的方便,这就是VNC,使用Windows上的终端服务还需要使用客户端的连接工具,使用Linux上的VNC甚至只要使用浏览器就可以了,当然也可以使用客户端工具来建立连接。,13.3.1 启动和关闭VNC服务 Red Hat Linux 9默认是不启动VNC Server的,要使用VNC就需要手动启动VNC Server。如图13-18所示,在系统shell下输入vncserver启动VNC Server

31、,在第一次启动VNC Server时系统要求设置用于连接VNC Server时所要使用的密码,输入两次密码后系统提示:New“X”desktop is Linux9:1,该信息显示,VNC Server将X的桌面显示到Linux9的第一个端口,Linux9是这台服务器的主机名,端口是从5801开始的端口。除此之外还显示一些其他的信息。,图13-18启动VNC Server,VNC Server不仅仅只有root身份才可以启动,其他身份也可以。登录root身份份启动的VNC Server就具有root身份,登录其他用户身份启动的VNC Server就具有其他用户身份。,图13-19 关闭VNC

32、Server连接关闭VNC可以在shell下使用ps命令找到Xvnc进程,使用kill命令将该进程结束即可。,13.3.2 登录VNC服务器 在windows下登录Linux上的VNC服务器很简单只需要直接在浏览器中输入访问VNC服务器的580 x端口即可,由于VNC允许同时启动多个,这里的x会根据启动顺序分别定义为1、2、3。,图13-19登录VNC Server,如图13-19所示,这是以root身份启动的VNC Server,在标题栏上显示“roots X desktop(Linux9:1)”,在文本框内输入密码,这里的密码就是启动VNC Server时所设置的密码。输入密码后单击按钮【

33、OK】,如果密码输入正确就可以像直接使用X那样使用VNC了(如图13-20)。VNC显示的色彩深度只有8位,也就是只有256色,因为VNC只是为了提供一种高速的远程图形方式工作环境,而这种远程管理本身也不会对系统的显示效果有太高的要求,只要求能够使用就可以。同时也正是因为其颜色深度比较低,也使得数据的传送量非常小,因而可以获得很高的响应速度。VNC方式几乎是现在实现远程图形方式中效果最好的工具。如果真的要求较好的图像质量那么就只能采取另一种方式,远程X。这些内容在本章的最后一部分会涉及到。,图13-20登录VNC Server注意:由于在浏览器中使用VNC显示的方式是使用的Java的apple

34、t,Windows的有些版本没有安装Java的虚拟机,如windows XP,无法直接使用浏览器方式连接VNC Server。解决方法有两个,一是安装Java的虚拟机,可以安装Sun的JDK,另一种方法为使用VNC客户端工具连接VNC Server。,如果感觉浏览器使用不太方便的话可以使用VNC工具连接。在这里可以找到VNC的工具,这是一个windows版本的VNC工具,包括windows版的VNC Server和客户端VNC Viewer,zip压缩包大小只有534k。如果只使用客户端的话可以之下载VNC Viewer,zip的压缩包只有92.2k,解压缩后无需安装即可使用。下载地址为:。这

35、些工具都是免费的,如果对VNC感兴趣可以在VNC官方站点http:/找到更多的信息。,直接运行(如图13-21),输入连接服务器的IP和端口5901。单击按钮【OK】。,图13-21使用VNC Viewer连接VNC Server,如果VNC Viewer和服务器成功的建立连接就会提示用户输入连接密码(如图13-22):,图13-22输入VNC Server的密码,如果VNC Viewer没有找到服务器的VNC服务就会弹出一个连接失败的对话框:,图13-23使用VNC Viewer连接服务器失败,如果密码正确就可以和服务器建立连接(如图13-24):,图13-24使用VNC Viewer访问V

36、NC Server,可以通过窗口左上角控制菜单切换到全屏模式。切换回来使用Ctr+Esc然后输入Esc回到windows窗口,然后再右击任务栏上的VNC Viewer任务条,出现VNC Viewer菜单,单击复选项Full screen将全屏模式取消。注意:使用浏览器访问Linux的VNC Server实际上是Linux系统在580 x端口临时打来了一个Web服务,该服务提供了一个Java applet在客户端连接VNC Server的工具,Java applet在客户端和服务器的590 x端口建立了连接。,13.4 远程X方式远程管理Linux Linux上的图形工作方式是基于一种叫做X的服

37、务,系统本身的图形方式就是本地XClient把图形信息发送给本地的XServer来显示而实现的。因此只要在远程主机上安装能够连接XClient的客户端XServer即可实现将Linux的图形工作环境显示到远程主机的显示器上,但是这同样有一个前提条件,那就是系统必须已经安装了X方式,否则就无法实现远程X。,注意:这里的显示图形的一端为XServer,执行端为Client。这里很容易混乱,提供图形A方式的显示是一种服务,系统把图形信息发送给XServer去执行。,13.4.1 允许远程XServer连接服务器 在Red Hat Linux 9上提供了一种远程访问X方法:GDM(GNOME X di

38、splay manager),下面开始配置GDM。(1)打开服务器端远程连接的设置 如图13-25所示,单击【开始菜单】【系统设置】【登录屏幕】。,图13-25打开GDM屏幕工具,出现GDM设置窗口。GDM不仅仅是一个用来设置远程X的工具,它还是设置系统登录窗口的工具。如图13-26所示,在GDM窗口【通用】选项下有【欢迎程序】、【自动登录】、【延迟登录】三个设置,这里主要介绍使用远程X,不相关的设置限于篇幅在这里就不再做介绍了。,图13-26GDM设置的通用选项,如图13-26所示在通用选项下的【欢迎程序】有一个【远程】选项,该选项用来设置用户远程登录的欢迎界面。如图13-27选择【XDMC

39、P】(X Display Manager Control Protocol)选项。,图13-27设置XDMP,系统默认不允许远程访问X,选中【启用XDMCP】来启动远程X支持,其中最大远程会话数和主机最大显示数都决定了可以同时连接的服务器数量。,图13-28GDM安全设置,由于系统root帐户的特殊性,一般都限制使用root用户登录,系统默认设置允许root用户登录,可以对root帐户做出限制(如图13-28),设置是否允许root用户通过GDM登录和是否允许root用户通过GDM远程登录。,(2)设置客户端XServer的连接 这里介绍的仍然是基于window的XServer。使用的工具是X

40、-Win32,专门用来从Windows上连接Linux的远程桌面的。该软件如果不注册每次只能使用30分钟,超过30分钟后会自动断开连接。X-Win32的安装过程十分简单,在这里就不介绍了。下面简单介绍一下如何配置X-Win32和Linux的XDMCP连接。第一次运行X-Win32时程序会自动创建一个连接,首先提示设置连接方式,如图13-29选择XDMCP。,图13-29 设置X-Win32 连接方式,单击【下一步】出现【XDMCP】窗口,选择XDMCP的连接模式,这里选择Query(询问),单击【下一步】出现【Host】窗口,输入服务器的名称或者IP地址。单击【下一步】出现【Name of S

41、ession】窗口,在这里为会话指定一个名称,如:Red Hat Linux 9。单击【完成】完成主机设置。,(3)设置Linux的字体服务 在Linux上使用的有些字体是windows上所没有的,因此需要为X-Win32设置字体服务器,字体服务是Linux上专门用来提供X下的字体的服务,服务名称为xfs(X fonts Server)。当X-Win32要使用到windows没有的字体时可以连接Linux的字体服务从而使X-Win32可以正常显示这些字体。Linux的字体服务默认是不接受Tcp的请求的。可以通过修改字体服务的设置来使Linux的字体服务接受请求。编辑/etc/X11/fs/co

42、nfig,将no-listen=tcp前加一个“#”符号取消其不接受请求的设置。保存退出,然后使用service xfs restart重新启动xfs。,(4)在X-win32上设置字体服务器 如图13-30,右击系统托盘内的“X”图标,在弹出菜单内选择XConfig。,图13-30修改X-Win32的设置,在【X-Win32 Configuration】窗口选择【Font】选项,单击按钮【Add Font Server】,弹出【Add X Font Server】窗口(如图13-31),输入服务器名称或IP地址,单击【OK】关闭【Add X Font Server】窗口,这样X-Win32就

43、可以使用服务器字体来显示没有安装的字体。,图13-31 为X-Win32设置字体服务器,(5)使用X-win32连接Linux 如图13-30所示,右击系统托盘“X”图标,出现X-Win32菜单,选择【Sessions】【Red Hat Linux 9】启动XServer。,图13-30启动XServer,X-Win32会根据Red Hat Linux9的设置出现Linux的登录欢迎界面(如图13-31)。单击【会话】弹出选择会话桌面,根据爱好选择KDE或者GNOME,单击确定。然后输入用户名密码即可登录。,图13-31通过X-Win32连接远程X,(6)X-Win32多个窗口问题的解决 有时

44、X-Win32连接远程X时会出现多个窗口在X-Win32中分别打开一个窗口显示的情况(如图13-32),这就需要对X-Win32的设置进行一下更改。,图13-32X-Win32出现使用多个窗口的情况,右击系统托盘里的“X”图标,在菜单中选择XConfig,出现【X-Win32 Configuration】窗口,在选项【Sessions】下选中为服务器建立的Session(如:Red Hat Linux 9),单击右侧按钮【Edit】出现【Red Hat Linux 9 Edit Session】。如图13-33在Session Flags内将【Default】或【Switch to Multi

45、ple】更改为【Switch to Single】,单击按钮【Save】保存设置。这样显示远程X时就不会出现多个窗口分别显示的情况了。,图13-33设置Session Flags,由于远程X一般采用的是24位的真彩色,它的显示效果要比VNC方式好的多,但同时也增加了数据量,会增加服务器和网络的负担,因此不推荐在服务器上使用远程X的方式。如果使用图形方式的连接建议使用VNC,使用VNC时可以和SSH配合使用,需要图形方式就使用SSH将VNC打开,使用完毕就将VNC关闭,有效保证系统的安全。,13.5 使用iptables保护服务器的安全 服务器运行的环境都是在安全性非常差的Internet环境下

46、,这就为服务器提供可靠的安全保证。Linux的内核就有处理网络发送的数据包的功能。系统使用iptables和系统内核连接,由iptables告诉内核哪些数据包可以通过,哪些数据包应该拒绝,哪些数据包应该重新封装等等。通过合理的设置iptables可以架设出一个性能卓越的防火墙,从而可以来有效的提高系统的安全等级。iptables本身的选项设置足以应付Internet上各种各样千奇百怪的攻击。这里只介绍一些iptables的简单基础,在一定程度上提高系统的安全等级。,防火墙在Linux系统安装时就已经涉及到了,这里的防火墙就是基于iptables而架设的。但是系统由于某些原因很可能会出现更改系统

47、服务的情况,如定期将系统ftp服务重新定位于新的端口,这就要求防火墙也作相应的调整来满足需要。由于系统防火墙也是基于iptables来设置的,因此在这里就直接对iptables的设置作一些介绍。,13.5.1 iptables术语 首先需要对iptables的专业术语有一个简单的了解,下面就几个最常用的专业术语和文章中涉及到的术语做一下简单介绍。,链:链是iptables中规则的列表。系统默认有三个链,分别是INPUT(输入)、OUTPUT(输出)、FORWARD(转发),这些链是安装功能由系统划分的。系统也允许用户自定义链,Red Hat Linux 9默认建立了一个名称为RH-Lokkit

48、-0-50-INPUT的链。数据包进入系统后就会进入INPUT链接受处理,处理之后才可以转交系统的其他服务。系统发送的数据包在发送之前会通过OUTPUT链检测才能决定去向。FORWARD链本文没有涉及到,在这里就不赘述了。,规则:规则是由组成链的基本单位,其中每一个链还有一个默认规则,该规则会在所有规则都无法和数据包匹配的情况下发生作用,决定该数据包应当如何处理。通常默认规则都会将数据包丢弃。协议:协议是计算机和计算机通信过程中遵循的方法和标准,不同的计算机只有使用同样的方法和标准才能彼此通信,这里涉及到的有三种协议:tcp、udp和icmp。而iptables可以专门针对这三种协议中的每一中

49、设置操作。目标(TARGETS):这是iptables对匹配规则的数据包进行的处理方法,处理方法可以是转交给另一个链,如用户链,或者直接执行一些操作,这些操作包括ACCEPT(通过)、DROP(删除)、REJECT(拒绝)、QUEUE(排队)或RETURN(返回)。,IP地址:用来说明网络上计算机位置的名称。子网掩码:和IP地址匹配来指定一组计算机的设置,通常用来指定一个网络段。子网掩码可以有多种表达形式。如:和都表示从这一组计算机。端口:端口是计算机之间通信的门户,如果计算机相当一个城市的话,IP地址就是城市的地址,而端口就是进出城市的城门。,13.5.2 iptables一些简单操作1添加

50、规则:iptables A 链名 s 源地址 d 目标地址 p 协议 j 执行目标 该指令是对某个链添加一条新规则。如:#iptables A INPUT s 192.168.0.1/24 p tcp dport 22 j ACCEPT 这条指令会对INPUT链添加一条新规则,该规则会自动添加到最后一条。该规则指定了对所有来自的计算机全部允许通过tcp协议连接该机的22端口。只有指定协议为tcp或udp时才可以使用dport(目标端口)和sdport(源端口),再比如:#iptables A INPUT p all j DROP 这条指令会对所有的IP地址,使用的所有协议拒绝。由于链是按照序号

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号