WordPress 网站安全:Nginx 规则配置

2022-03-24 11:33:55 浏览数 (3)

只需简单设置 Nginx 规则,就能提高 WordPress 网站的安全性,比如限制访问 XMLRPC、限制请求类型、禁止直接访问 PHP 文件和禁止访问某些敏感文件等。将如下代码,放到 WordPress 站点所使用的 Nginx 配置文件 server {} 内即可。

1.限制访问 XMLRPC

WordPress中 的 XMLRPC 端点(根目录下的xmlrpc.php文件)用于允许外部应用程序与WordPress数据交互。例如,它可以允许添加、创建或删除文章。但是,XMLRPC也是一种常见的攻击媒介,攻击者可以在未经授权的情况下执行这些操作。所以最好允许从您信任的授权 IP 请求XMLRPC,如下所示:

代码语言:javascript复制
location ~* /xmlrpc.php$ {
    allow 172.0.1.1;
    deny all;
}

添加上述内容后,应该在浏览器中访问 xmlrpc.php 时会看到 403 错误响应代码。

2.限制请求类型

大多数情况下,您的网站可能只执行两种类型的请求:

GET - 从你的网站上检索数据 POST - 将数据提交到你的网站 所以,只允许我们的网站执行这两种请求类型,也是增强安全性的做法。

禁止直接访问PHP文件

在神不知鬼不觉的情况下,黑客可能会将PHP文件上传到你的服务器中,然后通过访问该恶意文件执行某些操作,即可在你的网站上创建后门。所有我们应该禁止直接访问任何php文件:

代码语言:javascript复制
location ~* /(?:uploads|files|wp-content|wp-includes|akismet)/.*.php$ {
    deny all;
    access_log off;
    log_not_found off;
}

4.禁止访问某些敏感文件

和 PHP 文件相似,以点开头的文件,比如 .htaccess、.user.ini 以及 .git 可能包含敏感信息。为了更安全,最好禁用对这些文件的直接访问。

代码语言:javascript复制
location ~ /.(svn|git)/* {
    deny all;
    access_log off;
    log_not_found off;
}
location ~ /.ht {
    deny all;
    access_log off;
    log_not_found off;
}
location ~ /.user.ini { 
    deny all; 
    access_log off;
    log_not_found off;
}

0 人点赞