网站被攻击或恶意抓取?教你限制指定IP访问网站

  • 酉灿
  • 收藏夹吃灰系列
  • Aug 26, 2020

下面介绍一种通过修改.htaccess文件来限制指定IP或IP段访问的方法。(注意:该方法仅适用于Linux主机)

打开.htaccess文件(如果没有创建,可在本地任意创建一个空文档,然后上传至FTP后改名.htaccess),加入以下代码:

 

禁止特定IP地址访问

以下是禁止特定地址访问,但其他IP地址可以正常访问的设置方法。禁止特定的IP地址可根据现场实际情况而定,以下以123.0.0.1地址为例。

Order Allow,Deny
Allow from all
Deny from 123.0.0.1

禁止部分IP地址访问

以下是禁止部分地址访问,但其他IP地址可以访问的设置方法。禁止的部分IP地址可根据现场实际情况而定,以下以123.0.0.1、123.0.0.2和123.0.0.3地址为例。

Order Allow,Deny
Allow from all
Deny from 123.0.0.1 123.0.0.2 123.0.0.3

禁止IP地址段访问

以下是禁止IP地址段访问的设置方法。禁止的IP地址段可根据现场实际情况而定,以下以192.168.1.0/24地址段为例。

Order Allow,Deny
Allow from all
Deny from 192.168.1.0/24

关于使用htaccess文件限制IP地址访问的注意事项如下:

  • Order关键字可以决定Allow和Deny起作用的顺序,简单的说就是谁排在最后,谁就有最终的决定权。Allow表示允许,Deny表示拒绝。
  • Order Deny,Allow是先检查是否有Deny规则,无论有没有Deny规则都会继续检查是否有Allow规则,如果有Allow,则Allow规则的内容可以覆盖掉Deny规则。
  • Order Allow,Deny则与上一条的内容相反。
  • 以下是禁止所有IP地址访问的设置方法。
    Order Allow,Deny
    Allow from 123.0.0.1
    Deny from all
    说明:
    • Order Allow,Deny为先检查Allow,而Deny拥有决定权。
    • Allow from 123.0.0.1为只允许123.0.0.1地址访问网站。
    • Deny from all为禁止所有IP地址访问网站。
  • 以下是只允许特定IP地址访问网站的设置方法,以下以123.0.0.1地址为例。
    #允许一个IP网段
    allow from 123.0.0.1/255
    
    # 或者你需要在这IP网段中允许部分IP地址访问
    allow from 123.0.0.0
    
    # 除此之外一切均可以访问
    allow from all

适用于

  • 云虚拟主机

 

ip段/数字-如192.168.1.0/24是什么意思?

后面这个数字标示了我们的网络号的位数,也就是子网掩码中前多少号为1

129.168.1.0 /24 这个24就是告诉我们网络号是24位

也就相当于告诉我们了

子网掩码是:11111111 11111111 11111111 00000000

即:255.255.255.0

打赏