日期:2011-08-02 11:45:00 来源:本站整理
LINUX下架设WEB服务器[Linux安全]
本文“LINUX下架设WEB服务器[Linux安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在我本机配置时间不长,不过花了好长的时间写了份配置文档,和大家分享一下,但愿对大家有效
LINUX发行版本:Fedora 14 , Apache .2.2
安装就不说了!仍然采取rpm包安装方法 ,下面进入正题:
httpd.conf配置文件介绍
1、与Apache网络和系统相关的选项
#利用ServerRoot参数设置Apache安装目录
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
# you will save yourself a lot of trouble.
# Do NOT add a slash at the end of the directory path.
#
ServerRoot "/etc/httpd"
#利用Listen参数设置Apache监听端口,Apache默许是80
Listen 80
#利用User参数设置Apache进程的履行者
User apache
#利用Group参数设置Apache进程履行者所属的用户组
Group apache
#利用ServerAdmin参数设置网站管理员的邮箱地址
2、与Apache文件和目录权限相关选项
#利用DocumentRoot参数设置网站根目录
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/var/www/html"
#利用Directory段设置根目录权限
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
#利用Directory段设置/var/www/html目录权限
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
#设置首页为index.html
DirectoryIndex index.html index.html.var
#.ht后缀文件的拜候权限掌握与上目录的AllowOverride一同作用
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
3、与Apache日记相关的选项以下
#利用ErrorLog参数设置错误日记的位置
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that host's errors will be logged there and not here.
#
ErrorLog logs/error_log
#利用LogLevel参数设置错误日记的级别
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel warn
#利用LogFormat参数设置拜候日记的格局模板
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
#利用CustomLog参数设置拜候日记的格局模板
# For a single logfile with access, agent, and referer information
# (Combined Logfile Format), use the following directive:
#
CustomLog logs/access_log combined
4、相关参数的注释
1)ServerRoot参数 该参数用于指定Apache软件安装的目录
2)Listen参数 用于指定Apache所监听的端口,默许情形下Apache的监听端口为80.在服务器有多个IP地址的情形下,Listen参数还可以用于设置监听的Ip地址
3)User和Group参数 用于指定Apache进程的履行者和履行者所属的用户组,假如要用UIG大概GID,必须在ID前面加上#号
4)ServerAdmin参数 该参数用于指定Web管理员的邮箱地址,这个地址会呈目前系统衔接出错的时刻,以便拜候者可以及时告诉WEB管理员.
5)DocumentRoot参数 该参数用于指定Web服务器上的文档存放的位置,在未配置任何虚拟主机或虚拟目录的情形下,用户通过http拜候WEB服务器,全部的输出资料文件均存放在这里.
6)ErrorLog 用于指定记录,Apache运行历程中所产生的错误信息的日记文件位置,便利系统管理员发现和觖决弊端
5、标记链接和虚拟目录
1)虚拟目录是一种将根目录以外的内容加入到站点中的办法.设置办法以下
#利用Alias参数设置虚拟目录和实际目录的对应关系
Alias /lopn /var/www/lopn
#利用Directory段设置/var/www//lopn目录的拜候权限
<Directory "/var/html/lopn">
……
</Directory>
此时,重启服务器,利用 域名或IP/lopn便可拜候
2)标记链接:当时标记链接所实现的功效和虚拟目录是完好一样的,只不过是实现机制差别罢了!
还如上例:利用标记链接不需求改正配置文件,只需求在 根目录下成立一个衔接 利用以下指令
#ln -s /var/www/lopn lopn
此时便可通过 域名或IP/lopn便可拜候拜候到/var/www/lopn 下的内容
6、个人空间
拥有帐号的本地帐号可以操纵Apache公布自己的东西,假定有一用户lopn,则其公布地址为http://主机/~lopn
下面我们开始配置
<IfModule mod_userdir.c> //表示加载这个模块,表示apache开放个人空间功效
#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
UserDir disabled root /禁止root用户公布
#
# To enable requests to /~user/ to serve the user's public_html
# directory, remove the "UserDir disabled" line above, and uncomment
# the following line instead:
#
#UserDir public_html /去掉注释符开启功效,表示个人用户目录下的public_html 内容公布
</IfModule>
接下来要对目录的权限举行设置,以下,apache供应默许设置,去掉#号便可,以下所示
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
#
这样就配置好了个人空间.不过设置的时刻注意权限的设置
7、Apache安全配置
Apache 供应了多种的安全掌握手段,包含WEB拜候掌握,用户登录密布认证以及.htaccess文件等.
1)拜候掌握
在配置文件中,Direcotry段用于设置与目录像关的参数和指令,包含拜候掌握和认证
<Directory 目录的途径>
目录像关的配置参数和指令
</Directory>
相关指令:1.Allow指令用于设置哪些客户端可以方问Apache,格局以下
Allow from [All/全域名/部份域名/IP地址/网络地址/CIDR地址]
2.Deny指令用于设置回绝哪些客户端拜候Apache,格局跟Allow一样
3.Order指令用于指定履行拜候法则的先后次序
Order Allow,Deny :先履行充许拜候法则,再履行回绝拜候法则
Order Deny,Allow
2)用户认证
Apache的用户认证包含基本(Basic)认证和择要(Digest)认证两种.这里我们只探究一下基本认证
基本认证:当Web浏览器恳求经此认证情势保护的URL时,将会呈现一个对话框,要求用记输入用户名和口令.假如精确,则返回页面,不然返回401错误
要利用用户认证,首先要成立保存了用户名和口令的认证口令文件.可以用以下号令:
#htpasswd -c /etc/httpd/conf/users lopn *在/etc/httpd/conf目录下成立一个名为users 的认证口令文件,并加入一个名为lopn的用户
#htpasswd /etc/httpd/conf/users xrp *表示加入一个xrp用户
有了认证口令文件,接下来我们需求更改配置文件
#<Directory 目录名>
# Options Indexes FollowSymlinks
# AllowOverride None
#
# AuthType Basic *利用authtype参数设置认证范例
# AuthName 范畴名称 *用天设置受保护范畴的名称,此处没有限制,用户可根爱好设置
# AuthUserFile /etc/httpd/conf/users *利用AuthUserFile参数设置认证口令文件的位置
# Require user lopn *设置lopn用户可以拜候
# Require valid-user *受权给认证口令文件中的全部用户 ,与上一个选一种便可
#
# Order ……
# ……
#</Directory>
3)分布式配置文件.htaccess
.htaccess,该文件可以覆盖httpd.conf文件中的配置,但是它只能设置对目录的拜候掌握和用户认证..htaccess文件可以有多个,每个.htaccess文件的作用范围仅限于该文件所存放的目录以及该目录下的全部子目录..htaccess所能实现的功效在配置文件中都能实现,但是因为在.htaccess改正配置后并不需求重启服务就可以见效,所以有时刻是非常有效的1,操作以下
翻开配置文件在,设置
#<Directory 目录名>
# *答应.htaccess文件覆盖httpd.conf文件中对该目录的配置
# AllowOverride All
#</Directory>
然后到指定的目录,成立一个.htaccess文件,写入配置,不用重启便可以见效
8、虚拟主机(基于主机名)下面为配置文件中的说具体阐明,挺简单,这里就不反复了
#NameVirtualHost *:80
#全部接口都承受该恳求
# NOTE: NameVirtualHost cannot be used without a port specifier
# (e.g. :80) if mod_ssl is being used, due to the nature of the
# SSL protocol.
#
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
#<VirtualHost *:80>
# ServerAdmin webmaster@dummy-host.example.com
# DocumentRoot /www/docs/dummy-host.example.com
# ServerName dummy-host.example.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>
花了两天的时间张于
以上是“LINUX下架设WEB服务器[Linux安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论