阿里云云虚拟主机使用Nginx文件或.htaccess文件屏蔽IP地址访问

为了提高Linux操作系统云虚拟主机上的网站安全性,防止恶意访问造成网站性能降低。本文为您介绍通过主机管理控制台配置Nginx文件或.htaccess文件来屏蔽单个IP地址、多个IP地址或者IP地址段访问网站的方法。

一、背景信息

为了提高网站安全性,您可以设置网站的指定访问权限,防止恶意IP地址访问网站,或者出现非法盗链和恶意采集网站资源的情况,造成资源占用、访问延迟或网站无法访问等问题,只允许您信任的授权IP地址访问网站。

不同类型云虚拟主机采用不同屏蔽IP地址的方法,如下所示:

1、增强版云虚拟主机(Nginx):在云虚拟主机管理控制台的Nginx设置页面,您可以通过Nginx文件快捷配置屏蔽IP地址规则。

2、普通版Linux操作系统云虚拟主机(Apache):在云虚拟主机管理控制台的站点根目录下,您可以通过.htaccess文件配置屏蔽IP地址规则。

二、注意事项

为保证Nginx服务的稳定性,云虚拟主机管理控制台支持allow、deny指令只能在location指令中配置来编写Nginx文件。 使用.htaccess文件屏蔽IP地址访问时,需注意以下几点:

1、Order指令可以决定Allow规则和Deny规则的生效顺序,即哪个规则排在最后,哪个规则就有最终决定权。其中,Allow表示允许,Deny表示拒绝。

2、Order Deny,Allow的执行逻辑为先检查是否有Deny规则,无论有没有Deny规则都会继续检查是否有Allow规则,如果有Allow规则,则执行Allow规则且完全覆盖掉Deny规则。例如,以下规则表示允许所有IP地址访问网站。

<pre id=”codeblock-vca-ym7-2vj” class=”pre codeblock”><code class=”hljs language-undefined”>Order Deny,Allow # 先检查Deny规则,但Allow规则拥有决定权。

Deny from 192.168.13.0 # 只禁止192.168.13.0地址访问网站。

Allow from all # 允许所有IP地址访问网站。</code></pre>

3、Order Allow,Deny的执行逻辑为先检查是否有Allow规则,无论有没有Allow规则都会继续检查是否有Deny规则,如果有Deny规则,则执行Deny规则且完全覆盖掉Allow规则。例如,以下规则表示禁止所有IP地址访问网站。

<pre id=”codeblock-vca-ym7-2vj” class=”pre codeblock”><code class=”hljs language-undefined”>Order Allow,Deny # 先检查Allow规则,但Deny规则拥有决定权。

Allow from 192.168.13.0 # 只允许192.168.13.0地址访问网站。

Deny from all # 禁止所有IP地址访问网站。</code></pre>

三、使用Nginx文件屏蔽IP地址

如果您的网站在增强版云虚拟主机(Nginx)上运行,请按照本操作配置网站的指定访问权限,屏蔽不允许的IP地址访问。

1、登录云虚拟主机管理页面。

2、找到待配置Nginx文件的增强版云虚拟主机,单击对应操作列的管理。

3、在左侧导航栏,选择高级环境设置 &gt; NGINX设置。

4、在NGINX设置页面的编辑区域,输入您的配置Nginx文件内容(IP地址屏蔽规则)。 以WordPress网站配置Nginx文件为例。

(1)禁止单个IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">location / {

deny 192.168.13.0;

}</code></pre>

(2)禁止多个指定IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">location / {

deny 192.168.13.0;

deny 192.168.13.1;

deny 10.1.5.0;

}</code></pre>

(3)禁止多个不指定IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">location / {

allow 192.168.13.0;

allow 10.1.5.0;

deny all;

}

</code></pre>

(4)禁止IP地址段访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">location / {

deny 192.168.13.0/24;

}</code></pre>

(5)Nginx文件编辑完成后,单击保存设置。

完成IP屏蔽规则的配置后,如果这些屏蔽的IP再次访问您的网站,网页会返回403错误,表示您无访问权限。

四、使用.htaccess文件屏蔽IP地址

如果您的网站在普通版Linux操作系统云虚拟主机(Apache)上运行,请按照本方法配置网站的指定访问权限,屏蔽不允许的IP地址访问。

1、登录云虚拟主机管理页面。

2、找到待管理网站文件的Linux操作系统云虚拟主机,单击对应操作列的管理。

3、在左侧导航栏,选择文件管理 &gt; 文件管理器。

4、在文件管理器页面,上传网站程序文件到Linux操作系统云虚拟主机。

5、在Linux操作系统云虚拟主机的/htdocs目录下,找到需要查看或修改的.htaccess文件,单击对应操作列的查看。

6、在弹出的文件查看/编辑页面的编辑区域,输入您的.htaccess文件内容(IP地址屏蔽规则)。 以WordPress网站配置.htaccess文件为例。

(1)禁止单个IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">Order Allow,Deny

Allow from all

Deny from 192.0.2.0</code></pre>

(2)禁止多个指定IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">Order Allow,Deny

Allow from all

Deny from 192.0.2.1 192.0.2.0</code></pre>

或者

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">Order Deny,Allow

Deny from 192.0.2.1 192.0.2.0</code></pre>

(3)禁止多个不指定IP地址访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">Order Deny,Allow

Deny from all

Allow from 192.0.2.1 192.0.2.0</code></pre>

(4)禁止IP地址段访问

<pre id="codeblock-vca-ym7-2vj" class="pre codeblock"><code class="hljs language-undefined">Order Allow,Deny

Allow from all

Deny from 192.168.13.0/24</code></pre>

7、.htaccess文件编辑完成后,单击确认。完成IP屏蔽规则的配置后,如果这些屏蔽的IP再次访问您的网站,网页会返回403错误,表示无访问权限。

使用教程

西部数码企业邮箱创建部门和用户教程

2022-6-13 14:35:09

使用教程

腾讯云服务器手动搭建LAMP环境教程

2022-6-13 14:46:47

相关推荐