Red Hat Linux 253 实验(服务管理)(6)

2019-05-27 17:41

6. 在postfix中mynetworks_style如何影响转发? 请您查看文件/etc/postfix/main.cf。

7. 在文件/etc/postfix/access中需要如何的活跃的变化? 试验5 HTTP服务

估计时间: 1个小时

目标: 建立基本的拥有CGI的具有虚拟主机的Web服务器 试验的起点: 标准的Red Hat Linux安装

在整个试验中,主机和域名取决于您的机器的IP地址。如果下面的试验出现了X字样的名称,您应该把X字样的名称替换成您的工作站的号码(您的IP地址的最后一个部分)。例如,如果您的工作站的IP的地址是192.168.0.3,您应该将stationX.domainX.example.com转换成station3.domain3.example.com。

将数据包过滤设定为无效状态。在本次试验开始之前,请您确保您的主机上的所有包过滤已被关闭。缺省的安装将会有一个文件叫做“/etc/sysconfig/iptables”,该文件配置了iptable的功能。运行“chkconfig iptables off”。为了去除空间中所有的规则,运行“service iptables stop”

步骤1:服务的安装和基本的配置

场景/故事

您的组织需在一个小时内要一个Web服务器,拥有充足的CGI的能力比国内且具有为不同的虚拟主机提供不同的内容服务。 任务:

1. 需要如下的软件包:httpd和httpd-manual。如果需要的话,从CD或者ftp://server1/pub/RedHat/RPMS安装并...。使用chkconfig 来启动服务。 2. 启动httpd服务使用缺省的配置:service httpd restart

3. 检查在文件/etc/httpd/conf/httpd.conf中的DocumentRoot项目和下面的一样 DocumentRoot /var/www/html

4. 开启一个Web浏览器并且设定URL到: http://stationX.example.com

如果您的浏览器在工作,您将看到缺省的服务器的索引页面。注意该文件并不是所存储的HTML文件,而是服务器在这些目录中没有缺省的index.html文件的时候自动生成的。

5.建立一个新的目录层次和一些新的内容

mkdir –p /var/www/virtual/wwwX.example.com/html cd /var/www/virtual/wwwX.example.com/html cat > index.html <wwwX.example.com EOF

(这建立一个只有一行的HTML文件)

6.在/etc/httpd/conf/httpd.conf尾部加入以下几行:

NameVirtualHost 192.168.0.X ServerName wwwX.example.com ServerAdmin webmaster@wwwX.example.com DocumentRoot /var/www/virtual/wwwX.example.com/html ErrorLog

logs/wwwX.example.com-error_logCustomLog logs/wwwX.example.com-access_log combined Options Indexes Includes

7.确保您的DNS系统哦功能能够解析您的虚拟主机的名称。 dig wwwX.example.com

8. 重新启动httpd: service httpd reload

9.在您的Web浏览器并且设定URL到新的虚拟主机: http://wwwX.example.com 您看到您自己定义的页面了么?

步骤2:使用CGI 任务

1. 在步骤1设定的 块中增加一行: ScriptAlias /cgi-bin/

/var/www/virtual/wwwX.example.com/cgi-bin/

以上仅为一行并且在httpd.conf中不换行,注意给上面的两个元素之间留出空格。

2. 建立目录,然后在里面建立文件叫做test.sh 包含以下内容: /var/www/virtual/wwwX.example.com/cgi-bin/test.sh

#!/bin/bashecho Content-Type: text/html;echo echo “

”echo My username 

is:whoamiechoecho My id is:idechoecho My shell setting are:setechoecho My environment variable are:envechoecho Here is /etc/passwdcat /etc/passwdecho “

3.通过把您的浏览器指向下面的地址尝试执行该CGI脚本 http://wwwX.example.com/cgi-bin/test.sh

为什么这个脚本不执行?检查日志文件/avr/log/httpd/获得信息来帮助你找到答案。(您是否计的重新启动或者重新载入服务器?)

4. 使得该脚本对于用户,组和其他可读并且可执行:

