iLeichun

当前位置: 首页 > Linux

设置WordPress的目录或文件权限

分类:Linux   来源:网络   时间:2010-11-20 15:01:38

在各式各样的网络攻击手段层出不穷的今天,如何将恶意攻击者拒之门外,保证Web服务器的安全便成了网站能够稳定地提供服务的最基本保障。当然,网络与服务器安全是一个很大的话题,相对而言,一般性的博客网站也很难成为网络攻击者的目标,但若由此便掉以轻心则显然是不智的,毕竟,如今网络攻击的门槛越来越低,即使一个懵懵懂懂的小P孩使用随处可以找到的攻击工具也可能对我们的网站带来事实上的伤害。
那么,应如何保证我们基于WordPress博客的安全呢?
这一方面要求我们在为博客选择虚拟主机时考虑主机商的硬件设备与技术能力,确定其是否能够稳定地抵御绝大多数的网络攻击,另一方面,也需要我们正确地设置Web服务器中的目录/文件权限,不给恶意攻击者可乘之机。
从理论上来说,要保证Web服务器的安全,最简单的办法便是赋予文件最低的操作权限,比如说所有文件均为只读,而不可写不可执行,这样,攻击者便会无从下手。但在实际应用中,情况并非这么简单,以使用 WordPress搭建的博客网站来说,必须赋予某些文件的可写、可执行权限,因为WordPress自身在运行过程中需要存取、修改某些文件才能实现网站的服务功能。
对Wordpress目录/文件权限的设置,实际上就是在网站的可用性、易用性与安全性之间寻得一个恰当的平衡。下面我们具体来讨论一下(以Linux/Apache平台、WordPress位于网站根目录为例):
“/wp-admin/”: WordPress管理目录,其中的所有文件应该只赋予所有者可写权限;
“/wp-includes/”:WordPress 支持库目录,其中的所有文件应该只赋予所有者可写权限;
“/wp-content/”:这个目录下的文件权限设置相对复杂了些,让我们分别来看;
“/wp- content/themes/”:对于WordPress主题目录下的文件,如果您从不使用WordPress内置的主题编辑器,那么可以简单地设置其仅允许所有者可写;当然,对大部分朋友来说,可能常常需要修改主题如css、模板文件等,这就应赋予这些文件Apache运行用户(一般为nobody)所在组的可写权限。
而“/wp-content/plugins/”目录下存放的插件文件,同样也需视情况而定,一般而言,大部分插件可以只赋予所有者可写权限,但同样也存在部分插件需赋予Apache运行用户(一般为nobody)所在组的可写权限。
而如果要使用WordPress内置的Database Backup插件,则需要将整个“/wp-content/”目录赋予可写的权限,一般为755,在某些主机设置中甚至可能需要更高的777。
“/”:WordPress 根目录,应该只赋予所有者可写权限;不过,如果您的博客使用Permalinks,需要WordPress来自动生成、应用rewrite规则,则必须赋予Apache 对“.htaccess”的操作权限。此外,如其中内含连接wordpress 数据库的用户名与密码的“wp-config.php”,则应赋予更严格的操作控制,禁止遍历,极端情况下可直接将其设为600。

更多