Linux操作系统PPT教程19Internet

上传人:hs****ma 文档编号:587933130 上传时间:2024-09-06 格式:PPT 页数:181 大小:523.50KB
返回 下载 相关 举报
Linux操作系统PPT教程19Internet_第1页
第1页 / 共181页
Linux操作系统PPT教程19Internet_第2页
第2页 / 共181页
Linux操作系统PPT教程19Internet_第3页
第3页 / 共181页
Linux操作系统PPT教程19Internet_第4页
第4页 / 共181页
Linux操作系统PPT教程19Internet_第5页
第5页 / 共181页
点击查看更多>>
资源描述

《Linux操作系统PPT教程19Internet》由会员分享,可在线阅读,更多相关《Linux操作系统PPT教程19Internet(181页珍藏版)》请在金锄头文库上搜索。

1、Linux操作系统操作系统用用Linux构建构建Intranet 周炯周炯上海艾基信息技术有限公司上海艾基信息技术有限公司1Acegene IT Co. Ltd.内容提要内容提要Apache服务器的安装与设置FTP服务器的安装与设置DHCP服务器的安装与设置DNS服务器的安装与设置邮件服务器的安装与设置Linux下NAT服务器简介2Acegene IT Co. Ltd.DNS服务器服务器域名的介绍BIND的介绍(BerkeleyInternetNameDomain),当前有三版:bind4、bind8、bind9),支持多处理器、线程安全操作、公钥加密、IPv6支持、增量区传送等)3Acege

2、ne IT Co. Ltd.BINDBIND的组成:named守护进程,回答用户查询库例程,联系DNS分布式数据库的服务器DNS的命令接口:nslookup、dig和host4Acegene IT Co. Ltd.BINDBIND名字服务器的分类:权威:权威:一个区的正式代表主服务器:主服务器:区数据的首要服务器,数据在磁盘从服务器:从服务器:从主服务器复制得到它的数据存根:存根:和从服务器类似,但仅复制名字服务器的数据分支:分支:仅在域内可见的服务器(秘密服务器)非权威:非权威:用缓存数据回答查询:未知数据有效缓存:缓存:缓存以前的查询:没有本地区转发器:转发器:代替许多客户机执行查询,创建

3、一个大的缓存递归:递归:代替您查询,直到返回答案或出错非递归:非递归:如果不能回答查询,则返回下一服务器地址5Acegene IT Co. Ltd.BIND解板库例程:客户机例程:gethostbyname轻量级例程:lwresd(对不支持IPv6的主机可以使用,要在服务器中包含lwres语句)6Acegene IT Co. Ltd.10-A1-QBIND非/递归工作原理:例:访问:comroot(“.”)2-Q4-Q5-R3-R6-Q7-R8-Q9-AQ=QueryA=AnswerR=推荐7Acegene IT Co. Ltd.BIND缓存和效率:早期缓存机制仅用于肯定回答,但实验发现DNS

4、查询请求有60%都是无效查询,因此后来实现了否定缓存8Acegene IT Co. Ltd.BIND解析器配置:/etc/resolv.confsearch:列出了如果主机名不完整时要查询的域如:.wtb.org.注:此文件中的DNS服务器地址必须是递归的(解析器不懂推荐)最多,可配置三个DNS地址,按顺序访问9Acegene IT Co. Ltd.BIND下载安装BIND:www.isc.org(最新版BIND需openssl0.9.6e以上版本,在www.openssl.org下载最新版安装)10Acegene IT Co. Ltd.BIND主配置文件:/etc/named.conf区文件