chmod 555 test.sh

现在脚本能够执行麽?

挑战1:为您的Web站点的文档提供安全访问

任务:

在wwwX.example.com的文档的根目录建立一个文件叫做.htaccess,并采用以下内容: /var/www/virtual/wwwX.example.com/html/.htaccess Authname “restricted stuff”AuthType BasicAuthUserFile /etc/httpd/conf/wwwXX.htpasswdrequire valid-user 2.建立您的域的密码文件。该文件必须被apache组可读。

htpasswd –mc /etc/httpd/conf/wwwX.htpasswd user_name chgrp apache /etc/httpd/conf/wwwX.htpasswd chmod g+r /etc/httpd/conf/wwwX.htpasswd

3.访问http://wwwX.example.com页面,您是否...httpd获得线索。

4.添加下列行到服务器的配置文件httpd.conf,在wwwX.example.com虚拟主机的 块中增加一行:

AllowOverride AuthConfig

5.再次尝试访问http://wwwX.example.com页面,您是否...室趁娴娜ㄏ廾矗?/a>

步骤3:Squid的基本配置

1. 在您的系统上安装squid

rpm –Uvh ftp://server1.example.com/pub/RedHat/RPMS/squid*

2.开始服务(service squid start),然后配置您的浏览器使用您的localhost作为您的Proxy并且把端口设定为3128。

3.尝试访问一些主页。如果教师里面没有Internet可以访问,那么试图访问http://server1.example.com,将会返回服务器的测试页面。

4. 现在使用您的邻居来吧您的主机当作Proxy。这样子应该不能工作。

squid返回的页面在/var/log/squid/access.log文件的底部有所解释。

5.使用您喜欢的文本编辑器打开/etc/squid/squid.conf文件。正如您所看到的,大部分是文档和注释。您也该注意到squid是非常易于调校的。对于本实验,我们仅作简单的配置,熟悉了以后您将会适应更加复杂的配置。

6.在文件中查找第二次出现Recommend minimum configuration的地方。您将会会看到缺省的存取控制列表(acl)。在CONNECT method CONNECT 行的下面添加一个对于本地网络的存取访问列表项目:

acl example src 192.168.0.0/24

对于这个配置您可以把它作为参考以应用到其他的任何地方。src是该acl的源IP地址。 7.在文件中查找INSERT YOUR RULE(S) HERE,在localhost acl的上面增加如下的内容:

http_access allow example

重新启动squid。 您的邻居将能够访问您的Web缓存了。

8.一些URL最好能够避免。返回到acl的部分,在您新添加行的下面(使用example.com如果您在教师里面没有Internet访问权限的话)

acl otherguys dstdomain .yahoo.com acl otherguys dstdomain .hotmail.com

这里有一些要提及的东西。首先,注意到acl的附加属性。第二注意到dstdomain的acl类型,指明了关心的目的域。第三、注意到在域名前的点表示符号,确保加上点。

9.增加一条拒绝访问规则应用到这些存在问题的域。返回到您刚在添加allow的地方,在其下面增加如下行:

http_access deny otherguys

再次重新启动squid,再次检查这些相关的域,非常不幸,访问没有被拒绝。

10.再次打开配置文件,将您添加的拒绝规则放在example的允许规则之前。也就是说,在otherguys拒绝规则之前的example允许规则使得访问被允许,但是拒绝没有被生效。在移动规则以后,重新启动squid。这回它将禁止访问在任何上面禁止访问的域内的站点了。

复习的问题

1.根据/var/www/manual提及的服务器的手册。ServerAlias是起到什么作用?

2.根据/var/www/manual/suexec.html, suEXE对于CGI进程拥有什么特性?

3.下列命令起什么作用,何时使用它?

httpd –t

4. 您是否对您的用户能够通过CGI脚本看到您的/etc/passwd而感到不安?是否有方法阻止显示系统的密码文件?


Red Hat Linux 253 实验(服务管理)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:年产10万吨煤制乙醇生产工艺设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: