[WebServer] Tomcat 配置访问限制:访问白名单和访问黑名单
前言:
昨天配置了 Tomcat 服务器运行 PHP 的环境,但是通过观察 Tomcat 这几天的日志发现,有很多莫名其妙的 IP 访问主机下莫名其妙的地址,如:/80、/testproxy.php、/cache/global/img/gs.gif、CONNECT check.best-proxies.ru:80 等等,后来通过搜索得知是一些进行 端口扫描 和其他网络攻击的的IP地址,为了防止这些 IP 的扫描和攻击,进一步保证服务器的安全和稳定,可以通过配置 Tomcat 的 server.xml 限制一些 IP 的访问。
123.249.27.191 - - [04/Apr/2016:00:18:33 +0800] "GET /80 HTTP/1.0" 404 576
185.25.151.159 - - [04/Apr/2016:00:36:39 +0800] "GET /testproxy.php HTTP/1.1" 404 576
172.82.166.210 - - [04/Apr/2016:02:01:49 +0800] "GET /cache/global/img/gs.gif HTTP/1.1" 404 576
95.213.187.189 - - [04/Apr/2016:02:03:05 +0800] "CONNECT check.best-proxies.ru:80 HTTP/1.1" 400 -
91.196.50.33 - - [04/Apr/2016:03:26:23 +0800] "GET /testproxy.php HTTP/1.1" 404 576
123.249.27.193 - - [04/Apr/2016:03:51:22 +0800] "GET /80 HTTP/1.0" 404 576
213.246.45.128 - - [04/Apr/2016:08:11:22 +0800] "GET /cache/global/img/gs.gif HTTP/1.1" 404 576
查看日志
配置:
找到 Tomcat 服务器根目录下的 conf/server.xml,在 <Host> 节点内添加一个属性 className 的值为 "org.apache.catalina.valves.RemoteAddrValve" 的 <Valve> 节点:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow=""
deny="123.249.27.19[1-3]|115.239.228.1[4-6]|169.54.233.1(1[6-9]|2[0-6])|62.138.2.(209|12(2|3)|21(3|4))|123.151.(149.222|42.61)|61.147.(121.73|103.119|247.85)|115.239.228.202|112.74.206.117"
denyStatus="403" />
其中 allow 属性可以配置访问白名单,deny 属性可以配置访问黑名单,都支持正则表达式。上面的代码中 deny 属性的值,是我的服务器日志中一些进行端口扫描的IP地址的正则表达式,写的很长但很简单。 在此附上一些进行端口扫描的 IP 地址的列表:http://antivirus.neu.edu.cn/scan/list.php
denyStatus 属性值为403表示:当 deny 中的 IP 访问时,返回 403 的状态码,即没有访问权限。
修改完成保存server.xml文件后重启服务器,当黑名单中的 IP 再次访问时即可看到效果,返回的状态码为 403:
123.249.27.192 - - [04/Apr/2016:21:29:53 +0800] "GET /80 HTTP/1.0" 403 -
到这里配置就结束了,不过个人觉得应该还有另外一种方式,不过并没有尝试,那就是通过配置 Tomcat 服务器仅能通过域名访问,不允许通过 IP 访问,也不失为一种避免端口扫描的方法,不知道说的对不对。附上禁用 IP 访问的参考资料:
1.http://www.iyunv.com/thread-42853-1-1.html
2.http://blog.csdn.net/tangdc88/article/details/17283617
2016年4月17日 更新扫描和攻击IP:
123.249.27.19[1-3]|115.239.228.1[4-6]|169.54.233.1(1[6-9]|2[0-6])|62.138.2.(209|12(2|3)|21(3|4))|123.151.(149.222|42.61)|61.147.(121.73|103.119|247.85)|115.239.228.202|115.230.124.164|112.74.206.117|169.229.3.91|61.154.154.97|213.246.45.128|95.213.187.18[8-9]|185.25.151.159|185.106.92.47|91.196.50.33|172.82.166.210|179.99.200.39
查看IP
2016年4月19日 更新扫描和攻击IP:
123.249.27.19[1-3]|115.239.228.1[4-6]|169.54.233.1(1[6-9]|2[0-6])|62.138.2.(209|12(2|3)|21(3|4))|123.151.(149.222|42.61)|61.147.(121.73|103.119|247.85)|115.239.228.202|115.230.124.164|112.74.206.117|169.229.3.91|61.154.154.97|213.246.45.128|95.213.187.1(8[6-9]|90)|185.25.151.159|185.106.92.47|91.196.50.33|172.82.166.210|179.99.200.39|5.178.86.7[4-5]|63.115.64.47|185.49.14.190|80.82.78.38
查看IP
2016年4月23日 更新扫描和攻击IP:
123.249.27.19[1-3]|115.239.228.1[4-6]|169.54.233.1(1[6-9]|2[0-6])|62.138.2.(209|12(2|3)|21(3|4))|123.151.(149.222|42.61)|61.147.(121.73|103.119|247.85)|115.239.228.202|115.230.124.164|112.74.206.117|169.229.3.91|61.154.154.97|213.246.45.128|95.213.187.1(8[6-9]|90)|185.25.(151.159|148.240)|185.106.92.47|91.196.50.33|172.82.166.210|179.99.200.39|5.178.86.7[4-6]|63.115.64.47|185.49.14.190|80.82.78.38|118.161.65.165|185.103.252.98|104.128.144.131|106.185.47.161|111.248.(112.44|56.178)|114.43.3.196|62.67.9.30|37.233.101.128|112.115.49.201
[WebServer] Tomcat 配置访问限制:访问白名单和访问黑名单的更多相关文章
- Tomcat 配置访问限制:访问白名单和访问黑名单
最近公司的阿里云服务器上配置的 Tomcat 服务器运行 java的环境,但是通过观察 Tomcat 这几天的日志发现,有很多莫名其妙的 IP 访问主机下莫名其妙的地址,如:/80./testprox ...
- Nginx 配置GeoIP2 禁止访问,并允许添加白名单过滤访问设置
配置环境:Centos 7.6 + Tengine 2.3.2 GeoIP2 下载地址:https://dev.maxmind.com/geoip/geoip2/geolite2/ 1. Nginx ...
- Oracle数据库IP访问限制(IP白名单黑名单)
1.编辑sqlnet.ora 内容为: #允许访问的IP(白名单) TCP.INVITED_NODES=(127.0.0.1,192.168.56.109,ip2,ip3,..,..本地IP..)若使 ...
- tomcat配置虚拟目录实现无项目名访问项目,域名直接访问
1.tomcat下新建文件夹名为 myapp,把编译后的项目放入该文件夹,不是war包. 2.conf/Catalina/localhost目录下,新建一个ROOT.xml文件,写入类似于如下内容 & ...
- 重学 Java 设计模式:实战外观模式「基于SpringBoot开发门面模式中间件,统一控制接口白名单场景」
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 你感受到的容易,一定有人为你承担不容易 这句话更像是描述生活的,许许多多的磕磕绊绊总 ...
- 【树莓派】Squid代理以及白名单配置
Squid安装: sudo apt-get install squid3 -y 首先,建议备份一下这个配置文件,以免配错之后,无法恢复,又得重新安装: sudo cp /etc/squid3/squi ...
- 【08】Nginx:安全优化 / 信息隐藏 / 请求限制 / 白名单
写在前面的话 nginx 中主要的内容在前面的章节其实已经差不多了,接下都是一些小功能的实现以及关于 nginx 的优化问题.我们一起来探讨以下,如何把我们的 nginx 打造成为企业级应用. 安全优 ...
- Tomcat配置https后,并发较大时,频繁超时情况。
tomcat配置ssl后,出现频繁的访问超时情况. 通过脚本(感谢UCloud的技术支持 金晓帆-): netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a i ...
- 根据白名单过滤 HTML(防止 XSS 攻击)
https://github.com/leizongmin/js-xss/blob/master/README.zh.md 根据白名单过滤 HTML(防止 XSS 攻击) xss是一个用于对用户输入的 ...
随机推荐
- python中深复制与浅复制
转载:http://blog.csdn.net/vicken520/article/details/8227524 java中也经常碰见这种问题.时间原因就不写java方面啦 Python深复制浅复制 ...
- ( [原创] 4s摄像头出现的问题及解决办法集锦。
[原创] 4s摄像头出现的问题及解决办法集锦. [复制链接] HPagani 34主题 126帖子 13人气 级别: 青苹果 帖子 126 经验 160 精华 人气 13 粉丝1 发消息 ...
- Arduino 极速入门系列 - 光控灯(3) - 光敏电阻、与电阻分压那些事
继续是讲解基础原理,新手专用部分.这次讲光敏电阻,和用电阻分压.光电元器件有好几种,其中测光相关的元器件,常见的有光敏三极管和光敏电阻,我们这次光控灯用光敏电阻.在我们光控灯里面,将会使用它搭建出分压 ...
- SLAM初探-SLAM for Dummies
SLAM综述性特别是原理讲述比较浅显易懂的的资料比较少,相对比较知名的是<SLAM for Dummies>,但中文资料相对较少,这里就简单概述一下<SLAM for Dummies ...
- 求空间内两条直线的最近距离以及最近点的坐标(C++)
关键词:空间几何 用途:总有地方会用到吧 文章类型:C++函数展示 @Author:VShawn(singlex@foxmail.com) @Date:2016-11-19 @Lab: CvLab20 ...
- 在C#中读取枚举值的描述属性
枚举: public enum EnumLanugage { [System.ComponentModel.Description("中文")] Chinese, English ...
- laravel select 传参
传值: $params['select'] = 'taobao_id,title,image,price,coupon_deduct,coupon_condition'; 接受参数 $result = ...
- 用流来读取文件(getline,istringstream)
ifstream infile("fileanme"); 原型:getline(istream &infile, string &line); 函数说明:读取文件中 ...
- centos 6.7安装与配置vncserver
vnc是一款使用广泛的服务器管理软件,可以实现图形化管理,下面简单介绍一下如何在centos6.7下安装vnc. 安装vncserver yum install tigervnc tigervnc- ...
- 读取中文目录(python)
前言:需要对某目录下的文件进行分类,目录是中文名字就会报错,偶尔会手动修改文件名字,不太方便 解决办法:使用unicode()对路径进行处理 举例: 未进行处理前,该目录下的文件中文名称也是乱码显示的 ...