A-A+

设网站文件目录与数据库权限防止入侵

2012年12月11日 计算机技术 暂无评论 阅读 55 views 次

网站运营的过程中,最令站长头痛的可能就是网站被入侵了,实际上,如果提前设置好网站的目录权限,就可以保证网站能够经受大部分的漏洞攻击。本文介绍了设置文件目录和数据库权限的方法,设置权限的方法也并不难,只要根据本文一步步进行操作,就可以大大提高网站的安全性。

网站目录权限的设置方法

大多数网站都是采用程序搭建,对于系统管理的目录,可以将其设置为可读也可执行脚本,但不可写入的权限;但是对于放置网页静态文件的目录,以及放置图片文件、模板文件的目录,就可以将其设置为可读写但不可执行的系统权限。在权限分配明确之后,即使系统被入侵,也只能浏览而无法对文件进行直接的操作。

对于能够执行脚本的文件,最好设置只能读而不能写的权限(如图),而需要写入的文件则将其设置为不能执行脚本,目录权限这样配置下来,网站系统的安全性会大大提高。如果只需要读取的目录或文件就只给读取权限,需要读取和写入的就给读取和写入权限即可其他的一概不给!

图片1

图片2

下面就架设单独一个网站相应的IIS权限和网站目录权限设置做下具体的介绍和说明。

iis配置(包括网站所在目录)

1.新建自己的网站(*注意:在应用程序设置中执行权限设为无,在需要的目录里再更改),目录不在系统盘

注:为支持asp.net,将系统盘\Inetpub\wwwroot中的aspnet_client文件夹复制到web根目录下,并给web根目录加上users权限。

2.删掉系统盘\inetpub目录

3.删除不用的映射

在"应用程序配置"里,只给必要的脚本执行权限:ASP、ASPX。

4.为网站创建系统用户

A.例如:网站为www.zzaq.net,新建用户www.zzaq.net权限为guests。然后在web站点属性里"目录安全性"---"身份验证和访问控制"里设置匿名访问使用下列Windows 用户帐户"的用户名和密码都使用www.zzaq.net这个用户的信息。(用户名:主机名\www.zzaq.net)

B.给网站所在的磁盘目录添加用户www.zzaq.net,只给读取和写入的权限。

5.设置应用程及子目录的执行权限

A.主应用程序目录中的"属性--应用程序设置--执行权限"设为纯脚本

B.在不需要执行asp、asp.net的子目录中,例如上传文件目录,执行权限设为无

6.应用程序池设置

我的网站使用的是默认应用程序池。设置"内存回收":这里的最大虚拟内存为:1000M,最大使用的物理内存为256M,这样的设置几乎是没限制这个站点的性能的。

回收工作进程(分钟):1440

在下列时间回收工作进程:06:00

数据库权限也要仔细设置

对于网站来说,数据库可以说是站点的核心,所有网站的内容都存储在数据库中。所以说数据库安全也是需要注意的地方。对于MySQL数据库来说,最好不要对网站直接使用root管理用户的权限,而要专门为每个站点开通一个数据库账号,而且将账户的权限设置仅限于操作当前数据库目录,并且对这些单独的MYSQL账号去掉file和EXECUTE的执行权限,这样一来,即使数据库被SQL注入,也只能到数据库一级,而无法拿到整个数据库服务器的权限。这样一来,只要经常对网站的数据库进行备份,就很少会出现数据库被入侵的情况。

另外需要注意的是,由于很多建站系统并没有使用数据库的存储过程,因此最好禁用FILE、EXECUTE 等执行存储过程或文件操作的权限。

小提示:对于Access的数据库来说,可以将数据库的存放位置进行修改,最好是较为隐蔽的目录,这样会避免数据库文件被恶意探测下载。另外,一些程序也支持修改后缀,比如可以将。mdb的数据库文件修改为。asa等后缀名,同样可以有效地保护数据库安全。

删除不需要的文件

很多内容管理系统中,都会在空间中存在很多以后并不需要的文件,最普遍的可能就属于系统安装文件了,这类文件通常被命名为install.php或者install.asp,如果你的空间中存在类似的文件,现在就赶快删除吧。

另外,一些CMS也会存在很多功能,如问答系统等等,但是往往这些功能在网站中都不会用到,这时候就建议将这些功能的目录删除,或者仅保留Html静态页面,然后将目录设置为可读写但不可执行的权限。

标签:

给我留言