650 likes | 928 Views
Linux 基础及应用. 第 7 章 管理网络服务. 7.1 网络配置文件. 7.1.1 /etc/hosts /etc/hosts 中包含了 IP 地址和主机名之间的映射,还包括主机名的别名, IP 地址的设计使计算机容易识别,但对于人却很难记住它们,为了解决这个问题,创建了 /etc/hosts 这个文件。. 7.1.2 /etc/services /etc/services 中包含了服务名和端口号之间的映射,不少的系统程序要使用这个文件. 7.1.3 /etc/host.conf
E N D
Linux基础及应用 第7章 管理网络服务 陈英 梁建武主编 中国水利水电出版社
7.1 网络配置文件 7.1.1 /etc/hosts /etc/hosts中包含了IP地址和主机名之间的映射,还包括主机名的别名,IP地址的设计使计算机容易识别,但对于人却很难记住它们,为了解决这个问题,创建了/etc/hosts这个文件。 陈英 梁建武主编 中国水利水电出版社
7.1.2 /etc/services /etc/services中包含了服务名和端口号之间的映射,不少的系统程序要使用这个文件 陈英 梁建武主编 中国水利水电出版社
7.1.3 /etc/host.conf /etc/host.conf文件指定如何解析主机名,Linux通过解析器库来获得主机名对应的IP地址。 陈英 梁建武主编 中国水利水电出版社
7.1.4 /etc/nsswitch.conf /etc/nsswitch.conf文件是由SUN公司开发并用于管理系统中多个配置文件查找的顺序,它比/etc/host.conf文件提供了更多的功能。/etc/nsswitch.conf中的每一行或者是注释(以#号开头)或者是一个关键字后跟冒号和一系列要试用的有顺序的方法。每一个关键字是在/etc/目录可以被/etc/nsswitch.conf控制的/etc文件的名字。 陈英 梁建武主编 中国水利水电出版社
7.1.5 /etc/sysconfig/network 该文件用来指定服务器上的网络配置信息,包含了控制和网络有关的文件和守护程序的行为的参数。 陈英 梁建武主编 中国水利水电出版社
7.1.6 /etc/resolv.conf 文件/etc/resolv.conf配置DNS客户,它包含了主机的域名搜索顺序和DNS服务器的地址,每一行应包含一个关键字和一个或多个的由空格隔开的参数。 陈英 梁建武主编 中国水利水电出版社
7.1.7 /etc/init.d/network 这个文件包括了声明IP地址、掩码、网络、广播地址和缺省路由器的变量。 陈英 梁建武主编 中国水利水电出版社
7.2 配置FTP服务 7.2.1 FTP协议 TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流。FTP协议的任务是从一台计算机将文件传送到另一台计算机,它与这两台计算机所处的位置、联接的方式、甚至是否使用相同的操作系统无关。 陈英 梁建武主编 中国水利水电出版社
7.2.2 FTP服务器vsftpd的配置 1.安装vsftpd服务器 vsftpd是现在Linux最好的FTP服务器工具之一,其中的vs就是“Very Secure”(很安全)的缩写 。 陈英 梁建武主编 中国水利水电出版社
假如选择完全安装Linux,则系统会默认安装vsftpd服务器。我们能够在终端命令窗口输入以下命令进行验证:假如选择完全安装Linux,则系统会默认安装vsftpd服务器。我们能够在终端命令窗口输入以下命令进行验证: [root@localhost root]# rpm –qa|grep vsftpd • 假如结果显示为“vsftpd-1.1.3-8”,则说明系统已安装vsftpd服务器。假如安装 Linux时没有选择vsftpd服务器,则能够在图形环境下单击“主菜单→系统配置→添加/删除应用程序”菜单项,在出现的“软件包管理”对话框里确保选中“FTP服务器”选项,然后单击“更新”按钮,按照屏幕提示插入第3张安装光盘即可开始安装。 陈英 梁建武主编 中国水利水电出版社
2.启停vsftpd服务 采用独立运行方式启动vsftpd服务,方法是在终端命令窗口运行以下命令: [root@localhost root]# /etc/rc.d/init.d/vsftpd start 重新启动vsftpd服务: [root@localhost root]# /etc/rc.d/init.d/ vsftpd restart 关闭vsftpd服务: [root@localhost root]# /etc/rc.d/init.d/ vsftpd stop 陈英 梁建武主编 中国水利水电出版社
3.vsftpd的配置 vsftpd共有3个配置文档,它们分别是: vsftpd.ftpusers:位于/etc目录下。它指定了哪些用户账户不能访问FTP服务器,例如root等。 vsftpd.user_list:位于/etc目录下。该文档里的用户账户在默认情况下也不能访问FTP服务器,仅当vsftpd .conf配置文档里启用userlist_enable=NO选项时才允许访问。 vsftpd.conf:位于/etc/vsftpd目录下。它是个文本文档,用户能够用Kate、Vi等文本编辑工具对他进行修改,以此来自定义用户登录控制、用户权限控制、超时配置、服务器功能选项、服务器性能选项、服务器响应消息等FTP服务器的配置。 陈英 梁建武主编 中国水利水电出版社
(1)用户登录控制 anonymous_enable=YES,允许匿名用户登录。 no_anon_password=YES,匿名用户登录时无需输入密码。 local_enable=YES,允许本地用户登录。 deny_email_enable=YES,能够创建一个文档保存某些匿名电子邮件的黑名单,以防止Dos攻击。 banned_email_file=/etc/vsftpd.banned_emails,当启用deny_email_enable功能时,所需的电子邮件黑名单保存路径(默认为/etc/vsftpd.banned_emails)。 陈英 梁建武主编 中国水利水电出版社
(2)用户权限控制 write_enable=YES,开启全局上传权限。 local_umask=022,本地用户的上传文档的umask设为022(系统默认是077,一般都能够改为022)。 anon_upload_enable=YES,允许匿名用户具备上传权限,很明显,必须启用write_enable=YES,才能够使用此项。同时还必须建立一个允许ftp用户能够读写的目录(前面说过,ftp是匿名用户的映射用户账号)。 anon_mkdir_write_enable=YES,允许匿名用户有创建目录的权利。 chown_uploads=YES,启用此项,匿名上传文档的属主用户将改为别的用户账户,注意,这里建议不要指定root账号为匿名上传文档的属主用户。 陈英 梁建武主编 中国水利水电出版社
chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户账号,此处的whoever自然要用合适的用户账号来代替。 chroot_list_enable=YES,能够用一个列表限定哪些本地用户只能在自己目录下活动,假如chroot_local_user=YES,那么这个列表里指定的用户是不受限制的。 chroot_list_file=/etc/vsftpd.chroot_list,假如chroot_local_user=YES,则指定该列表(chroot_local_user)的保存路径(默认是/etc/vsftpd.chroot_list)。 nopriv_user=ftpsecure,指定一个安全用户账号,让FTP服务器用作完全隔离和没有特权的单独用户。这是vsftpd系统推荐选项。 async_abor_enable=YES,强烈建议不要启用该选项,否则将可能导致出错。 ascii_upload_enable=YES; ascii_download_enable=YES,默认情况下服务器会假装接受ASCII模式请求但实际上是忽略这样的请求,启用上述的两个选项能够让服务器真正实现ASCII模式的传输。 陈英 梁建武主编 中国水利水电出版社
(3)用户连接和超时选项 idle_session_timeout=600,能够设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。 data_connection_timeout=120,设定默认的数据连接超时时间。 陈英 梁建武主编 中国水利水电出版社
(4)服务器日志和欢迎信息 dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文档的内容。 ftpd_banner=Welcome to blah FTP service,能够自定义FTP用户登录到服务器所看到的欢迎信息。 xferlog_enable=YES,启用记录上传/下载活动日志功能。 xferlog_file=/var/log/vsftpd.log,能够自定义日志文档的保存路径和文档名,默认是/var/log/vsftpd.log。 陈英 梁建武主编 中国水利水电出版社
7.3 配置邮件服务器 7.3.1 电子邮件简介 1.电子邮件工作原理 电子邮件的工作过程遵循客户-服务器模式。每份电子邮件的发送都要涉及到发送方与接收方,发送方式构成客户端,而接收方构成服务器,服务器含有众多用户的电子信箱。发送方通过邮件客户程序,将编辑好的电子邮件向邮局服务器(SMTP服务器)发送。邮局服务器识别接收者的地址,并向管理该地址的邮件服务器(POP3服务器)发送消息。 陈英 梁建武主编 中国水利水电出版社
2.电子邮件协议 电子邮件在发送与接收过程中都要遵循SMTP、POP3等协议,这些协议确保了电子邮件在各种不同系统之间的传输。其中SMTP负责电子邮件的发送,而POP3则用于接收Internet上的电子邮件。 陈英 梁建武主编 中国水利水电出版社
1)SMTP • SMTP称为简单邮件传输协议(Simple Mail Transfer Protocol),目标是向用户提供高效、可靠的邮件传输。SMTP的一个重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。 • SMTP是个请求/响应协议 ,它监听25号端口,用于接收用户的Mail请求,并与远端Mail服务器建立SMTP连接。 陈英 梁建武主编 中国水利水电出版社
(2)POP3 • POP的全称是 Post Office Protocol,即邮局协议,用于电子邮件的接收,现在常用的是第3版 ,所以简称为 POP3。POP3仍采用Client/Server工作模式,工作方式是客户端程序连接远程主机的110端口。 陈英 梁建武主编 中国水利水电出版社
(3)IMAP • IMAP是Internet Message Access Protocol的缩写,顾名思义,主要提供的是通过Internet获取信息的一种协议。 • IMAP是一种用于邮箱访问的协议,使用IMAP协议可以在客户端管理服务器上的邮箱,它与pop不同,邮件是保留在服务器上而不是下载到本地。 陈英 梁建武主编 中国水利水电出版社
7.3.2 sendmail服务器 sendmail是基于简单邮件传输协议的电子邮件消息传输软件。1982年由Eric Allman在美国加州大学伯克利分校首次开发成功。 Unix系统的用户中,sendmail是应用最广的电子邮件服务器。sendmail作为一种免费的邮件服务器软件,已被广泛的应用于各种服务器中 。 陈英 梁建武主编 中国水利水电出版社
1.安装sendmail服务器 如果不确定Linux是否已经安装有sendmail,可以输入以下命令查看: [root@localhost root]# rpm –qasendmail 如果已经安装,则显示sendmail的版本信息,默认安装下为sendmail-8.12.8-4。如果确定没有安装,请在图形界面下依次选择单击“主菜单→系统设置→添加/删除应用程序”,然后在打开的“软件包管理”窗口里选中“邮件服务器”选项,并选择相应的服务,单击“更新”后按照提示安装即可。 陈英 梁建武主编 中国水利水电出版社
2.启动sendmail服务器 方法一:在图形界面下依次选择单击“主菜单→系统设置→服务器设置→服务” 。 方法二:使用带参数的sendmail命令控制邮件服务器的运行 。 陈英 梁建武主编 中国水利水电出版社
3.配置sendmail服务器 配置步骤为: 第一步:用模板文件sendmail.mc生成sendmail.cf配置文件,并导出到/etc/mail/目录下,使用命令行:m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 第二步:使用如下命令重启sendmail服务器: [root@localhost root]# /etc/rc.d/init.d/sendmail restart。 陈英 梁建武主编 中国水利水电出版社
4.设置邮件别名 • 首先,新增一个账号mailOS,然后用Linux的文本编辑器打开/etc/aliases,在里面加上dearpeter: mailOS和truepeter: mailOS这两个命令行。 • 然后在命令提示符下运行newaliases命令,以要求sendmail重新读取/etc/aliases文件。如果正确无误,会出现一段回应消息,表示配置成功。 陈英 梁建武主编 中国水利水电出版社
5.安装并启用IMAP (1)POP3(IMAP)服务器安装。 在命令提示符下使用如下命令检查系统是否安装IMAP [root@localhost root]# rpm -qa imap 如果已经安装,则显示imap的版本信息。如果确定没有安装,请在图形界面下依次选择单击“主菜单→系统设置→添加/删除应用程序”,然后在打开的“软件包管理”窗口里选中“邮件服务器”选项,并选择相应的服务,单击“更新”后按照提示安装即可。 另一种办法是:插入第2张安装光盘,使用下面的命令行开始安装: [root@localhost root]# cd /mnt/cdrom/RedHat/RPMS [root@localhost root]# rpm -ivh imap-2001a-18.i386.rpm 陈英 梁建武主编 中国水利水电出版社
(2)启用POP3(IMAP)服务。 启用POP3服务时,首先修改/etc/xinetd.d/ipop3文件,将其中的disable=yes改为disable=no后保存;然后重新启动xinetd程序来读取这个修改过的配置文件,使之生效。 其命令行如下: [root@localhost root]# /etc/rc.d/init.d/xinetd reload 启动IMAP服务的步骤跟POP3一样,只不过IMAP的配置文件为/etc/xinetd.d/imap。 陈英 梁建武主编 中国水利水电出版社
7.4 网络文件系统 7.4.1 网络文件系统简介 网络文件系统(NFS,Network File System)是一种将远程主机上的分区(目录)经由网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。 陈英 梁建武主编 中国水利水电出版社
NFS的使用有如下优点: (1)用户通常要访问的数据可以集中存储在一台中央服务器上,客户可以通过NFS访问中央服务器上的数据,极大地为本地工作站节约了磁盘空间。 (2)客户访问远程主机上的文件是透明的,不必知道文件真正的物理存储位置。 (3)诸如软驱,CDROM之类的存储设备可以通过NFS供其他机器使用,可减少整个网络上的可移动介质设备的数量。 陈英 梁建武主编 中国水利水电出版社
7.4.2 配置网络文件系统 1.启用NFS服务 首先检测NFS服务是否正常运行,可以使用命令行: [root@localhost root]# /etc/rc.d/init.d/nfs status 如果运行正常,则提示nfs正在运行。 如果没有启用,在命令提示符下使用如下命令启用NFS服务: [root@localhost root]# /etc/rc.d/init.d/nfs start 陈英 梁建武主编 中国水利水电出版社
2.服务器端配置要导出的文件系统或目录 服务器端通过/etc/exports文件配置要导出的文件系统或目录,该文件控制对目录的共享。 书写规则是:共享目录 主机(参数) 例如: /mnt/cdrom *.linux.com(ro, sync) *.unix.com(rw, sync) 陈英 梁建武主编 中国水利水电出版社
主机可以使用如下几种格式: (1)单个机器:可以使用一个能够被服务器解析的全限定域名、主机名或 IP 地址。 (2)使用通配符指定的一系列机器:使用“*”或“?”字符来指定字符串匹配。通配符不能被用在 IP 地址中。当在全限定域名中指定通配符时,点(.)不包括在通配符的匹配范围内。 例如:*.linux.com 包括 bbs.linux.com,但不包括bbs.redhat.linux.com. (3)IP网络:使用 a.b.c.d/z形式,其中a.b.c.d表示网络,z表示子网掩码中的位数(如 192.168.0.0/24)。另一种可以接受的格式是 a.b.c.d/netmask,其中a.b.c.d 表示网络,netmask是子网掩码(如 192.168.100.8/255.255.255.0)。 陈英 梁建武主编 中国水利水电出版社
3.使用mount挂载NFS文件系统 • 可以简单地使用mount命令挂载NFS服务器的文件系统,挂载远程文件系统和挂载本地的文件系统是一样的,唯一的不同是要在文件系统的描述前面加上远程文件系统的主机名称,如果该主机在/etc/hosts中出现了,那么在命令中使用主机名字就可以了,否则就要使用IP地址。 • 其语法格式一般为: # mount servername:/exported_dir /dir_to_mount –t nfs 陈英 梁建武主编 中国水利水电出版社
当要卸载服务器的文件系统时,和本地一样,使用umount命令:当要卸载服务器的文件系统时,和本地一样,使用umount命令: [root@localhost root]# umount /home/import 陈英 梁建武主编 中国水利水电出版社
4.使用/etc/fstab启动时自动挂载 使用/etc/fstab文件可以在启动时自动挂载远程主机的文件系统。/etc/fstab文件包含了以哪种方式挂载哪种文件系统的信息。对于NFS的mount,它包括了服务器名字、释放(export)的服务器目录、本地的挂载点(mount point)和控制挂载的一些选项。 陈英 梁建武主编 中国水利水电出版社
7.5 安装Web服务器 7.5.1 Web服务器概述 1.Web服务器简介 WWW 是 World Wide Web (环球信息网)的缩写,也可以简称为 Web,中文名字为“万维网”。它起源于1989年3月,由欧洲量子物理实验室 CERN(the European Laboratory for Particle Physics)所发展出来的主从结构分布式超媒体系统。 陈英 梁建武主编 中国水利水电出版社
2.常用的Web服务器 在Unix和Linux平台下使用最广泛的免费HTTP服务器是W3C、NCSA和Apache服务器,而Windows平台使用IIS作为Web服务器。 陈英 梁建武主编 中国水利水电出版社
1)Microsoft IIS Microsoft的Web服务器产品为Internet Information Server (IIS),IIS是允许在公共Intranet或Internet上发布信息的Web服务器。 陈英 梁建武主编 中国水利水电出版社
(2)IBM WebSphere WebSphere Application Server是一种功能完善、开放的Web应用服务器,是IBM电子商务计划的核心部分,它是基于 Java 的应用环境,用于建立、部署和管理 Internet 和 Intranet Web 应用程序。 陈英 梁建武主编 中国水利水电出版社
(3)BEA WebLogic BEA WebLogic Server 是一种多功能、基于标准的Web应用服务器,为企业构建自己的应用提供了坚实的基础。 陈英 梁建武主编 中国水利水电出版社
(4)Apache Apache仍然是世界上用得最多的Web服务器,市场占有率达60%左右。它源于NCSA httpd服务器,当NCSA WWW服务器项目停止后,那些使用NCSA WWW服务器的人们开始交换用于此服务器的补丁,这也是Apache名称的由来(pache补丁)。 陈英 梁建武主编 中国水利水电出版社
(5)Tomcat Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。 Tomcat是由Java Servlet 2.2和JavaServer Pages 1.1技术的标准实现,是基于Apache许可证下开发的自由软件。Tomcat是完全重写的Servlet API 2.2和JSP 1.1兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代码,特别是Apache服务适配器。随着Catalina Servlet引擎的出现,Tomcat第四版号的性能得到提升,使得它成为一个值得考虑的Servlet/JSP容器,因此目前许多WEB服务器都是采用Tomcat。 陈英 梁建武主编 中国水利水电出版社
7.5.2 Apache的特性 1.Apache1.3的特性 • 支持最新的HTTP/1.1通信协议。 • 拥有简单而强有力的基于文件的配置过程。 • 支持通用网关接口。 • 支持基于IP和基于域名的虚拟主机。 • 支持多种方式的HTTP认证。 • 集成Perl处理模块。 • 集成代理服务器模块。 • 支持实时监视服务器状态和定制服务器日志。 • 支持服务器端包含指令(SSI)。 • 支持安全Socket层(SSL)。 • 提供用户会话过程的跟踪。 • 支持FastCGI。 • 通过第三方模块可以支持Java Servlets 。 陈英 梁建武主编 中国水利水电出版社
2.Apache2.0的新特性 (1)Unix线程 在支持POSIX线程的Unix系统上,现在Apache能在混合的多进程、多线程模式下运行,使很多(但非全部)配置的可伸缩性得到了改善。 (2)新的编译系统 重写了编译系统,现在是基于autoconf和libtool的,使得Apache的配置系统与其他软件包更加相似。 (3)多协议支持 Apache现在已经拥有了能够支持多协议的底层构造。mod_echo就是一个例子。 (4)对非Unix平台更好的支持 Apache2.0在诸如BeOS、OS/2、Windows等非Unix平台上有了更好的速度和稳定性。随着平台特定的多路处理模块(MPM)和Apache可移植运行时(APR)的引入,Apache在这些平台上的指令由它们本地的API指令实现。避免了以往使用POSIX模拟层造成的bug和性能低下。 陈英 梁建武主编 中国水利水电出版社
(5)新的 Apache API 2.0中模块的API有了重大改变。很多1.3中模块排序和模块优先级的问题已经不复 存在了。2.0自动处理了很多这样的问题,模块排序现在用per-hook的方法进行,从而拥有了更多的灵活性。另外,增加了新的调用以提高模块的性能,而无需修改Apache服务器核心。 (6)IPv6 支持 在所有能够由Apache可移植运行时库(APR library)提供IPv6支持的系统上,Apache默认使用IPv6侦听套接字。另外,Listen、NameVirtualHost、VirtualHost指令也支持IPv6的数字地址串(比如:"Listen [2001:db8::1]:8080")。 陈英 梁建武主编 中国水利水电出版社
(7)过滤器 Apache的模块现在可以写成过滤器的形式,当内容流经它进入服务器或从服务器流出的时候进行处理。比如,可以用mod_include中的INCLUDES过滤器将CGI脚本的输出解析为服务器端包含指令。而mod_ext_filter允许外部程序充当过滤器的角色,就像用CGI程序做处理器一样。 (8)多语种错误应答 返回给浏览器的错误信息现在已经用SSI文档实现了多语种化。管理员可以利用此功能进行定制以达到感观的一致。 (9)简化了配置 很多易混淆的配置项已经进行了简化。经常产生混淆的Port和BindAddress配置项已经取消了;用于绑定IP地址的只有Listen指令;ServerName指令中指定的服务器名和端口仅用于重定向和虚拟主机的识别。 陈英 梁建武主编 中国水利水电出版社
(10)本地 Windows NT Unicode 支持 Apache2.0在Windows NT上的文件名全部使用utf-8编码。这个操作直接转换成底层的Unicode文件系统,由此为所有以Windows NT(包括Windows 2000/XP/2003)为基础的安装提供了多语言支持。这一支持目前尚未涵盖Windows 95/98/ME系统,因为它们仍使用机器本地的代码页进行文件系统的操作。 (11)正则表达式库更新 Apache2.0包含了Perl兼容的正则表达式库(PCRE)。所有正则表达式现在都使用了更强大的Perl 5语法。 陈英 梁建武主编 中国水利水电出版社