linux网站目录及Apache权限的设置

apache服务器访问权限设置
禁止所有访问:Options Indexes FollowSymLinks 改为 Option None  
 
Apache单个或多个目录禁止访问方法 
  这种方法通常用来禁止访问者访问后台管理目录或者程序目录,方法如下 1、打开apache配置文件httpd.conf 
2、创建Directory块,比如禁止访问某个类库目录,可以这样实现 <Directory /var/www/www.leapsoul.cn/inc>     Order Deny,Allow     Deny from all </Directory> 
上述代码实现了禁止所有用户访问www.leapsoul.cn下inc目录的功能。如要实现禁止访问所有目录中inc目录的功能,只要将 
<Directory /var/www/www.leapsoul.cn/inc> 更改为 
<Directory /var/www/www.leapsoul.cn/*/inc> 即可 
3、重启Apache服务器。  
只允许某个域名进行目录访问 
1 2 3 4 5 <Directory /var/www/www.leapsoul.cn/inc>     Order Deny,Allow     Deny from abc.com     Allow from apache.org </Directory> 
上述代码实现禁止abc.com域中主机访问inc目录,允许apache.org域中主机访问inc目录的功能。  
只允许或禁止某个IP进行目录访问 
 
 
 
<Directory /var/www/www.leapsoul.cn/inc>     Order Deny,Allow 
    Deny from 10.1.1.2     Allow from 192.168.1.0/255.255.255.0 </Directory> 
上述代码实现禁止IP10.1.1.2访问www.leapsoul.cn/inc目录,允许IP192.168.1子网中的主机访问www.leapsoul.cn/inc目录的功能。 
注意:Allow from 192.168.1.0/255.255.255.0等同于Allow from 192.168.1或Allow from 192.168.1.0/24 
  至此,通过配置Apache服务器我们可以实现禁止目录访问(列出目录或文件列表),也可以实现禁止访问单个或者多个目录,更可以对访问者进行控制,比如允许或禁止某个IP或者域名对目录进行访问,这些功能对提高和优化WEB服务器的安全性能是必不可少的方法。  
Apache Server基于主机的访问控制 
  Apache Server默认情况下的安全配置是拒绝一切访问。假定Apache Server内容存放在/usr/local/apache/share 目录下,下面的指令将实现这种设置:     Deny from all 
  Allow Override None 
  则禁止在任一目录下改变认证和访问控制方法。  
  同样,可以用特有的命令Deny、Allow指定某些用户可以访问,哪些用户不能访问,提供一定的灵活性。当Deny、Allow一起用时,用命令Order决定Deny和Allow合用的顺序,如下所示: 
拒绝某类地址的用户对服务器的访问权(Deny) 
  如:Deny from all 
  Deny from test.cnn.com   Deny from 204.168.190.13 
  
Deny from 10.10.10.0/255.255.0.0 
允许某类地址的用户对服务器的访问权(Allow) 
    如:Allow from all 
  Allow from test.cnn.com   Allow from 204.168.190.13 
  Allow from 10.10.10.0/255.255.0.0 
  Deny和Allow指令后可以输入多个变量。 
简单配置实例: 
  Order Allow, Deny   Allow from all 
  Deny from www.test.com 
  指想让所有的人访问Apache服务器,但不希望来自www.test.com的任何访问。   Order Deny, Allow   Deny from all 
  Allow from test.cnn.com 
  
指不想让所有人访问,但希望给test.cnn.com网站的来访。
-----------------------------------------------------------------------
Linux下Apache网站目录读写权限的设置
网站目录文件权限的设置对网站的安全至关重要,下面简单介绍网站目录文件权限的基本设定。
我们假设http服务器运行的用户和用户组是www,网站用户为centos,网站根目录是/home/centos/web。
1、我们首先设定网站目录和文件的所有者和所有组为centos,www,如下命令:

chown -R centos:www /home/centos/web
2、设置网站目录权限为750,750是centos用户对目录拥有读写执行的权限,这样centos用户可以在任何目录下创建文件,用户组有有读执行权限,这样才能进入目录,其它用户没有任何权限。

find -type d -exec chmod 750 {} \;
3、设置网站文件权限为640,640指只有centos用户对网站文件有更改的权限,http服务器只有读取文件的权限,无法更改文件,其它用户无任何权限。

find -not -type d -exec chmod 640 {} \;
4、针对个别目录设置可写权限。比如网站的一些缓存目录就需要给http服务有写入权限。例如discuz x2的/data/目录就必须要写入权限。

find data -type d -exec chmod 770 {} \;

posted @ 2015-09-11 18:34  bwteacher  阅读(1144)  评论(0编辑  收藏  举报