适当的WordPress文件系统权限和所有权性质

适当的WordPress文件系统权限和所有权性质

当人们谈论WordPress的安全性,文件权限和所有权通常都是在他们的头脑的最后一件事。安装安全插件是一个很好 […]

2014-05-11

当人们谈论WordPress的安全性,文件权限和所有权通常都是在他们的头脑的最后一件事。安装安全插件是一个很好的做法,并必须为每个WordPress的网站。但是,如果你的文件系统的权限设置不正确,大部分的保安措施很容易被入侵者绕过。

权限和所有权是非常重要的WordPress的安装。您的Web服务器上正确设置了这些应该是你的WordPress安装后要做的第一件事。具有组权限错误可能会导致停止你的网站死了致命的错误。错误的权限也可能会危及您的网站,使其容易受到攻击。

除了安全问题,一些其他的问题都源于具有设定权限和所有权的问题。你有没有遇到一个空白屏幕尝试加载你的网站是第一次什么时候?或者,你曾经试图在媒体上传上传图片时收到的错误信息?修正权限和您的文件和文件夹的所有权往往会解决这些类型的问题。

在这篇文章中,我们将教你所有关于WordPress的文件系统权限和所有权:它们是什么,为什么他们很重要,以及如何对它们进行设置。您将了解到我按照保持我的文件系统完好无损的几个基本原则。我们还将介绍两种最常见的WordPress的服务器配置。我们将解释它们之间的区别,更重要的是,如何设置适当的权限和所有权为每个。

终端比,FTP客户端

在这篇文章的过程中,我们将使用终端来改变权限和所有权。为什么不使用一个FTP客户端呢?原因在于FTP是一个有限的一点我们的需要。FTP可用于传输文件和更改文件和文件夹的权限,但它不能被用来改变所有权的设置。

要执行本文中列出的命令,你将不得不使用被记录到你的服务器的SSH命令。

用户和组

先天下之忧,我们需要迅速谈什么用户和组,因为这些定义权限时齐头并进。

简单来说,用户是可以访问计算机的帐户,和一群刚是一个标识符的一组特定的用户。这意味着,你每次传输使用FTP文件时,你是在服务器上使用的用户帐户。并视乎你的主机已为您的帐户,您(用户)可能属于一个或多个组。用户和组都像WordPress的用户和角色。两者在概念上是相同的,不同之处在于前者用于您的服务器上。

用户和组非常重要,因为它们有助于确定权限所有的文件和文件夹。文件的拥有者通常会具有完全权限就可以了; 谁属于同一组的其他用户将有更少的权限就可以了; 而其他人可能对它没有特权。这些权限就是我们所说的权限。

什么是文件权限?

权限决定哪些用户可以使用的一个文件。权限是由一组数字,如代表644或777,被称为一个权限模式。如果你已经在WordPress之前使用的插件,那么你最有可能被要求由他们中的一些改变文件或目录的权限,因为该插件不能写入。通过改变文件的权限,您允许Web服务器来访问该文件或文件夹。

想想一个权限模式为一组的“谁可以做什么”语句,其中每个数字对应的是“谁”的声明的一部分:

  • 第一个数字
    是什么帐户拥有该文件的用户可以做
  • 第二个数字
    是什么其他的用户所有者的组帐户可以做
  • 第三个数字
    是什么其他人(包括网站的访问者)的用户帐户可以做

接下来,这个数字相当于该语句的“是什么”的一部分,是任何这些数字的组合的总和:

  • 4
    读取一个文件,或读取文件的名称的文件夹中
  • 2
    写或修改一个文件,或修改文件夹的内容
  • 1
    执行或运行文件,或访问一个文件夹中的文件

这些数字是分配给在允许模式“谁”的权限。注意上面列表中的特权意味着文件和文件夹不同的东西。

使用正确的权限模式是很重要的。为了更好地说明这一点,在WordPress的用户和角色的重新思考。在WordPress的网站,提供者和管理员有不同的功能集。提供者可能会创建新的博客文章,但他们可能不会添加插件。管理员,在另一方面,可以添加插件,也可以创建博客文章。管理员甚至可以改变网站的外观,如果他们想。一个明显的线分开哪些用户在不同的角色可以做。这是相同的许可模式,除了没有处理的博客帖子和主题选择,我们正在处理的服务器上的文件和文 ??件夹。

改变权限模式

FTP客户端通常会提供一个界面,您可以方便地改变你的文件和文件夹的权限模式。在这里,在我的FTP客户端界面的截图:

许可模式接口的例子

如果您可以访问您的服务器的终端,您还可以使用CHMOD命令来更改某个文件或文件夹的权限模式:

须藤CHMOD 644  <文件>

要改变所有文件或文件夹的权限模式,使用文件模式为配合查找命令。例如,您可以使用它来 ??的所有文件更改为644:

sudo的发现。 -型的F - EXEC CHMOD 644  { }  +

或用它来 ??改变所有文件夹到755:

sudo的发现。 - D型- EXEC CHMOD 755  { }  +

之间的644和777的区别

让我们来看看一些权限模式以及它们如何影响我们的网站。

你会与一个权限模式PHP脚本644是什么意思?按照上面的权限模式是如何工作的解释,我们可以破译这是什么模式可以让用户做我们的脚本:

  • 主人的特权是“读”(4)+“写”(2)= 6
  • 雇主组权限是“读取”(4)= 4
  • 其他人的权限是“读取”(4)= 4

用通俗易懂的语言,这意味着:

  • 如果我们自己的脚本,我们可以读取并修改它;
  • 其他人只能读取它。

正如我们所看到的,644是个不错的许可模式,为我们的PHP脚本。我们可以修改它,我们的Web服务器可以读取它。

现在,让我们来看看文件夹。如果我们拥有的是有一个权限模式的文件夹777?此权限模式可作如下分解:

  • 主人的特权是“读”(4)+“写”(2)+“执行”(1)= 7
  • 雇主组权限是“读取”(4)+“写”(2)+“执行”(1)= 7
  • 其他人的权限是“读取”(4)+“写”(2)+“执行”(1)= 7

这意味着

  • 任何人都可以得到我们的文件夹中的文件名列表;
  • 任何人都可以创建,修改和删除文件夹我们的任何文件;
  • 任何人都可以访问我们的文件夹中的文件。

很明显,777是一个坏的许可模式,我们的WordPress网站任何东西,因为任何访问者将能够将文件添加到我们的目录,甚至删除脚本。更糟的是,任何人都能够把恶意代码,并危及我们的网站。

WordPress的服务器配置

现在,我们知道权限,以及如何读取它们。但是在继续改变我们所有的权限之前,我们需要了解我们的服务器是如何设置的。因为权限处理用户帐户和组,我们需要知道我们是如何WordPress的网站运行。

很多不同的服务器配置是在那里。不同的配置需要不同的权限模式为WordPress的正确和安全地工作。我们将谈论刚才的那两个最常见的配置和适当的权限给他们:

  • 标准服务器配置:

    • 你有一个用户帐户。
    • 您的Web服务器运行作为另一个用户帐户。
  • 共享服务器配置或suEXEC的配置:

    • 你有一个用户帐户。
    • 谁使用该服务器上的其他人有用户帐户,并可能会与您的用户帐户共享同一组。
    • 您的Web服务器运行为你的WordPress文件的拥有者。

这两者之间的主要区别是在Web服务器的运行方式。

权限对于一个标准的WordPress的服务器配置

标准的WordPress配置需要比共享服务器配置更多的工作,因为Web服务器有我们的用户帐号没有任何关系。

文件和文件夹所有权为WORDPRESS

首先,我们需要调整我们的WordPress的文件的文件和文件夹的所有权。我们必须确保以下几点:

  • 您的用户帐户是WordPress的所有文件和文件夹的所有者,
  • 您的用户帐户和Web服务器的用户帐户属于同一组。

要找出您的用户帐户属于,你可以在你的服务器的终端使用这个命令的群体:

团体

然后,找出你的Web服务器所属的组,可以暂时将这个PHP代码片段在你的WordPress脚本之一:

回声 EXEC (  '组'  );

如果你的用户和Web服务器不属于同一个组,你可以使用下面的命令在终端给你的用户添加到您的Web服务器的群体之一:

须藤usermod -一-摹<一-普通-组-名>为myuser

最后,为了确保一切都在我们的WordPress的文件夹属于我们的用户帐户,并具有我们刚刚添加的组共享的,在你的WordPress文件夹中执行以下命令:

sudo的发现。 - EXEC乔敦为myuser :一个-通用-组-名{ }  +

权限为WORDPRESS

我们的所有文件和文件夹现在应该有正确的所有权。现在是时候来调整权限模式。为了让事情简单,你只需要记住以下几点:

  • 所有的文件应该是664。
  • 所有的文件夹应该是775。
  • 的wp-config.php文件应该是660。

下面是我们正在努力实现这一集的许可模式:

  • 我们的用户帐号可以读取和修改我们的文件。
  • WordPress的(通过我们的Web服务器),可以读取和修改我们的脚本。
  • WordPress的可以创建,修改或删除文件和文件夹。
  • 其他人可能看不到我们的数据库凭据的wp-config.php文件。

你可能会想,让WordPress的完全权限与我们的文件夹是不是安全的。不要担心 – 我们这样做是因为WordPress需要一定的功能来创建和修改文件。WordPress允许我们上传和删除从管理后端主题和插件,甚至编辑脚本和样式。如果没有这种类型的许可,我们将不得不在每次使用FTP手动上传主题和插件。

您可以使用FTP客户端来改变权限模式,也可以使用下面的命令在你的WordPress目录中快速调整您的所有文件和文件夹的权限:

sudo的发现。 -型的F - EXEC CHMOD 664  { }  + 
sudo的发现。 - D型- EXEC CHMOD 775  { }  + 
sudo的文件模式660的wp -配置。 PHP

请注意,有些Web服务器是比别人更严格。如果你是严格的,那么你设置的wp-config.php文件,以660可能会停止您的网站无法正常工作。在这种情况下,只要把它作为664。

权限对于共享服务器配置或suEXEC的配置

权限共享服务器配置更容易实现。我们不会对所有权纠缠,因为Web服务器作为我们的文件和文件夹的所有者运行。因为我们的用户帐户和Web服务器共享相同的权限(均为业主),我们可以深入到修改权限模式:

  • 所有的文件应该是644。
  • 所有的文件夹应该是755。
  • 的wp-config.php文件应该是600。

类似于前一组的权限模式,这些分解如下:

  • 我们的用户帐号可以读取和修改我们的文件。
  • WordPress的(通过我们的Web服务器和帐户拥有者)可以读取和修改我们的脚本。
  • WordPress的可以创建,修改或删除文件或文件夹。
  • 其他人可能看不到我们的数据库凭据的wp-config.php文件。

同样,你可以使用一个FTP客户端来改变权限模式,也可以使用下面的命令在你的WordPress目录中快速调整您的所有文件和文件夹的权限:

sudo的发现。 -型的F - EXEC CHMOD 644  { }  + 
sudo的发现。 - D型- EXEC CHMOD 755  { }  + 
sudo的文件模式600的wp -配置。 PHP

类似标准的WordPress服务器配置,服务器可能会比别人更严格,可能不会允许的wp-config.php文件是600。在这种情况下,你可以将它调整到一个较为宽松的640 ; 如果仍然无法正常工作,然后使用644。

始终遵循这些准则和您的WordPress文件应保持免受入侵者的安全。

常见的陷阱

一个常见的错误的人做的 ??是设置上传文件夹到777。有些人这样做是因为他们试图将图片上传到自己的网站时得到一个错误,并且777快速修复此问题。但永不放弃无限制地访问每一个人,否则你会做Web服务器容易受到攻击。如果你遵循了本文所涉及的准则,那么你应该没有问题上传文件到你的网站。

有时,虽然,插件会要求你设置一个文件777。在这些情况下,您可以暂时将其设置为777,但请务必将它恢复到原来的权限模式时,你就大功告成了。

结论

现在我们已经了解了适当的权限和WordPress的网站文件所有权。我们还学会了避免的权限模式777,因为它是如何危及Web服务器。

希望你能实现这些技巧,让你的WordPress网站的安全。如果您有关于权限和安全性的任何其他提示,请在下面留言分享。

米饭工作室翻译,原文地址:http://t.cn/8sDHXNy