it-swarm.cn

解决安全问题的理想设置是什么?

我知道WP对某些目录和文件的要求是可写的。我也知道权限过于宽松会打开安全漏洞。最后,我知道在Linux系统上运行的用户(在此处插入您的服务器)可能是一个因素。

除了安全性,我喜欢能够将主题和插件下载到我的博客,并在必要时更新它们。正确的权限似乎与此偏好有点不一致。

我已经在这里和那里收集了一些细节,但我希望看到一个更明确的答案,如果有的话:对安全性点头的首选设置是什么?应该有什么权限,网站运行的用户,等等。

8
Grant Palin

如果您具有对服务器的FTP访问权限,则最安全的设置不是您的主题或插件目录可由您的网络服务器写入,而是使用FTP使用WordPress更新文件。当您更新插件时,WordPress将提示您输入FTP详细信息。

FTP方法比直接文件写入慢很多,但它更安全,因为恶意脚本将无法修改您的文件。

10
Viper007Bond

正如@ Viper007Bond所指出的那样,就文件权限而言,通过内置更新机制更新核心,插件和主题是非常安全的,因为它们可以使用您的实际用户凭据。为了最大限度地提高安全性,您需要确保安装了 SSH2 PHP扩展名 。安装方法(如果可能)可能因主机到主机而异,所以如果它还没有,您可能需要询问托管服务,或者进行一些谷歌搜索。

许多共享托管服务将在其Apache设置中使用suexec,以便Web服务以实际用户身份运行。这消除了大多数权限问题,并有助于保护您的文件免受服务器上其他用户的影但是,如果Apache作为单独的用户运行,如果要将文件上载到WordPress,则必须打开上载目录的权限。

在这种情况下,您可能希望wp-content/uploads目录具有0713权限(AKA rwx--x-wx)。这为目录所有者提供了完全权限,他们的组可以读取文件if他们知道完整路径,而其他人(包括Web服务器)可以读取他们知道路径的文件可以创建/写入文件。

一些缓存插件还希望有一个可以写入的wp-content/cache目录(或类似)。相同的权限建议将适用于此。

最后,对于非常永久链接,WordPress需要能够修改.htaccess文件,除非您打算手动更新它。在这种情况下,您需要0646作为文件模式。但是,一旦您确定了固定链接结构,通常不需要再次更改它,因此您可以关闭额外的写入权限,并将其设置为0644。有时,插件或核心升级可能需要访问它,您可以暂时为此重新打开写入权限,然后再将其关闭。

所有其他文件应具有0644权限。如果你是偏执狂的话,目录应该是0711,但这可能会干扰需要从目录中获取文件列表的任何插件。在这种情况下,或者如果你不是那么偏执,使用0755,这将允许其他人阅读,但不能写。

如果您在共享主机上,大多数情况主要是一个问题。如果您有专用服务器(包括VPS),没有其他用户具有ssh/ftp访问权限,那么您可以放松一点。我并不是说你应该让所有东西都公开可写,但你可能只是信任系统默认值,这可能是0755对目录的权限而不是0711

如果是一个选项,请为该站点安装一个SSL证书,一旦您测试了可以通过https访问您的站点,您可以通过将这些行添加到wp-config.php文件来强制SSL进行管理员登录和访问,就在之前'停止编辑'评论:

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
8
Dougal Campbell