Linux文件与Web服务.docx
- 文档编号:8216372
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:21
- 大小:556.08KB
Linux文件与Web服务.docx
《Linux文件与Web服务.docx》由会员分享,可在线阅读,更多相关《Linux文件与Web服务.docx(21页珍藏版)》请在冰豆网上搜索。
Linux文件与Web服务
实验报告
题目:
项目五、Linux文件与Web服务
院系:
计算机系
专业:
软件工程
班级:
2010级?
班
姓名:
?
?
学号:
2010?
?
?
?
指导教师:
何东彬
2012
年
4
月
25
日
实训项目5Linux文件与Web服务
一、实训目的
●掌握Linux系统之间资源共享和互访方法。
●掌握Linux文件服务器的配置方法(企业NFS服务器和客户端的安装与配置)。
●掌握Linux系统中Apache服务器的安装与配置。
●掌握个人主页、虚拟目录、基于用户和主机的访问控制及虚拟主机的实现方法(可选)。
二、实训内容
●练习Linux系统NFS服务器与NFS客户端的配置方法。
●练习Linux系统Apache服务器的安装与配置方法。
三、实训步骤
子项目1.NFS服务器与NFS客户端的配置(必做)
某企业的销售部有一个局域网,域名为。
网络拓扑图如下图所示。
网内有一台Linux的共享资源服务器www,域名为。
现要在www上配置NFS服务器,使销售部内的所有主机都可以访问www服务器中的/share共享目录中的内容,但不允许客户机更改共享资源的内容。
同时,让主机china在每次系统启动时自动挂载www的/share目录中的内容到china3的/share1目录下。
(一)、软件安装及准备工作
检测系统是否安装了NFS服务器对应的软件包,如果没有安装的话,进行安装。
#rpm-qa|grepnfs//确认NFS已经安装,NFS是默认安装选项
nfs-utils-lib-1.1.5-1.el6.i686
#servicenfsstatus
rpc.svcgssdisstopped//如果NFS已经安装,则查看其服务是否启动
rpc.mountdisstopped
nfsdisstopped
rpc.rquotadisstopped
#ll/share//查看/share目录是否已经建立
ls:
cannotaccess/share:
Nosuchfileordirectory
#mkdir/share
#cat>/share/hello.txt
hello!
^C//注意:
此处的^C不是输入的字符内容,而是一个Ctrl+C的键盘输入
(二)、配置主配置文件/etc/exports
#vim/etc/exports
/share*(ro,async)//所有网段访问,只读,同步
/tmp192.168.0.0/255.255.255.0(rw,async)//只允许192.168.5网段访问,可读写
(三)、启动服务
#servicenfsstart
StartingNFSservices:
[OK]
StartingNFSquotas:
[OK]
StartingNFSdaemon:
[OK]
StartingNFSmountd:
[OK]
#servicenamedstart//启动域名服务
Startingnamed:
[OK]
(四)、配置防火墙
(五)、客户端配置
1.首先启动另外一台Linux机器(可以是另外一台克隆机)
2.然后配置好该客户机的网络地址,并设置好DNS服务器地址,方法如下:
#ifconfigeth0192.168.0.112netmask255.255.255.0//配置客户机的ip
#vim/etc/resolv.conf
nameserver192.168.0.111//指明客户机所用的DNS地址
按照上面的方法配置好,使得当前客户机能够访问NFS服务器
3.建立挂载目录
#mkdir/share1
4.按照项目背景的要求,配置NFS的客户端并测试
#vim/etc/fstab//在文件内添加一行,内容如下
:
/share/share1nfsdefaults00
#ll/share1//检查/share1目录下是否为空
total0//说明测试尚未将NFS服务器上的目录挂载到此
#reboot//重新启动NFS客户端,将会自动加载到/share1目录下
5.其他测试
#mkdir/share2
#mount-tnfs:
/tmp/share2//注意,所有域名都可以使用ip代替
#ll/share2
total72
srwxr-xr-x.1rootroot0Feb1719:
20gnome-system-monitor.root.2750744659
drwx------.2rootroot4096Mar316:
54keyring-2SL32g
drwx------.2rootroot4096Apr1520:
49keyring-EsvybK
drwx------.2rootroot4096Feb2819:
30keyring-H7RP0v
drwx------.2rootroot4096Mar1909:
01keyring-tDU1g3
drwx------.2rootroot4096Feb2122:
54keyring-uge3ba
drwx------.2gdmgdm4096Apr1520:
49orbit-gdm
drwx------.2rootroot4096Apr1521:
21orbit-root
drwx------.2gdmgdm4096Apr1520:
50pulse-ENGGwACh6W1o
drwx------.2rootroot4096Apr1520:
50pulse-et0QrZ3sJa9S
drwx------.2rootroot4096Apr910:
30virtual-root.5IaT9A
drwx------.2rootroot4096Apr910:
19virtual-root.5nG3Gd
drwx------.2rootroot4096Apr909:
27virtual-root.7i3AN0
drwx------.2rootroot4096Apr911:
07virtual-root.Lnnbyv
drwx------.2rootroot4096Apr1520:
50virtual-root.oEjFpl
drwx------.2rootroot4096Apr922:
09virtual-root.SBonkR
drwxr-xr-x.3rootroot4096Mar1821:
07vmt
drwxrwxrwt.2rootroot4096Apr909:
17VMwareDnD
drwx------.2rootroot4096Apr1520:
50vmware-root
#cat>/share2/newfile
newfile
^C
#ll/share2|grepnewfile
-rw-r--r--.1nfsnobodynfsnobody9Apr1523:
00newfile
可以通过以下命令在客户端查看共享
#showmount-e//通过此命令查看
Exportlistfor:
/share*
/tmp192.168.0.0/255.255.255.0
如果客户端出现错误,不能访问服务器,则说明服务器端防火墙设置可能存在问题。
#vim/etc/sysconfig/nfs//然后编辑文件,确保下面的内容存在(确定服务端口)
MOUNTD_PORT=892//NFS的服务端口默认是不确定的,但可以通过设置固定
STATD_PORT=662
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
#servicenfsrestart
ShuttingdownNFSmountd:
[OK]
ShuttingdownNFSdaemon:
[OK]
ShuttingdownNFSquotas:
[OK]
ShuttingdownNFSservices:
[OK]
StartingNFSservices:
[OK]
StartingNFSquotas:
[OK]
StartingNFSdaemon:
[OK]
StartingNFSmountd:
[OK]
#vim/etc/sysconfig/iptables//然后编辑文件,确保下面的内容存在
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport2049-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport2049-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport111-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport111-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport892-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport892-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport662-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport662-jACCEPT
-AINPUT-mstate--stateNEW-mtcp-ptcp--dport32803-jACCEPT
-AINPUT-mstate--stateNEW-mudp-pudp--dport32769-jACCEPT
#serviceiptablesrestart
iptables:
Flushingfirewallrules:
[OK]
iptables:
SettingchainstopolicyACCEPT:
filter[OK]
iptables:
Unloadingmodules:
[OK]
iptables:
Applyingfirewallrules:
[OK]
解释:
之所以如此配置,是因为NFS相关的程序端口是随机生成的,如果开启了防火墙,因为端口不固定,则防火墙策略难于指定。
因此编辑NFS的端口配置文件/etc/sysconfig/nfs,来固定其4个端口。
然后再在Iptables中定义规则就容易的多了。
当然,在服务器端采用#serviceiptablesstop来关闭防火墙服务也一样有效,但是整个服务器就失去安全保护。
子项目2.Web服务器的基本配置(必做)
(一)、软件安装及准备工作
#yuminstallhttpd
#servicehttpdstart
然后打开浏览器,在地址栏内输入本地地址:
http:
//localhost/回车,然后出现下图
(二)、配置文件说明
主要配置文件/etc/httpd/conf/httpd.conf
文件中的主要内容及解释:
KeepAliveOff一般情况下保持关闭,如果服务器很牛,开开也行
StartServers8启动服务进程数量(相当于服务员数)
MinSpareServers5至少空闲的进程数量
MaxSpareServers20最多有20个闲人,多了就回收了。
ServerLimit256
MaxClients256最多访问客户量
MaxRequestsPerChild4000一个客户端可能开好几个页面,总数不能超
Userapache万一黑客劫持了服务器,也只能局限于apache用户和组
Groupapache
#ServerName:
80服务器监听哪个域名(ip)及端口
DocumentRoot"/var/www/html"默认主页的目录
//ip/~user来访问
#
#UserDirisdisabledbydefaultsinceitcanconfirmthepresence
#ofausernameonthesystem(dependingonhomedirectory
#permissions).
#
#UserDirdisabled
UserDiron这个设置打开,则可以http:
//ip/~user来访问
#
#Toenablerequeststo/~user/toservetheuser'spublic_html
#directory,removethe"UserDirdisabled"lineabove,anduncomment
#thefollowinglineinstead:
#
UserDirpublic_html这个需要在用户/home/user/下建立public_html目录
子项目3.Web服务器的实践项目案例配置(选做)
案例一、设置用户的主页
以natasha用户为例,该用户家目录在/home/natasha
如果natash用户不存在,则首先建立该用户
#addusernatasha
#cat/etc/passwd|grepnatasha
natasha:
x:
501:
501:
:
/home/natasha:
/bin/bash
1、第一步,确定当前是root用户,编辑参数文件
#vim/etc/httpd/conf/httpd.conf
修改
//ip/~user来访问
#UserDirdisable//这个设置注释,则可以http:
//ip/~user来访问
UserDirpublic_html//这个需要在用户/home/user/下建立public_html目录
2、第二步,为/home/natasha及其子目录赋予相应权限
#chmod–R755/home/natasha
3、第三步,以natasha用户身份建立相应目录及文件
#su–natasha
$mkdirpublic_html
$chmodo+x.
[natasha@hpc~]$ll
total12
drwxrwxr-x.2natashanatasha4096Sep1617:
08public_html
……
[natasha@hpc~]$vim./public_html/index.html//添加一句话在该文件中
hello!
world!
Thisisnatasha’smasterPage !
[natasha@hpc~]$su
4、第四步,配置Selinux上下文(这一步非常重要)
#chcon–R-thttpd_sys_content_t/home/natasha
(或者这么写chcon--reference=/var/www/html/home/natasha建议写法)
注意:
只要是不在/var/www/目录下建立的网站目录,都需要设置selinux上下文。
5、第五步,验证
最后验证一下,在该局域网内找一台机器,输入地址(httpd所在机器ip202.207.122.160)
http:
//202.207.122.160/~natasha/
可以通过以下命令查看Selinux是否打开
#setenforce1//临时打开Selinxu功能,注意最后是数字1
#getenforce//通过此命令查看Selinux运行状态
Enforcing//强制执行SELinux功能,产生警告信息
#setenforce0//临时关闭Selinxu,注意最后是数字0
#getenforce
Permissive//仅显示警告信息,不阻止,如果返回 Disabled则表明停用SELinux功能
6、问题汇总:
如果出现下图,不能访问
也可能是防火墙的原因,请设置防火墙规则,如下图:
案例二、设置独立网站
Web应用案例:
部门内部需要搭建一台Web服务器,采用IP地址和端口为192.168.1.160:
80,首页采用index.html文件。
管理员E-mail地址为root@。
所有的网站资源都放置在/var/www/html目录下。
步骤1:
修改主配置文件httpd.conf
#vim/etc/httpd/conf/httpd.conf
ServerRoot"/etc/httpd"
Timeout180
Listen80
ServerAdminroot@
ServerName192.168.1.160:
80
DocumentRoot"/var/www/html"
DirectoryIndexindex.html
AddDefaultCharsetGB2312
以上文件各行代码的功能说明如下:
设置Apache的根目录为/etc/httpd。
设置客户端访问的超时时间为180秒。
设置httpd监听80端口。
设置管理员E-mail地址为root@。
设置服务器的主机名和监听端口为192.168.1.80:
80。
设置Apache的文档目录为/var/www/html。
设置主页文件为index.html。
设置服务器的默认编码为GB2312。
步骤2:
重新启动httpd服务
步骤3:
将制作好的网页放置在目录/var/www/html中。
步骤4:
测试。
案例三、设置虚拟网站
现实需求:
一台Web服务器如果仅为一个网站提供服务,那将造成极大的浪费,现在希望多个Web网站建立在一台Web服务器上,网站之间互不干扰。
基于IP地址的虚拟主机
假设Apache服务器具有192.168.0.12和192.168.0.13两个IP地址。
现需要利用这两个IP地址分别创建2个基于IP地址的虚拟主机,要求不同的虚拟主机对应的主目录不同,默认文档的内容也不同。
1.通过图形界面为eth0网卡添加另外两个ip,如下图所示
2.分别创建“/var/www/ip2”和“/var/www/ip3”两个主目录和默认首页文件。
#mkdir/var/www/ip2
#mkdir/var/www/ip3
#echo"thisis192.168.0.12's">/var/www/ip2/index.html
#echo"thisis192.168.0.13's">/var/www/ip3/index.html
3.设置DNS解析//目的是httpd启动时不出现错误提示
#vim/var/named/.zone//正向解析文件
$TTL1D
@INSOA..(
0;serial
1D;refresh
1H;retry
1W;expire
3H);minimum
NS@
A127.0.0.1
AAAA:
:
1
dnsINA192.168.0.111
serverINA192.168.0.111
wwwINA192.168.0.111
testINA202.207.122.101
ftpINCNAMEdns
w2INA192.168.0.12//此处添加2行
w3INA192.168.0.13
#vim/var/named/192.168.0.zone//编辑反向解析文件
$TTL1D
@INSOA.(
0;serial
1D;refresh
1H;retry
1W;expire
3H);minimum
NS@
A127.0.0.1
AAAA:
:
1
PTRlocalhost.
111INPTR.
112INPTR.
12INPTR.
13INPTR.
4.在httpd.conf文件中,设置基于IP地址的虚拟主机,配置内容如下。
#vim/etc/httpd/conf/httpd.conf
80> ServerAdminwebmaster@dummy- DocumentRoot/var/www/ip2 Directoryindexindex.html 80> ServerAdminwebmaster@dummy- DocumentRoot/var/www/ip3 Directoryindexindex.html 5.重新启动httpd服务。 #servicenamed
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 文件 Web 服务