5、目录:/var/named/区文件:named.ca/根服务器信息,在 IT Co. Ltd.BINDlocalhost.zone$TTL 86400$ORIGIN localhost. 1D IN SOA root ( 42 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum 1D IN NS 1DINA127.0.0.112Acegene IT Co. Ltd.BINDnamed.local$TTL 86400 IN SOA localhost. root.localhost. ( 19970227

6、00 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS localhost.1INPTRlocalhost.13Acegene IT Co. Ltd.BIND/etc/named.conf注:1、每句以分号结束2、大括号用于分组3、可用:named-checkconf和named-checkzone检查语法错误14Acegene IT Co. Ltd.BIND主配置语句类型主配置语句类型include:插入一个文件options:设置名字服务器的全局配置选项和默认值server:指定每

7、个服务器所特有的选项lwres:将DNS也配置成一个轻量级解析器key:定义验证信息acl:定义访问控制列表zone:定义资源记录的一个区trusted-keys:定义预先设置的密钥controls:用ndc来定义用于控制名BIND的渠道logging:指定日志记录分类及其目的位置view:定义域名空间的一个veiw(视图)15Acegene IT Co. Ltd.BINDinclude:补充文件引入named.conf文件includepath;options:指定全局选项,仅有一个9.0版本有50个左右的选项,以下是常用选项:versionstring;实际版本号directorypath

8、;启动目录notifyyes|no;yes:数据发生改变,通知从服务器also-notifyservers_ipaddrs;empty:通知所有DNS服务器16Acegene IT Co. Ltd.BIND- options语句语句recursionyes|no;yes:递归/非递归解析allow-recursionaddress_listallhost允许的主机transfer-formatone-answer|many-answers;主服务器到从服务器一次传输的记录数transfers-innumber; 10同时发生入站区传送数目transfers-outnumber; 10同时发生出

9、站区传送数目transfers-per-nsnumber;2每个站点最大数目transfer-sourceIP-address; 允许的源IP地址(需和allow中定义的相同)17Acegene IT Co. Ltd.BIND- options语句语句listen-onportip_port address_list 53allquery-sourceaddressip_addr portip_port 查询其它名字服务器的接口和端口(用于有防火墙中)forwardersin_addr;in_addr;.; emptylist转发服务器列表forwardonly|first;first转发方式

10、,仅转发|先转发,不行再自己查询,转发服务器中有大容易的内存,用于缓存注:转发区域必须是递归18Acegene IT Co. Ltd.BIND- options语句语句allow-queryaddress_list;allhosts可以查询的主机allow-transferaddress_list; allhosts可以请求传输区数据的主机blackholeaddress_list; empty从不希望与之通信的主机19Acegene IT Co. Ltd.BIND-acl语句语句aclacl_nameaddress_list;除also-notify语句外,其它地方都可使用必须在named.

11、conf中定义必须在使用前定义默认定义:any、localnets、localhost、none20Acegene IT Co. Ltd.BINDserver语句语句serverip_addrbogusyes|no;no:伪服务器provide-ixfryes|no;yes(v9):发送增量区数据(主服务器)request-ixfryes|no:yes(v9):请求增量区数据(从服务器)support-ixfryes|no;no(v8):同上ednsyes|no;yes:extendDNS协议transfersnumber;2(v9):并发传数量transfer-formatone-answe

12、r|many-answers;:支持格式keyskey-id;key-id;.;:key中定义的密钥ID21Acegene IT Co. Ltd.BIND- logging语句语句术语:channel(通道):消息能去的地方:syslog或文件category(类别):named消息类型module(模块):产生消息的来源模块名facility(设备):syslog设备名severity(严重性):出错消息的等级logging语法:loggingchannelchannel_name(filepath_nameversions(number|unlimited)sizesize_spec|sy

13、slog(kern|user|mail|daemon|auth|syslog|lpr|news|uucp|cron|authpriv|ftp|local0|local1|local2|local3|local4|local5|local6|local7)|null);22Acegene IT Co. Ltd.BIND- logging语句语句severity(critical|error|warning|notice|info|debuglevel|dynamic);print-categoryyes_or_no;print-severityyes_or_no;print-timeyes_or

14、_no;category模块名;模块:xfer-in:区传送default:默认security:安全os:系统panic:恐慌statistics:统计信息config:配置文件maintenance:维护23Acegene IT Co. Ltd.BINDzone语句语句定义权威性的区域装载根服务器地址和名称一、配置主服务器zonedomain_nametypemaster;filepath;allow-queryaddress_list; allallow-transferaddress_list;allallow-updateaddres_list;none:动态更新、联系DHCP(限本

15、地网络使用)zone-statisticsyes|nono:保留统计信息;24Acegene IT Co. Ltd.BINDzone语句语句二、从服务器配置zonedomain_nametypeslave|stub;:stub:只传送NS记录(即存根)filepath;:从主服务器传来的区数据mastersip_addr;ip_addr;.;nodefault:主服务器地址(主服务器有多个网络接口时)allow-queryaddress_list;allallow-transferaddress_list;all;25Acegene IT Co. Ltd.BINDzone语句语句三、设置根服务

16、器的线索zone.typehint;filepath;named由此“线索”查找其它域的信息,否则只能维护本域四、设置一个转发区zonedomain_nametypeforward;forwardonly|first;forwardersip_addr;ip_addr;.;实现一个对外部不可见的DNS26Acegene IT Co. Ltd.BINDkey语句语句key语句:定义用于某个特定服务器身份验证的有名字的加密密钥。keykey-idalgorithmstring;secretstring;必须在named.conf中先定义方可使用于某个服务器关联时,只要在该服务器的server中的k

17、eys中包括此key_id;用于验证来自那个服务器的请求,又用来对那些请求的响应作签名27Acegene IT Co. Ltd.BIND-controls语句语句定义rndc如何控制一个正在运行的named进程controlsinetip_addr port allowaddres_listkeyskey_list;默认端口号是:953rndc-confgenb256/会产生密钥方法一:可让named和rndc都参考同一个配置文件方法二:把产生结果分别写入/etc/rndc.key和/etc/named.conf,此方法用于rndc和dns不在一个主机28Acegene IT Co. Ltd.

18、BINDsplit DNS和和view(仅仅v9)分隔DNS对不同的网络的可视程度下表是对内外服务配置的差别参数外部内部directory/var/named/external/var/named/internallisten-on外部接口内部接口recursionnoyesallow-queryany仅内部网forward不用forwardonlyforwardersexternal_ns29Acegene IT Co. Ltd.BINDsplit DNS和和view(仅仅v9)viewview-namematch-clientsaddress_list;:控制谁能看到view_option

19、;.zone_statement;.;view是按顺序来处理,所以先加上最严格的限制view是全无全有的概念,即要么全加要么都不加30Acegene IT Co. Ltd.BINDDNS数据库数据库一、资源记录格式:namettlclasstype data特殊字符:;:引入注释:当前的域名():允许数据跨行*:通配符(仅由named字段使用)name:表示该记录所描述的实体(一个主机或域),如果几个连续的记录涉及同一个实体,则第一条记录之后可以省略这个名字。可以用相对名或全名,全名后要加.ttl:存活时间,以秒为单位。默认以开头的$TTL设置的值class:指定网络类型:IN对应intern

20、et,CH对应chaosNet,HS对应Hesiod31Acegene IT Co. Ltd.BINDDNS数据库数据库类型名称功能区记录SOAStartOfAuthority定义一个DNS区NSNameServer标识区服务器,授权子域基本记录AIPv4Address名字到地址的转换AAAAoriginalipv6address被丢弃又被重用A6IPv6名字到ipv6地址的转换(仅bind9有)PTRPointer地址到名字转换DNAMERedirection对反向ipv6查询的重定向MXMailExchanger控制邮件的路由安全记录KEYPublicKeyDNS名称的公钥NXTNext和

21、DNSSEC一直使用,否定回答SIGSignature带签名、经过身份验证的区可选记录CNAMECanonicalName主机的昵称或者别名LOCLocation地理位置和范围SRVServices提供常见服务的位置TXTText注释32Acegene IT Co. Ltd.SOA记录记录INSOA.(20041101;序列号7200;刷新时间(2h)1800;重试时间(30m)604800;终止时间(1w)7200);否定缓存存活时间(2h):名字,可以用$ORIGIN设置;IN:类别;SOA:记录类型,.是该区的主名字服务器,.是管理员邮件地址。20041101:是序列号7200:指定从服

22、务器应该多长时间联系主服务器,1-6小时为合适值1800:多长时间后再重试604800;很长时间重试还是无效时则终止重试7200:被缓存的否定回答的存活时间33Acegene IT Co. Ltd.BINDNS记录记录NS:记录标识一个区的权威服务器,通常跟在SOA后面例:.INNSINNSINNS.每个权威名字服务器应该既要在的区文件中列出,也要在父区com的文件中列出。仅缓存服务器不能是权威的,不用列出它们。在这中不指定主/从服务器。34Acegene IT Co. Ltd.BIND其它记录其它记录A记录:记录DNS数据库的核心,定义一个主机名到IP地址的对应hostnamettlINAi

23、paddrPTR记录:执行从IP地址到主机名的反向映射。addr ttl INPTRhostname35Acegene IT Co. Ltd.BIND其它记录其它记录MX记录:定义邮件服务器namettlINMXpreference host .CNAME记录:为主机多分配几个名字nickname ttlINCNAMEhostname注:如果一个主机有别名,在引用时不能使用LOC记录:描述DNS对象的物理位置和大小,但不汲及技术操作。name ttlINLOClat lon alt size hpvp36Acegene IT Co. Ltd.BIND其它记录其它记录SRV记录:指定域内服务的位

24、置service.proto.name ttlINSRVpri wt port targetservice:标准互联网服务名称(www.iana.org/numbers.htm可查看)proto:不是tcp就是udpname:SRV记录引用的域pri:是MX风格的优先级wt:是用于几个服务器这间平衡负载的权重(为0表示不需负载平衡)port:是服务器服务的端口号target:目标服务器主机(为.表示禁止此服务)37Acegene IT Co. Ltd.BIND其它记录其它记录TXT记录:引入一段说明在DNS记录中38Acegene IT Co. Ltd.BIND区文件中的命令区文件中的命令$O

25、RIGINdomain-name :定义域名$INCLUDEfilename :包含文件$TTL default-ttl (必须存在):默认存活时间$GENERATE lots-of-args :成组生成对应注:命令必须从第一列开始。整个命令要在一行39Acegene IT Co. Ltd.BIND-粘合记录粘合记录在父DNS服务器中添加子DNS服务器中的A记录。以便于在父服务器中设置子域的DNS服务器,.INNS.INNSINAINA218.22.1.13840Acegene IT Co. Ltd.BIND-区传送区传送一、AXFR传送整个区数据二、IXFR只传送少量变更的数据provide

26、-ixfryes;/在服务器主区域设置,允许此方式发送request-ixfrno:/在服务器从区域设置,允许此方式接受注:IXFR只能用在全自动更新的区域41Acegene IT Co. Ltd.BIND-动态更新动态更新DHCP的配置:1.ddns-update-style这个就是动态DNS的更新方式,有几个选项,我用的是interim,可以用mandhcpd.conf找到另外的几个选项。2.ignoreclient-updates这个选项是不允许客户机更新DNS记录。当然,也可能允许,但会有一点问题。3.keyDHCP_UPDATER这个是更新DNS的KEY,是必须的。其中algorit

27、hm后的是生成key的算法,key的生成是用dnssec-keygen-aHMAC-MD5-b128-nUSERDHCP_UPDATER。4.zone要更新的zone,如果是本机就是DNSserver,primay就写127.0.0.1,要是其它机器是DNSserver,就写那台机器的IP。.primary127.0.0.1;keyDHCP_UPDATER;zone251.168.192.in-addr.arpa.primary127.0.0.1;keyDHCP_UPDATER;42Acegene IT Co. Ltd.BIND-动态更新动态更新named.conf的配置:keyDHCP_UP

28、DATERalgorithmHMAC-MD5;secretqhB+OR5yWo8BTXwk/m4ng;/必须和dhcp中一样。INtypemaster;;allow-updatekeyDHCP_UPDATER;43Acegene IT Co. Ltd.BIND-rndcstatus:状态报告stop:停止named,保存没做完的更新halt:中止named,不保存没做完的更新dumpdb:把DNS数据库转储到named_dump.db中stats:把统计转储到named.statsflush:刷新服务器的缓存reload:重新载入named.conf和区文件reloadzone:只重新载入指定

29、的区reconfig:重新载入配置文件和任何新的区querylog:开关对查询的日志功能44Acegene IT Co. Ltd.BIND-DDNSvi /etc/dhcpd.confddns-update-styleinterim;ignoreclient-updates;keyrndc-key1algorithmHMAC-MD5;secretkoWQcX9XbbyzuzeUi0dK0QKmmZtN4L8PjtY4NP3CkOM=;.primary127.0.0.1;keyrndc-key1;vi /etc/named.confkeyrndc-key1algorithmHMAC-MD5;se

30、cretkoWQcX9XbbyzuzeUi0dK0QKmmZtN4L8PjtY4NP3CkOM=;typemaster;.zone;allow-updatekeyrndc-key1;注:尽量不要手工修改区域文件,以免冲突而引起named库破坏45Acegene IT Co. Ltd. BIND-制作自己的制作自己的”根根”服务器服务器一、自己分发根“线索”文件中只有你DNS服务器的“线索”文件二、你要对com、net、org等域授权DNS服务器地址。46Acegene IT Co. Ltd.BIND-安全安全-chroot#useraddbind#cd/chroot/bind#mkdirchr

31、oot#mkdirchroot/dev#mkdirchroot/etc#mkdirchroot/etc/namedb#mkdirchroot/usr#mkdirchroot/usr/sbin#mkdirchroot/var#mkdirchroot/var/run#grepbind/etc/passwdchroot/etc/passswd#grepbind/etc/groupchroot/etc/group#cp/etc/namedb/named.confchroot/bind/etc/#cp/etc/localtimechroot/bind/etc/#cp-R/etc/namedb/chroo

32、t/etc/namedb/#mknodchroot/dev/nullc22#chmod666chroot/dev/null#cp/usr/local/sbin/named*chroot/sbin/#cp/usr/local/sbin/dns*chroot/sbin/chroot/sbin/namedubind(或id号)-t/chroot/bind/chroot47Acegene IT Co. Ltd.BIND-安全安全DNSSEC功能:使用公钥加密对区数据的来源进行身份验证,并验证其完整性一、dnssec-keygenaDSAb768nZONE./生成密钥对二、dnssec-makekeys

33、et-t3600s+0e+864000K.+003+12345/绑定签名三、由父区:dnssec-Kcom.+003+56789/父对子签名四、dnssec-signzone- IT Co. Ltd.BIND-启动脚本启动脚本if-f/etc/init.d/functions;then./etc/init.d/functionselif-f/etc/rc.d/init.d/functions;then./etc/rc.d/init.d/functionselseexit0fi#Sourcenetworkingconfiguration./etc/sysconfig/network$NETWOR

34、KING=no&exit0#Checkthatsmb.confexists.-f/etc/named.conf|exit0-d/var/namedb|exit0RETVAL=0start()KIND=Namedecho-n$Starting$KINDservices:daemon/usr/local/sbin/namedRETVAL=$?echo$RETVAL-eq0|RETVAL=1return$RETVAL49Acegene IT Co. Ltd.BIND-启动脚本启动脚本stop()KIND=Namedecho-n$Shuttingdown$KINDservices:killprocna

35、medRETVAL=$?echoreturn$RETVALrestart()stopstartreload()echo-n$Reloadingnamedallfile:/usr/local/sbin/rndcreloadRETVAL=$?echoreturn$RETVALstatus()/usr/local/sbin/rndcstatus50Acegene IT Co. Ltd.BIND-启动脚本启动脚本case$1instart)start;stop)stop;restart)restart;reload)reload;status)status;*)echo$Usage:$0start|s

36、top|restart|status|restartexit1esacexit$?51Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器的安装与设置1Apache服务器简介Apache服务器是由Apache软件基金(http:/www.apache.org)开发的一个功能强大的web服务器。在当前因特网上,Apache是应用最广泛的web服务器。根据美国的NetCraft在不久前的一份调查结果显示:Apache占据了互联网网页服务器市场份 额 的 59.51%, 而 Microsoft IIS只 占 据27.46%。52Acegene IT Co. Ltd.8.

37、1 Apache服务器的安装与设置服务器的安装与设置2Apache服务器安装安装Apache服务器有两种方法 :(1)通过rpm安装在RedHat Linux9.0安装光盘上可以找到Apache的rpm包,或者到RedHat的FTP服务器和其镜像站点找到Apache的rpm包。得到Apache的rpm包后,可以通过下面的命令安装:# rpm Uvh apache.x.x.x.rpm其中x.x.x为Apache的版本号,在RedHat Linux9.0里是2.0.40。 53Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器的安装与设置(2)通过源代码生成Apac

38、he获得Apache的源代码有几种不同的方法。RedHat的发布版本包含有Apache源代码的SRPM软件包,另外还可以在ftp:/中找 到 最 新 的 版 本 , 也 可 以 从http:/www.apache.org/下载Apache的源代码。目前最新的Apache源代码包的版本是httpd-2.0.44.tar.gz。获得Apache的源代码后的安装步骤如下:54Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器的安装与设置第一步,解压缩Apache源代码包#tarzxvfhttpd-2.0.44.tar.gz第二步,编译生成Apache服务器解压缩之后会

39、创建一个httpd-2.0.44的目录,进入该目录,并编译生成Apache服务器。#cdhttpd-2.0.44#./configureprefix=/data/apache#make#makeinstall55Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器的安装与设置3配置Apache服务器 Apache的配置文件是/etc/httpd/config/httpd.conf , Apache的运行参数由此文件决定,通过修改此文件,来调整 Apache的性能。在需要配置Apache服务器时,首先编辑httpd.conf文件,然后使用reload,restart

40、,stop和start等参数重新启动httpd进程使得该配置文件生效。如:#/etc/rc.d/init.d/httpdreload #/etc/rc.d/init.d/httpdstop 56Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器的安装与设置4 启动和关闭Apache服务器 通过/sbin/service命令启动Apache服务器:#/sbin/servicehttpdstart关闭Apache服务器,采用如下的命令:#/sbin/servicehttpdstop57Acegene IT Co. Ltd.8.1 Apache服务器的安装与设置服务器

41、的安装与设置4 启动和关闭Apache服务器 命令restart则用来先关闭服务器,然后再启动服务器:#/sbin/servicehttpdrestart如果编辑了httpd.conf配置文件,若要配置文件中的配置得以执行,又不想重新启动服务器,可以使用reload命令:#/sbin/servicehttpdreload 58Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 1安装vsftpd服务器如果选择完全安装RedHat Linux9.0,则系统就默认安装vsftpd服务器。如果安装RedHat Linux9.0时没有选择vsftpd服务器,则可以

42、按照如下操作安装vsftpd服务器。 单击【主菜单】|【系统设置】|【添加删除应用程序】菜单项,在出现的【软件包管理】对话框里选中“FTP服务器”选项,然后单击【更新】按钮,插入第三张安装光盘,按照屏幕提示完成安装。59Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置也可以直接插入第三张安装光盘,定位到/RedHat/RPMS下的vsftpd-1.1.3-8.i386.rpm安装包,然后在终端命令窗口运行以下命令即可开始安装。#rpmivhvsftpd-1.1.3-8.i386.rpm60Acegene IT Co. Ltd.8.2 FTP服务器的安装与

43、设置服务器的安装与设置 2 vsftpd配置在RedHat Linux9.0中,vsftpd共有3个配置文件,它们是: vsftpd.ftpusers 位于/etc目录下。指定哪些用户帐号不能访问FTP服务器。vsftpd.usr_list 位于/etc目录下。该文件里的用户帐号在默认情况下也不能访问FTP服务器。 vsftpd.conf 位于/etc/vsftpd目录下。该文件定义用户登录控制、用户权限控制、超时设置、服务器性能选项、服务器响应消息等FTP服务器的配置。 61Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 (1)用户登录控制anony

44、mous.enable=YES,允许匿名用户登录。no_anon_password=YES,匿名用户登录时不需要输入密码。local_enable=YES,允许本地用户登录。deny_email_enable=YES,可以创建一个文件保存某些匿名电子邮件的黑名单,以防止这些人使用Dos攻击。 62Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 (2)用户权限控制write_enable=YES,开启全局上传权限。anon_upload_enable=YES,允许匿名用户具有上传权限。anon_mkdir_wirte_enable=YES,允许匿名用户有

45、创建目录的权利。 chown_username=whoever,当启用chown_uploads=YES时,所指定的属主用户帐号,此处的whoever用合法的用户帐号来代替。chroot_list_enable=YES,用一个列表限定哪些本地用户只能在自己目录下活动。63Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 (3)用户连接和超时选项 idle_session_timeout=600,设定默认的空闲超时时间,用户超过这段时间不动作将被服务器踢出。 data_connection_timeout=120,设定默认的数据连接超时时间。64Acege

46、ne IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置(4)服务器日志和欢迎信息dirmessage_enable=YES,允许为目录配置显示信息,显示每个目录下面的message_file文件的内容。ftpd_banner=Welcome to FTP service,自定义FTP用户登录到服务器所看到的欢迎信息。xferlog_enable=YES,启用记录上传/下载活动日志功能。xferlog_file=/var/log/vsftpd.log,自定义日志文件 的 保 存 路 径 和 文 件 名 , 默 认 是/var/log/vsftpd.log。65Acegen

47、e IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 3 启动/重新启动/停止vsftpd服务 在终端命令窗口运行以下命令启动/重新启动/停止vsftpd服务:启动vsftpd服务: # /etc/rc.d/init.d/vsftpd start重新启动vsftpd服务:# /etc/rc.d/init.d/vsftpd restart关闭vsftpd服务:# /etc/rc.d/init.d/vsftpd stop66Acegene IT Co. Ltd.8.2 FTP服务器的安装与设置服务器的安装与设置 4 其余的ftp软件 Linux系统下的FTP服务器软件除了v

48、sftpd外,wu-ftpd、proftpd、pureftpd等也很出名,其中有不少支持数据库用户以及带宽和线程控制等功能,可以参考专门的资料来完成各种功能的FTP服务器的配置。67Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 1DHCP服务器工作的前提条件为了使DHCP服务器为windows主机服务,需要创建一个到地址255.255.255.255的路由,加这条路由命令到/etc/rc.d/rc.local使每次启动时自动运行。#routeadd-host255.255.255.255deveth0如 果 报 告 错 误 消 息 : 255.25

49、5.255.255:Unkown host 试 着 加 下 面 的 入 口 到 /etc/hosts文件:#routeadd-hostdhcpdeveth068Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 2安装DHCP服务器软件在RedHad Linux9.0中,默认情况下并没有安装DHCP服务器软件,可以在终端窗口下用如下命令安装:# mount /mnt/cdrom# rpm -ivh /mnt/cdrom/RedHat/RPMS/dhcp-3.0pl1-23.i386.rpm69Acegene IT Co. Ltd.8.3 DHCP服务器的

50、安装与设置服务器的安装与设置 3 配置DHCP服务器 DHCP服务器的配置文件是/etc/dhcpd.conf,下面给出一个 DHCP配置文件的例子:Sample /etc/dhcpd.confdefault-lease-time 1200;max-lease-time 9200;option subnet-mask 255.255.255.0;option broadcast-address 192.168.1.255;option routers 192.168.1.254;option domain-name-servers 192.168.1.1,192.168.1.2;option

51、domain-name “”;subnet 192.168.1.0 netmask 255.255.255.0 range 192.168.1.10 192.168.1.100;range 192.168.1.150 192.168.1.200;70Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 上例允许DHCP服务器分配两段IP地址范围给客户192.168.1.10-100和192.168.1.150-200,如果客户不继续请求DHCP地址,则1200秒后释放IP地址,否则最大允许租用的时间为9200秒。服务器发送下面的参数给DHCP客户机:用25

52、5.255.255.0作为子网掩码,用192.168.1.255作 为 广 播 地 址 , 用192.168.1.254作 为 默 认 网 关 , 用192.168.1.1 和192.168.1.2作为DNS服务器。71Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 可以为某块网卡指定固定的IP地址。无论何时,这块网卡将总是从DHCP服务器获得 固 定 的 IP地 址 , 加 下 面 的 语 句 到/etc/dhcpd.conf:hosthaagenhardwareethernet08:00:2b:4c:59:23;fixed-address192.

53、168.1.222;72Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 4 启动DHCP服务器启动DHCP服务器,可以在终端命令窗口输入:# /usr/sbin/dhcpd 或者用# ntsysv把DHCP服务自动启动。如果想在eth1设备上启动 dhcpd,则: # /usr/sbin/dhcpd eth173Acegene IT Co. Ltd.8.3 DHCP服务器的安装与设置服务器的安装与设置 5 测试DHCP服务 选择一台客户机,启动windows,将IP地址选择为自动获得,重新启动计算机后,执行ipconfig/all命令检查DHCP服务

54、是否设置正确。74Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 1 DNS的实现机制 DNS实际上是一个分布式的数据库系统,通常由两种实现机制:一种是用主机表,另一种是采用域名服务器。(1)主机表机制在互联网发展的初期,当时的主机数量不多,名字服务器是通过一张大型的主机表来完成。这张表被称为NIC注册主机表,它保存所有已经注册的网站的主机名和对应的IP地址。 75Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 (2)域名服务器系统域名服务器系统一般采用域名服务器来实现域名到IP地址之间的转换,目前常用的服务程

55、序是BIND(Berkeley Internet Name Domain,伯克利网间名字域)。 DNS用域的层次结构来组织主机名。一个域是在某些方面相关站点的集合。名字空间类似于一棵树,这棵树的入口用一个点表示,称为根域。根据在层次结构中的位置,一个域可以分为顶级域、第二级域、第三级域。76Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 2 安装BIND服务 (1)安装前的准备工作在 RedHat Linux 系 统 光 盘 内 有 bind-9.2.1-9.i386.rpm包,执行如下命令:# rpm ivh bind-9.2.1-9.i386.rp

56、m如果获得的BIND软件包是源代码bind-9.2.2.tar.gz,首先对该软件包进行解压缩。命令是:# tar zxvf bind-9.2.2.tar.gz并进行如下配置:# cd bind-9.2.2# ./configure prefix=/usr/local/bind77Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 (2)编译安装使用make命令进行编译,首先使用clean关键字清除目录内一些不必要的文挡。# make clean再 使 用 make的 depend关 键 字 改 变 设 置 文 件Makefile内的相关设置。# make

57、 depend执行make命令对BIND程序进行编译。# make 最后使用make install命令进行BIND程序安装。# make install78Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置(3)启动和关闭安 装 成 功 后 , 可 以 启 动 BIND, 在RedHatLinux中执行如下命令:#servicenamedstart如果要关闭BIND,执行如下命令:#/etc/init.d/namedstop79Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 3 配置DNS服务器 BIND中 几

58、乎 所 有 的 配 置 都 是 通 过/etc/named.conf文件完成的。这个文件以纯文本的形式存放各服务器信息和区信息。下面是该文件的一个例子。optionsdirectory“/var/named”;forwarders202.102.224.68;pid-file/var/run/named/named.pid;allow-queryany;allow-transferany;(内容接下页)80Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 zone “.” IN type hint; file“named.ca”; ;zone “” IN

59、 type master; file“”; ;zone “0.0.127.in-addr.arpa” IN type master; file “named.local”; ;zone “100.168.192.in-addr.arpa” IN type master; file “100.168.192”; ;81Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置 上 例 中 , “directory”一 行 指 定 named从“/var/named”目录下读取DNS数据文件,这个目录用户可自行指定并创建。第一个区登记项用来通知BIND在何处定位根服务

60、器的信息。文件中的 zone “”段 是 声 明 这 是 用 于“”域的主域名服务器,该域的数据从“/var/named/”文件中读取。文件中的zone “100.168.192.in-addr.arpa”段是指向映射IP地址“192.168.100.*”到主机名的文件,该域的数据从“/var/named/100.168.192”文件中读取。82Acegene IT Co. Ltd.8.4 DNS服务器的安装与设置服务器的安装与设置4BIND服务器的维护管理员要维护好一个域名服务器非常困难,BIND软件组提供了大量的管理工具来减轻管理员的负担。如rndcreload用来装入新的数据库;nslo

61、okup用来查询域名信息。域名服务器的维护关键在于数据库文件的正确性,管理员要不断地更新维护。系统管理员为了域名服务器正确、高效地运行,需要日复一日地努力工作。83Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 邮件服务器至少涉及两个组件:MTA(Mail Transfer Agent,邮件传输代理)和MUA(Mail User Agent,邮件用户代理)。 MTA是服务器端应用程序,它负责处理邮件的发送和接收。 MUA是用户使用的客户端程序,常见的MUA有Microsoft Outlook、Foxmail等。84Acegene IT Co. Ltd

62、.8.5 邮件服务器的安装与设置邮件服务器的安装与设置1Linux下常用的MTAqSendmail:被目前Internet上大多数的电子邮件系统使用,是RedHatLinux中默认的MTA。qPostfix:是Sendmail的一个流行的替代MTA程序。Postfix的特点是速度快、安全和容易管理。qQmail:目标是比Sendmail更容易使用。特点是安全、可靠、高效、简单。85Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 2 安装Sendmail (1)通过图形界面方式安装 单击【主菜单】|【系统设置】|【添加删除应用程序】菜单项,然后单击【更

63、新】按钮,插入第一张安装光盘按照屏幕提示完成Sendmail服务器的安装。 (2)通过rpm安装包在终端命令窗口执行以下命令: #rpm ivh sendmail-8.12.8-4.i386.rpm #rpm ivh sendmail-cf-8.12.8-4.i386.rpm #rpm ivh sendmail-doc-8.12.8-4.i386.rpm86Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 3 配置Sendmail Sendmail的配置文件是位于/etc/mail目录下的sendmail.cf。 通常在/etc/mail目录下有一个s

64、endmail.mc模板文件,一般通过修改sendmail.mc模板来达到定制sendmail.cf文件的目的。下面是创建sendmail.cf文件的步骤: (见下页) 87Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 备份原有sendmail.cf文件在终端命令窗口运行以下命令: # cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.bak生成sendmail.cf文件根据sendmail.mc模板文件生成sendmail.cf配置文件,并导出到/etc/mail目录下: # m4 /etc/mail/

65、sendmail.mc /etc/mail/sendmail.cf重启sendmail服务 # /etc/rc.d/init.d/sendmail restart88Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 4 启动/重新启动/停止Sendmail服务安装Sendmail服务器后,最简单的启动方式是在终端命令窗口执行如下命令:# /etc/tc.d/init.d/sendmail start在终端命令窗口执行以下命令重新启动sendmail服务:# /etc/rc.d/init.d/sendmail restart在终端命令窗口执行以下命令来停

66、止sendmail服务:# /etc/rc.d/init.d/sendmail stop 89Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置 5 为新用户开电子邮件帐号在Linux里为新用户开设电子邮件帐号比较简单,只需在Linux系统里新增一个用户即创建了一个同名的邮件帐号。(1)在终端窗口为新用户开设电子邮件帐号的命令是:#adduserpeterppeter90Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置(2)在图形界面下为新用户开设电子邮件帐号的操作是:单击【开始】|【系统设置】|【用户和组群】菜

67、单项,打开【RedHat用户管理器】对话框,单击【添加用户】按钮,在出现的【创建新用户】对话框里指定用户名、登录口令,如右图所示。91Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务器的安装与设置6支持POP和IMAP功能(1)POP和IMAP服务器的安装安装RedHatLinux9.0时,可以选择安装POP和IMAP服务器,如果没有安装,可以将第二张安装光盘放入光驱,然后在终端命令窗口运行以下命令即可开始安装:#cd/mnt/cdrom/RedHat/RPMS#rpmivhimap-2001a-18.i386.rpm92Acegene IT Co. Ltd.8.5

68、 邮件服务器的安装与设置邮件服务器的安装与设置(2)启动POP和IMAP服务要成功启动POP和IMAP服务器,首先要确定这些服务器存在于/etc/services文件,并确保以下的服务器前面没有加上“#”注释。Imap143/tcpimap2#InterimMailAccessProtov2Imap143/udpimap2Pop2109/tcppop-2postoffice#POPversion2Pop2109/udppop-2Pop3110/tcppop-3#POPversion3Pop3110/udppop-393Acegene IT Co. Ltd.8.5 邮件服务器的安装与设置邮件服务

69、器的安装与设置修改好/etc/services文件,还要对相应服务配置文件进行修改。启动POP3服务:修改/etc/xinetd.d/ipop3文 件 , 将 其 中 的 ”disable=yes”改 为”disable=no”,保存该文件。重新启动xinetd使设定内容生效:#/etc/rc.d/init.d/xinetdreload启动IMAP服务:修改/etc/xinetd/imap文件,将其中的”disable=yes”改为”disable=no”,保存该文件。重新启动xinetd使设定内容生效:#/etc/rc.d/init.d/xinetdreload94Acegene IT Co

70、. Ltd.8.6 Linux下一个下一个NAT配置的实例配置的实例 网络地址转换(NAT)被广泛应用于各种类型的Internet接入方式中。原因很简单,NAT不仅完美地解决了IP地址不足的问题,而且还能有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。 在Linux环境下实现NAT的工具是RedHat Linux 9.0自带的防火墙工具包iptables。 95Acegene IT Co. Ltd.8.6 Linux下下NAT服务器简介服务器简介 下面是某校园网NAT配置文件的实例。其中服务器安装RedHat Linux 9.0,外网网卡为eth0,IP地址为202.110.116.

71、116,内网网卡是eth1,IP地址为192.168.254.254。通过NAT技术,将校园网接入Internet。#!/bin/sh echo 1 /proc/sys/net/ipv4/ip_forward #/sbin/insmod ip_tables iptables -F INPUT iptables -F FORWARD iptables -F POSTROUTING -t nat(接下页)96Acegene IT Co. Ltd.8.6 Linux下下NAT服务器简介服务器简介 iptables -P FORWARD DROP iptables -A FORWARD -s 192.

72、168.1.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -m state -state ESTABLISHED,RELATED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -s 192.168.254.0/24 -j MASQUERADE /sbin/insmod ip_conntrack_ftp/sbin/insmod ip_conntrack_irc/sbin/insmod ip_nat_ftp/sbin/insmod ip_nat_irc97Acegene IT Co. Ltd.SQUID代理

73、服务器代理服务器官方网站:www.squid-cache.org功能:1、支持proxy2、支持HTTP缓存3、FTP4、SSL访问控制5、DNS缓存注:它和NAT是有区别的98Acegene IT Co. Ltd./etc/squid/squid.conf1NETWORKOPTIONS(有关的网络选项)2OPTIONSWHICHAFFECTTHENEIGHBORSELECTIONALGORITHM(作用于邻居选择算法的有关选项)3OPTIONSWHICHAFFECTTHECACHESIZE(定义cache大小选项)4LOGFILEPATHNAMESANDCACHEDIRECTORIES(定义

74、日志文件的路径及cache的目录)5OPTIONSFOREXTERNALSUPPORTPROGRAMS(外部支持程序选项)6OPTIONSFOETUNINGTHECACHE(调整cache选项)7TIMEOUTS(超时)8ACCESSCONTROLS(访问控制)9ADMINISTRATIVEPARAMETERS(管理参数)10OPTIONSFORTHECACHEREGISTRATIONSERVICE(cache注册服务选项)11HTTPD-ACCELERATOEOPTIONS(HTTPD加速选项)12MISCELLANEOUS(杂项)13DELAYPOOLPARAMETERS(延时池选项)99

75、Acegene IT Co. Ltd.安装选项安装选项./configure-prefix=/var/squid-sysconfdir=/etc-enable-arp-acl-enable-linux-netfilter-enable-pthreads-enable-err-language=Simplify_Chinese-enable-storeio=ufs,null-enable-default-err-language=Simplify_Chinese-enable-auth=basic-enable-baisc-auth-helpers=NCSA-enable-underscore1

76、00Acegene IT Co. Ltd.squid-NETWORK OPTIONShttp_port:监听客户请求的端口,默认3128icp_port:和其它squid发送和接收ICP查询时监听的端口,0表示禁止mcast_groups:指定一个多播组,可以接收多播形式的ICP查询,例:mcast_groups239.128.16224.0.1.20htcp_prot:同其它相邻的缓存服务器之间发送和接收HTCP查询时监听的端口,0:禁用tcp_outgoing_address:用于采用HTCP和CARP方式同其它服务器通信默认:255.255.255.255udp_incoming_add

77、ress:接收其它缓存服务器的ICP数据报时使用的地址默认:0.0.0.0udp_outgoing_address:发送ICP数据报到其它缓存服务器时用的地址默认:255.255.255.0101Acegene IT Co. Ltd.squid-OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHMcache_peer:指定网络中其它的缓存服务器。默认为none。cache_peerhostnametype http_port icp_port optionshostname:指对方地址type:类型:parent/sibling/multi

78、cast,分别是:父/兄弟/多播http_port:目的服务器的http端口icp_port:目的服务器的icp端口(udp)options:proxy-only:仅去获取数据,但不在本地缓存no-query:不发送ICP查询给此主机default:默认的父服务器login username:passwd:连接对方通过服务器用户名和密码102Acegene IT Co. Ltd.squid-OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHMcache_peer_domain:用来限定查询相邻的缓存服务器的域cache_peer_domai

79、n服务器地址 域如:cache_peer_neighbor_type_domain服务器 类型 域如:neighbor_type_neighbor_type_domain218.2.2.3parent.orgicp_query_timeout微秒超时maximum_icp_query_timeout2000hierarchy_stoplistcgi-bin?:在URL中发现的此字符串,直接在此服务器处理no_cache:指定对象不被缓存例:aclQUERYurlpath_regexcgi-bin?no_cachedenyQUERYdead_peer_timeout:多长时间宣布对等服务器已死亡

80、,时间用秒103Acegene IT Co. Ltd.squid-OPTIONS WHICH AFFECT THE CACHE SIZEcache_mem:缓存内存大小cache_swap_low(percent,0-100):缓存对象交换的最低点cache_swap_high(percent,0-100):缓存对象交换的最高点maximum_object_size:缓存对象的最大大小minimum_object_size:缓存对象的最小大小maximum_object_size_in_memory:在内存中缓存的最大的对象大小ipcache_size4096:ip对应cache的大小为409

81、6fqdncache_size4096:域名全称cache的大小为4096104Acegene IT Co. Ltd.squid-LOGFILE PATHNAMES AND CACHE DIRECTORIESmemory_replacement_policy:内存替换策略cache_replacement_policy:缓存替换策略选项:heapLFUDA|lru|heapGDSF:heapLRUheapGDSF:双重大小贪婪法LRU:默认,最近最少使用算法heapLFUDA:最近最不常用被老化法heapLRU:堆LRUcache_dir:系统使用的存储类型cache_dirtype 路径 大

82、小(M) 一级子目录 二级子目录type:UFS|AUFS,默认使用UFS,AUFS用于非同步的I/O设备如:cache_dirufs/usr/local/squid/cache2500016256105Acegene IT Co. Ltd.squid-LOGFILE PATHNAMES AND CACHE DIRECTORIEScache_access_log/var/log/squid/access.logaccess.log日志文件路径cache_log/var/log/squid/cache.log缓存日志文件的目录和文件emulate_httpd_log:激活仿真HTTP格式的日志m

83、ime_table:mime文件路径pid_filename:指定pid文件和路径106Acegene IT Co. Ltd.squid-LOGFILE PATHNAMES AND CACHE DIRECTORIESftp_user:指定匿名FTP密码ftp_list_width:指定FTP列表的文件名长度ftp_passive:以被动模式(on)/主动模式(off)cache_dns_program:指定DNS查询程序路径编译时指定:-disable-internal-dnsoptiondns_children:指定本地默认启动DNS查询进程数dns_nameservers:DNS服务器地址

84、diskd_program:磁盘管理程序unlinkd_program:删除文件程序pinger_program:ping程序编译时指定:-enable-icmpoption107Acegene IT Co. Ltd.squid-LOGFILE PATHNAMES AND CACHE DIRECTORIESredirect_program:URL重点向程序redirect_children:重点向进程数redirect_rewrites_host_heade:重点向时重写包头(用加速器时勿用)authenticate_program:认证程序例:authenticate_program/usr

