![在 apache2 中阻止 IP](https://linux22.com/image/492368/%E5%9C%A8%20apache2%20%E4%B8%AD%E9%98%BB%E6%AD%A2%20IP.png)
好的,这里还有另一个新手问题。我有多个 IP 正在探测我的服务器,以查找 phpmyadmin 和其他管理员内容,看起来他们在寻找可以破解的东西,但老实说,我不在乎他们是谁,我只想阻止他们。我该如何阻止这些 IP?是在 .htaccess 中吗?我在 apache 中拥有所有身份验证模块,并且它们都已激活。
答案1
答案2
如果您的服务器和互联网之间有防火墙?那将是阻止它们的最佳位置。在服务器上阻止 IP 访问您的服务器将保护您免受暴力攻击,但不能保护您免受 DDoS 攻击,因为它们仍在发出您的服务器必须拒绝的请求。
如果您必须在本地执行此操作,我建议您在 iptables 中执行此操作。
答案3
可能更安全的做法是阻止所有人访问敏感 URL(PHPMyAdmin 等),只允许几个 IP 地址进入,这样您仍然可以访问这些服务。示例:
<Location /sensitive/url>
Order allow,deny
Allow from 127.0.0.1 a.b.c.d your.manager.hosts.address
Deny from all
</Location>
当然,这取决于具体情况是否适合您的需要。
您还可以将其与 HTTP 身份验证结合使用,这种方法可能更灵活。如果您使用Order
和Require
Satisfy Any
在<Location />
或<Directory />
块中,那么您可以从任何地方访问此资源。在这种情况下,如果您来自行中定义的 IP 地址之一Allow
,则可以照常访问 URL。但是,如果您来自其他主机,则 Web 服务器会要求输入用户名和密码。
我希望这能有所帮助。