apache的每个站单独分配一个用户,先假设下,系统 /data 目录下 有www.abc.com 和www.bbs.com ,要实现的目的就是比如www.abc.com被入侵,入侵者看不到并且修改不了www.bbs.com站内的文件。

分享下apache的每个站单独分配一个用户,先假设下,系统 /data 目录下 有www.abc.com 和www.bbs.com ,要实现的目的就是比如www.abc.com被入侵,入侵者看不到并且修改不了www.bbs.com站内的文件。www.abc.om 用abc用户,www.bbs.com用bbs用户。

apache装完都有www-data用户www-data用户组,所以网站都是以这个用户用户组运行,要权限单独出来先建两个用户。

useradd -g www-data -d /dev/null -s /usr/sbin/nologin abc
useradd -g www-data -d /dev/null -s /usr/sbin/nologin bbs

然后 apt-get install apache2-mpm-itk (安全权限分离的安全模块)

再添加虚拟主机时候添加下指定用户

<VirtualHost *:80>
DocumentRoot "/var/www/www.abc.com"
ServerName www.abc.com
CustomLog /var/log/apache2/www.abc.com.log combined
AssignUserId abc www-data
<Directory "/var/www/www.abc.com">
allow from all
Options -Indexes
</Directory>
</VirtualHost>

然后重启下apache,这样每个网站运行用户就分离出来了,然后就是设置目录以及文件权限了,

chown root.root /data
chmod 751 /data  (这样就可以禁止其它组查看该目录的权限,入侵者就看不到/data下有那些网站目录,当然你可以来个711 什么的)

cd /data
chown abc.www-data www.abc.com
chmod 500 www.abc.com
cd www.abc.com
chmod -R 700 upload 因为这个目录要上传,所以要给写人的权限
chmod -R 500 images 图片目录给500就可以,不需要写入,400也应该可以
chmod -R 500 *.php 防止php或者html被挂马,给个500或者400就行

阅读()
评论 0
本文分类