85、/bin/ncsa_auth/usr/etc/passwdauthenticate_children5:认证程序的进程数authenticate_ttl1hour:认证有效时间authenticate_ip_ttl:对一个IP一次认证后多长时间有效此时在同一个IP有第二个用户认证会失败authenticate_ip_ttl_is_strict:禁止一个用在多处登录108Acegene IT Co. Ltd.squid-OPTIONS FOR TUNING THE CACHErequest_header_max_size:最大http请求头request_body_max_size:最大http

86、请求数据内容reply_body_max_size:最大返回数据可限制用户下载的数据大小reference_age:LRU算法中指定LRU时间quick_abort_min(KB):断点续传最小值quick_abort_max(KB):断点续传最大值quick_abort_pct(percent):超过值认为续传成功negative_ttl:否定回答TTLpositive_dns_ttl:DNS肯定回答TTLrange_offset_limit:请求SQUID预取数据的大小109Acegene IT Co. Ltd.squid-TIMEOUTSconnect_timeout:SQUID等待客户

87、请求的服务器回应的时间长度peer_connect_timeout:一个对等的缓存服务器的TCP连接超时时间client_lifetime:客户端同代理服务器TCP连接的最大时间长度read_timeout:读入数据超时request_timeout:客户端请求最大时间shutdown_lifetime:关闭squid缓存时间110Acegene IT Co. Ltd. ACCESS CONTROLSacl:定义一个访问列表格式:aclaclname acltypestring类型:(acltype)src:源地址dst:目标地址srcdomain:原(客户)名称dstdomain:目标名称t

88、ime:时间url_regex-i:URL中的正则表达式匹配urlpath_regex-i:略去协议和主机名的正则表达式proxy_auth:通过外部程序进行用户验证maxconn:单IP最大连接数port:端口myip:本地IPsrcdom_regex-i:匹配客户名dstdom_regex-i:匹配目标名aclnamemyport:我的端口111Acegene IT Co. Ltd.aclaclnameproto:协议,http,ftp.aclnamemethod:方法,GETPOSTaclnamebrowser:匹配User-Agentheaderaclnameident:用户方用户名a

89、clnameident_regex-i:匹配用户方用户名aclnameproxy_authusername:指定合法用户用REQUIRED表示所有合法用户112Acegene IT Co. Ltd.ACCESS CONTROLShttp_access:代理访问控制http_accessallow|deny!acl_nameicp_access:icp访问控制cache_peer_access:其它缓存服务器访问控制cache_peer_accesscache_host allow|deny!acl_name113Acegene IT Co. Ltd.ADMINISTRATIVE PARAMET

90、ERScache_mgr:管理员电子邮件cache_effective_usersquid:运行身份cache_effective_groupsquid:运行组身份114Acegene IT Co. Ltd.OPTIONS FOR THE CACHE REGISTRATION SERVICEannounce_period:发布缓存通告频率announce_host:通告的主机announce_file:通告的信息announce_port:通告的对方端口115Acegene IT Co. Ltd.HTTPD-ACCELERATOR OPTIONS:加速某服务器访问httpd_accel_por

91、thistname|virtualhttpd_accel_port:加速服务器的对方端口httpd_accel_single_host:多台服务器时设置offhttpd_accel_with_proxy:即作为加速器,又作为WEB缓存服务器,设置为onhttpd_accel_uses_host_header:为on,能支持不同的http协议116Acegene IT Co. Ltd.MISCELLANEOUSlogfile_rotate0:日志轮换版本数append_domain:默认域名tcp_recv_bufsize:TCP缓存区大小err_html_text:包含在错误消息中的文本,例:

92、mailto:deny_info:禁用时显示消息deny_infoerr_page_nameaclvisible_错误消息中显示的服务器名称error_directory:指定错误消息文件目录117Acegene IT Co. Ltd.用户验证用户验证一、NCSA认证authenticate_program/usr/lib/squid/ncsa_auth/usr/etc/passwdaclauth_userproxy_authREQUIREDaclmynetworksrc192.168.0.1/255.255.255.0http_accessdeny!mynetworkhttp_accessa

93、llowauth_userhttp_accessdenyall注:squid是顺序处理http_access再运行以下程序创建用户:htpasswd-c/var/squid/etc/passwordguest118Acegene IT Co. Ltd.透明代理透明代理httpd_accel_hostvirtualhttpd_accel_port80httpd_accel_with_proxyonhttpd_accel_uses_host_headeronhttp_accessallowall在iptables中设置iptables-tnatAPREROUTING-ieth0ptcp-dport

94、80jREDIRECT-to-port3128iptables-tnatAPOSTROUTINGs192.168.0.0/24oeth1jSNATto-source218.33.2.14119Acegene IT Co. Ltd.实例实例http_port 8080 设置设置http代理端口为代理端口为8080cache_peer sibling 3128 3130 login=*:*cache_peer sibling 3128 3130 login=*:*cache_peer * parent 13280 4827 htcp *:*这几行是使用squid可以和其他几台机器进行协同工作的

95、特性,同几台组成cache_peer。具体设置在后面的优化部分会解释。cache_peer_domain * 设置设置的域名使用某个的域名使用某个cache_peer访问访问cache_mem 400 MB设定内存设定内存cache的大小为的大小为400Mcache_swap_low 80cache_swap_high 97这两行是设置这两行是设置cache进行替换的闸值。当占用到进行替换的闸值。当占用到97%的的cache后,后,cache中的内容将被清空中的内容将被清空20%。maximum_object_size 20000 KB 最大对象大小为最大对象大小为20M.maximum_ob

96、ject_size_in_memory 10000 KB 内存中最大的对象大小为内存中最大的对象大小为10Mipcache_size 4096 ip对应对应cache的大小为的大小为4096fqdncache_size 4096 域名全称域名全称cache的大小为的大小为4096cache_replacement_policy heap LFUDA cache替换策略替换策略memory_replacement_policy heap LRU 内存替换策略内存替换策略cache_dir ufs /usr/local/squid/cache 25000 16 256 cache存放的路径大小及具

97、体配置存放的路径大小及具体配置dns_nameservers * * * * * 内部指定内部指定dns服务器服务器authenticate_program * * 身份认证程序身份认证程序authenticate_children 32 身份认证程序启动的进程数目身份认证程序启动的进程数目request_body_max_size 5 MB 最大请求的最大请求的body大小大小reply_body_max_size 20 MB 最大回应的最大回应的body大小大小memory_pools on 内存池设置为打开。内存池设置为打开。memory_pools_limit 50 MB 内存池的大小

98、内存池的大小120Acegene IT Co. Ltd.实例实例acl all src 0.0.0.0/0.0.0.0acl dorm proxy_auth 192.168.0.0/255.255.0.0 REQUIREDacl bjpu proxy_auth 202.112.64.0/255.255.240.0 REQUIREDacl bjpu2 proxy_auth 211.71.80.0/255.255.240.0 REQUIRED访问控制列表acl banned_sites 过滤的关键字过滤的关键字http_access deny banned_sitesdeny_info ERR_B

99、ANNED_SITE banned_sites禁止访问违禁站点的设置acl manager proto cache_objectacl localhost src 127.0.0.1/255.255.255.255acl SSL_ports port 443 563acl Safe_ports port 80 # httpacl Safe_ports port 21 # ftpacl Safe_ports port 443 563 # https, snewsacl Safe_ports port 70 # gopheracl Safe_ports port 210 # waisacl Saf

100、e_ports port 1025-65535 # unregistered portsacl Safe_ports port 280 # http-mgmtacl Safe_ports port 488 # gss-httpacl Safe_ports port 591 # filemakeracl Safe_ports port 777 # multiling httpacl CONNECT method CONNECT设置可以连接的端口121Acegene IT Co. Ltd.实例实例http_access allow dormhttp_access allow bjpuhttp_ac

101、cess allow bjpu2http_access allow manager localhosthttp_access deny managerhttp_access deny !Safe_portshttp_access deny CONNECT !SSL_portshttp_access deny all允许http访问icp_access allow *允许允许cache_peer使用使用ICP协议访问协议访问proxy_auth_realm BJPU proxy-caching web server 验验证框提示的证框提示的bannercache_mgr cache管理员的电子

102、邮管理员的电子邮件地址件地址cache_effective_user *cache_effective_group * 执行执行cache程序的用户程序的用户uid和和gidvisible_hostname cache服务的机器服务的机器名名122Acegene IT Co. Ltd.其它其它1、使用LFUDA(LeastFrequentlyUsedwithDynamicAging)作为cachereplacementpolicy,cache的命中率最高。使用heapLRU作为memoryreplacementpolicy,memorycache命中率最高2、建议使用unlink作为磁盘的管

103、理程序,比diskd稳定123Acegene IT Co. Ltd.其它其它3、对arp控制acladvancearp00:01:02:1f:2c:3e00:01:02:3c:1a:8b.4、禁止下载aclmmxfileurlpath_regexi.mp3$.avi$.exe$http_accessdenymmxfile5、固定时间aclworktimetimeMTWHF8:30-12:0014:00-18:00http_accessdeny!worktime124Acegene IT Co. Ltd.其它其它6、限制单用户最大连接数aclconncountmaxconn3http_acces

