Linux 如何在ELB或httpd级别阻止不需要的请求

Linux 如何在ELB或httpd级别阻止不需要的请求,linux,apache,amazon-web-services,virtualhost,httpd.conf,Linux,Apache,Amazon Web Services,Virtualhost,Httpd.conf,我有两个运行httpd的web服务器,其中有六个虚拟主机站点在上面运行。我的Web服务器在AWS的ELB后面。我的ELB日志显示,一些用户正在直接访问我的ELB服务器的IP,inturns会向他们提供我的第一个vhost站点的响应(响应基于我的vhost站点的字母顺序)。因此,这里我需要阻止请求url中不包含我的vhost名称的请求。在短时间内,有人正在访问AWS IP并试图从一些随机地址访问/admin、/sql、/db等,我需要在ELB级别或httpd级别阻止这些不需要的请求。下面是来自EL

我有两个运行httpd的web服务器,其中有六个虚拟主机站点在上面运行。我的Web服务器在AWS的ELB后面。我的ELB日志显示,一些用户正在直接访问我的ELB服务器的IP,inturns会向他们提供我的第一个vhost站点的响应(响应基于我的vhost站点的字母顺序)。因此,这里我需要阻止请求url中不包含我的vhost名称的请求。在短时间内,有人正在访问AWS IP并试图从一些随机地址访问/admin、/sql、/db等,我需要在ELB级别或httpd级别阻止这些不需要的请求。下面是来自ELB日志的此类错误之一

2017-07-21T03:22:19.973661Z <loadbalancer> <Client IP>:48010 10.1.6.57:80 0.000049 0.068249 0.000039 401 401 0 0 "HEAD http://52.0.168.49:80/phpmy/ HTTP/1.1" "Mozilla/5.0 Jorgee" - -
2017-07-21T03:22:19.973661Z:4801010.1.6.57:80 0.000049 0.068249 0.000039 4010 0“封头http://52.0.168.49:80/phpmy/ HTTP/1.1“Mozilla/5.0 Jorgee”-

如果您使用的是应用程序负载平衡器,则可以使用Web应用程序防火墙(WAF)来过滤直接指定IP地址的请求。

关于忽略对Web服务器实例的直接IP请求,我将确保您的Web服务器安全组只接受来自ELB正在运行的子网的流量。这样,它将忽略所有直接通信

关于阻止对特定路径的特定访问,最好在HTTPD级别完成,您可能需要考虑Fave2BAN实现。看

当然,您可以通过Apache配置控制/拒绝访问。上述相同的链接也表明了这一点:

您可以在论坛目录中创建一个.htaccess文件,并将这些 以下几行可能有助于通过访问来删除该url

命令允许,拒绝所有人


使用珍珠层。您可以在NACL中添加拒绝请求。稍后,它仍将保留在access_日志条目中,代码为404或403。