104、sdenyconncountnormalhttp_accessallownormal7、反向代理a)用iptables将外网80端口访问重定向到squidb)让http只监听127.0.0.180c)在squid中包含hosts_file/etc/hostsd)在/etc/hosts中包含本地所有虚拟主机域名e)让squid只监听127.0.0.1125Acegene IT Co. Ltd.Apache官方网站:www.apache.org./configure-prefix=/usr/apache-enable-module=most-enable-shared=max-enable-mod

105、ule=somake;makeinstall在http的bin目录中运行:striphttpd126Acegene IT Co. Ltd.Apachehttpd:-V:显示编译httpd的值和有关目录位置-l:显示静态链接库-t:检查语法-DSSL:监听443端口127Acegene IT Co. Ltd.Apache主要目录:htdocs:文档目录bin:可执行文件conf:配置文件modules:模块error:错误文档所在路径logs:日志128Acegene IT Co. Ltd.Apache主配置文件:httpd.conf一、全局环境指令定义(globalenvironment)二、

106、主服务器部分(mainserversection)三、虚拟主机部分(virtualhost)指令环境分类一、通用服务器环境二、容器环境:directory、files、location等三、虚拟主机环境:virtualhost四、.htaccess环境:和directory中一样129Acegene IT Co. Ltd.Apache指令指令1-服务器环境服务器环境注:此类只能应用于主配置或虚拟主机中ServerName:服务名称ServerRoot:服务主目录,一般包含bin、conf等目录DocumentRoot:文档主目录(一般不要轻易修改)ScriptAlias:可执行文件所在目录13

107、0Acegene IT Co. Ltd.Apache指令指令1-服务器环境服务器环境ErrorDocument:指定对于某类错误显示什么错误消息如:ErrorDocument401/subscript.html:消息内容可是文本/本站网页/外站网页DefaultType:指定MIME类型,一般用于容器(directory)中。设置此目录中的所有文件当成什么类型处理131Acegene IT Co. Ltd.Apache指令指令1-服务器环境服务器环境ServerType:指定以什么方式运行服务器,standalone/inetdPidFile:指定pid文件存放地点User/Group:指定子

108、进程运行身份BindAddress:定义只监听某一IP地址连接132Acegene IT Co. Ltd.Apache指令指令1-服务器环境服务器环境Port:监听端口Listen:代替以上两个命令,可以使用多个此指令Options:控制特定目录下哪此服务器功能有效ExecCGI:允许执行CGI脚本FollowSymLinks:跟随符号链接(不能用于location)Includes:允许服务器包含SSI(ServerSideIncludes)功能,IncludesNOEXEC:允许SSI,但不允许执行脚本Indexs:如果某目录下没有默认文档,则返回文件列表MultiViews:允许内容协商

109、的MultiViewsALL:除MultiViews外的所有选项SymLinkslfOwnerMatch:只跟随目标和链接由同一个用户ID拥有的符号链接可用+/-在原有的基础上加上/减去某功能133Acegene IT Co. Ltd.Apache指令指令2-容器指令容器指令134Acegene IT Co. Ltd.Apache指令指令2-容器指令容器指令详见:虚拟主机135Acegene IT Co. Ltd.Apache指令指令2-容器指令容器指令和规则:先使用最短的容器目录,后应用较长的容器目录,后面可对前面的指令覆盖可使用正则表达式匹配目录136Acegene IT Co. Ltd.

110、Apache指令指令2-容器指令容器指令和用于针对某种类型的文件单独设置指令.137Acegene IT Co. Ltd.Apache指令指令2-容器指令容器指令:针对POST/PUT/DELETE方法的http访问的指令除了某个方法以的方法138Acegene IT Co. Ltd.Apache指令指令2-容器指令容器指令容器指令执行顺序:1、,和.htaccess文件合并,并从最宽范围到最窄计算,在.htaccess中重复指令,后者覆盖前者2、,如果重复覆盖已设置的指令3、和4、139Acegene IT Co. Ltd.Apache-.htaccess文件文件AllowOverrides

111、:ALL:允许所有的.htaccess指令覆盖None:禁止任何.htaccess指令覆盖Authconfig:允许使用所有用户/组授权指令(详见认证)FileInfo:允许使用控制文档类型的指令Indexes:允许使用控制目录索引的指令Limit:允许使用基本浏览器主机名或网络地址控制访问的指令Options:允许使用特殊指令,(OptionsXBitHack)140Acegene IT Co. Ltd.apache-进程控制指令进程控制指令1、MaxClients:设定能同时服务的请求数目;2、MaxRequestsPerChild:设置每个进程能够响应的最大请求数,0表示不限制;3、Ma

112、xSpareServers:设定最大空闲服务进程数目;MinSpareServers设定最小空闲服务进程数目;4、ThreadsPerChild:设定Apache服务器使用的线程数;141Acegene IT Co. Ltd.Apache设置用户网站设置用户网站1、相对路径UserDirWWW:设置每个用户的文档在各自主目录下的WWW目录中2、绝对路径:UserDir/usr/www在固定目录中有一个目录和此用户名相同3、有通配符的绝对路径:UserDir/usr/www/*/html在www中每个用户拥有一个目录和用户名相同4、重定向对用户主目录的请求UserDirhttp:/ IT Co.

113、 Ltd.Apache设置用户网站设置用户网站让用户主目录使用suEXEC1、安装使启用suEXEC模块2、httpdl检查有没有支持suEXEC此模块可用于:虚拟主机,也可用于用户主目录143Acegene IT Co. Ltd.Apache简单重定向:(使用模块alias)1、软链接2、Alias/路径/目录绝对路径目录索引:mod_dir模块支持如:http:/ IT Co. Ltd.Apache索引索引IndexOptionsFancyIndexing:启用复杂索引索引更多选项:IconsAreLinks:使图标成为文件名可单击的一部分IconHeight=pixels:图标的高度(像

114、素)IconWidth=pixels:图标的宽度(像素)NameWidth=n:文名名宽度ScanHTMLTitles:将文件描述为中的文字SuppressColumnSorting:禁止排序SuppressDescription:禁止显示文件描述符SuppressLastModified:禁止显示最后修改时间SupressSize:禁止显示大小SupressDescription:禁止显示说明None:关闭复杂索引145Acegene IT Co. Ltd.Apache索引索引指定图标:如:AddIcon/icons/image.jpb*jpg*指定默认图标:如:DefaultIcon/ic

115、ons/unknown.pcx指定文件说明:如:AddDescriptionmyhomepageindex.html146Acegene IT Co. Ltd.Apache索引索引添加页眉页脚:HeaderNamehtml文件忽略文件:IndexIgnore*.exe*.conf索引显示排序:IndexOrderDefault方式键方式:Ascending/Descending键:Name,Date,Size,Description147Acegene IT Co. Ltd.Apache中的模块中的模块模块类型:一、核心模块(httpd_core.c)二、标准模块三、第三方模块148Acege

116、ne IT Co. Ltd.模块工作原理模块工作原理标准模块在apache中的工作原理一、读后请求:对虚拟主机处理请求的分辨登记的模块有:mod_proxy,mod_setenvif二、URL翻译:URL翻译成文件名登记的模块有:mod_alias,mod_rewrite,mod_userdir三、访问控制:检查客户对请求资源的访问登记的模块有:mod_access四、身份验证:确认用户登记的模块有:mod_auth,mod_auth_dbm149Acegene IT Co. Ltd.模块工作原理模块工作原理五、授权:检查用户访问资源的权限六、MIME类型检查:确定请求资源的文件类型登记的模块

117、有:mod_mime七、修正:在请求真正执行前需要进行的动作登记的模块有:mod_header八、响应或满足:请求资源真正被处理的阶段,登记的模块很多,对特定资源执行以提供访问九、日志记录登记的模块有:mod_log_config十、清除:清除已提供服务后的apache子进程150Acegene IT Co. Ltd.apache模块模块模块安装:一、静态安装二、DSO(动态共享对象)安装推荐:1、核心模块和装载模块必须静态安装2、少部分标准模块以静态安装3、常改动的软件以DSO安装以动态安装的模块装载使用:LoadModulephp4_module/modules/mod_php.so实例:

118、安装php151Acegene IT Co. Ltd.虚拟主机虚拟主机实现模块:mod_virtual一、基于IP的虚拟主机二、基于名字的虚拟主机三、动态虚拟主机152Acegene IT Co. Ltd.基于基于IP的虚拟主机的虚拟主机如:ServerNDocumentRoot/usr/apache/virtual/v1注:可以对一个网络接口绑定多个IP地址实现153Acegene IT Co. Ltd.基于基于IP的虚拟主机的虚拟主机使用_default_虚拟主机用于没有虚拟主机匹配时提供服务器虚拟主机DocumentRoot/usr/default154Acegene IT Co. Lt

119、d.基于名字的虚拟主机基于名字的虚拟主机注:只能应用于HTTP/1.1,不能和基于IP的虚拟主机联用NameVirtualHost192.168.5.1指定绑定地址ServerNDocumentRoot/usr/w1ServerNDocumentRoot/usr/w2155Acegene IT Co. Ltd.动态虚拟主机动态虚拟主机实现模块:mod_vhost_aliases基于主机名的动态虚拟主机指令:(只用两个指令)VirtualDocumentRootVirtualScriptAlias可使用的变量%:即%p:动态虚拟主机的tcp端口号%0:整个服务器名字%N:服务名中的第N部分%N+

120、:服务器名的第N部分和其后所有其余部分%-N:字符器串倒数第N部分,%-N+:倒数第N部分,以及前面所有部分156Acegene IT Co. Ltd.动态虚拟主机动态虚拟主机apache必须要构造一个指向它自己的URL构造指令:UseCanonicalName1、on:apache使用ServerName和Port生成自指URL2、off:使用http/1.1中的主机名和端口号构成URL,如果客户方是http/1.0,则apache使用ServerName和Port构造自指URL3、DNS:则查询DNS以便购成自指URL注:httpd-S用于调试虚拟主机启动157Acegene IT Co.

121、 Ltd.服务器方包含服务器方包含安装模块:mod_include并在httpd.conf中启用.shtml的解析例:Todayis158Acegene IT Co. Ltd.使用使用CGICGI:即通用网关1、定义请求URLScriptAlias/cgi-bin/usr/httpd/cgi-binScriptAliasMatch/cgi-bin(.*)/usr/httpd/cgi-bin$12、定义文件AddHandlercgi-script.cgi.pl3、定义方法ScriptDELETE/cgi-bin/deleteit.cgi4、定义介质类型Actiontext/html/home/h

122、ttpd/cgi-bin/parseme.cgi此方法是对所有html网页都通过此cgi处理159Acegene IT Co. Ltd.高级重定向高级重定向支持模块:mod_alias1、别名处理Alias:Alias/icons/usr/local/apache/iconsAliasMatch:AliasMatch/icons/(.*)/usr/local/apache/icons/$1ScriptAlias:ScriptAlias/cgi-bin/usr/local/apache/cgi-bin/ScriptAliasMatch:scriptAlias/cgi-bin/usr/local/

123、apache/cgi-bin/2、重定向Redirect:Redirect/wtbhttp:/ IT Co. Ltd.高级重定向高级重定向支持模块:mod_rewrite注:虚拟主机默认不从主服务器继承其设置161Acegene IT Co. Ltd.用户验证用户验证1、文本在httpd.conf中AllowOverrideAuthConfig在.htaccess中AuthType BasicAuthNamepasswordfileauthAuthUserFile/usr/apache/conf/passwordAuthGroupFile/usr/apache/conf/groupRequir

124、egrouptest162Acegene IT Co. Ltd.日志管理日志管理服务模块:mod_coreErrorLoglogs/error_logErrorLogsyslogLogLevel等级emerg 使系统无法使用的状总值alert要求立即做出响应操作crit关键状态error错误状态warn警告状态notice建议状态info普通信息debug调试信息163Acegene IT Co. Ltd.日志管理日志管理服务器模块:mod_log_configTransferLoglogs/access_log日志格式(CLF格式)remotehostidentdauthuserdatere

125、questurlstatusbytesremotehost:远程主机identd:使用ident协议验证客户身份,基本已不用authuser:验证的用户身份date:请求的时间status:三位数的状态代码bytes:响应的正文字节数164Acegene IT Co. Ltd.日志管理日志管理自定义格式:如:LogFormat%h%l%u%t%r%s%bcommon选项:%a远程主机ip%A:本地IP%B:发送的字节数%b:发送的字节数,没有则用-%ENVVAReENVVAR环境变量的内容%f:日志文件的文件名%h:远程主机名(要求打开HostnameLookups指令打开主机名查找)%H:请

126、求的协议和版本%header_linei发送给服务器的请求%I远程登录名%m请求方法(GET等)%header_lineo取自客户机的应答信息%p:TCP端口%P:提供服务器进程ID号%s:原始请状态,%s上次请求的状态%t:时间%T;对用户服务器的时间用秒计%U:请求的URL路径%v:对请求提供服务器的服务器标准名称165Acegene IT Co. Ltd.日志管理日志管理自定义格式日志生成文件:例:LogFormat%h%l%u%t%r%s%bcommonCustomLoglogs/access_logcommon166Acegene IT Co. Ltd.日志管理日志管理条件分类记录日

127、志:模块支持:mod_setenvifLogFormat%h%l%u%t%r%s%bcommonSetEnvIFRequest_URI.gif$imageCustomLoglogs/images_logcommonenv=image167Acegene IT Co. Ltd.日志管理日志管理虚拟主机日志:例:LogFormat%h%l%u%t%r%s%bserveringHost:%vcommonCustomLoglogs/access_logcommon168Acegene IT Co. Ltd.日志管理日志管理图形化分析工具webalizer169Acegene IT Co. Ltd.ap

128、ache+resin1、单独安装运行:直接安装运行于和apache不同的端口2、和apache合用运行./configurewith-apxs=*/apxs将resin的document改为apache的在apache中加入LoadModulecaucho_module/usr/local/apache/libexec/mod_caucho.soCauchoConfigFilelocalhost6028SetHandlercaucho-statusAddHandel官方网站:170Acegene IT Co. Ltd.Proftpd源包:ftp:/ftp.proftpd.org/distrib

129、/source补丁:http:/www.castaglia.org/proftpd一、安装-cpmod_quotatab/*.cproftpd/contribcpmod_quotatab/*.hproftpd/contrib修改proftpd/contrib/mod_sql_mysql.c把mysql.h改成你系统实际路径安装如下:171Acegene IT Co. Ltd.Proftpd二、基本配置全局设置设置项目1参数1设置项目2参数2某个目录的设置.关于匿名用户的设置.172Acegene IT Co. Ltd.Proftpd1、权限的限制:用Limit容器设置CMD:ChangeWor

130、kingDirectory改变目录MKD:MaKeDirectory建立目录的权限RNFR:ReNameFRom更改目录名的权限DELE:DELEte删除文件的权限RMD:ReMoveDirectory删除目录的权限RETR:RETRieve从服务端下载到客户端的权限STOR:STORe从客户端上传到服务端的权限READ:可读的权限,不包括列目录的权限,相当于RETR,STAT等WRITE:写文件或者目录的权限,包括MKD和RMDDIRS:是否允许列目录,相当于LIST,NLST等权限,还是比较实用的ALL:所有权限LOGIN:是否允许登陆的权限针对以上的权限,可使用的指令有:AllowUse

131、r针对某个用户允许的LimitDenyUser针对某个用户禁止的LimitAllowGroup针对某个用户组允许的LimitDenyGroup针对某个用户组禁止的LimitAllowAll针对所有用户组允许的LimitDenyAll针对所有用户禁止的Limit173Acegene IT Co. Ltd.ProftpdServerNamewtbLinuxFTPServerServerTypestandalone#以非Xinetd方式运行DefaultServeronPort21Umask022MaxInstances30#最多有30个proftpd的PIDUsernobodyGroupnobod

132、yAllowRetrieveRestarton#下载断点续传AllowStoreRestarton#上载断点续传TimeoutStalled10MaxClients10#最多允许10个用户在线MaxHostsPerUser1对不起,每个帐户最多允许来源ip为1个MaxClientsPerUser1对不起,每个帐户在每个客户端最多可以同时登陆1次MaxClientsPerHost1对不起,同一个客户端只能最多1个帐号可以登陆AllowStoreRestarton#允许断点续传(上传),断点续续(下载),DisplayLoginwelcome.msg#欢迎词文件ServerIdentoff#屏蔽服

133、务器版本信息DefaultRootftpusers#设置ftpusers组只能访问自己的目录,可用!号174Acegene IT Co. Ltd.ProftpdWtmpLogoff#记录FTP登录在wtmp中TimeoutIdle600#客户端idel时间设置,默认就是600秒AllowRetrieveRestarton#断点续传AllowForeignAddresson#允许FXPPassivePorts4915265534175Acegene IT Co. Ltd.proftpd二、磁盘限额+mysql验证176Acegene IT Co. Ltd.qmail资源:www.qmail.or

134、gftp:/(linux/admin)安装管理过程如下:177Acegene IT Co. Ltd.qmailqmail运行原理图:qmail-processqmail-sendqmail-lspawn等qmail-utilitiescontrol filesenvironment variablesmail-boxes178Acegene IT Co. Ltd.qmailqmail核心程序:qmail-injectqmail-smtpdqmail-queueqmail-cleanqmail-sendqmail-lspawnqmail-respawnqmail-rremoteqmail-locallocal mailboxesmessages from local usersmessages from remote usersmail queueremote mail servers179Acegene IT Co. Ltd.qmailqmail主要配置文件180Acegene IT Co. Ltd.AQ&Q U E S T I O N SA N S W E R S

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号