文档章节

Tomcat实现访问限制

Oscarfff
 Oscarfff
发布于 2015/06/15 10:44
字数 342
阅读 37
收藏 0

目标:只有指定的主机或IP地址才可以访问部署在Tomcat下的应用。

实现所需参数:RemoteHostValve 和RemoteAddrValve

前者用于限制主机名,后者用于限制IP地址。

实现过程:

一、全局设置,对Tomcat下所有应用生效

server.xml中的<Host>和</Host>间添加如下代码:

限制主机IP地址:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"

  2. allow="192.168.1.*"deny=""/>

注:上述代码表示对Tomcat下所有应用仅允许192.168.1.*网段的主机访问;

限制主机域名:

  1. <ValveclassName="org.apache.catalina.valves.RemoteHostValve"

  2. allow="*.abc.com"deny=""/>

注:上述代码表示对Tomcat下所有应用仅允许*.abc.com名称的主机访问;

上述两种方式可以单独使用,也可以是混合使用。

示例如下:

1、只允许192.168.1.10访问:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"allow="192.168.1.10"deny=""/>/

2、只允许192.168.1.*网段访问:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"allow="192.168.1.*"deny=""/>

3、只允许192.168.1.10、192.168.1.30访问:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"allow="192.168.1.10,192.168.1.30"deny=""/>

4、根据主机域名进行限制:

  1. <ValveclassName="org.apache.catalina.valves.RemoteHostValve"allow="abc.com"deny=""/>

5、根据主机IP和域名进行限制:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"allow="192.168.1.10,192.168.1.30,192.168.2.*"deny=""/>

  2. <ValveclassName="org.apache.catalina.valves.RemoteHostValve"allow="www.abc.com,*.aaa.com"deny=""/>

二、局部设置,仅对具体的应用生效

server.xml中的<Context>和</Context>间添加如下代码:

  1. <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"allow="192.168.1.*"deny=""/>

上述代码表示对Tomcat下定义的单个应用仅允许192.168.1.*网段的主机访问;

局部设置与全局设置方法类似,这里不再赘述!


本文转载自:http://www.linuxidc.com/Linux/2013-03/80605.htm

共有 人打赏支持
Oscarfff
粉丝 73
博文 815
码字总数 96913
作品 0
崇明
后端工程师
私信 提问
Tomcat安装部署和安全加固优化以及反向代理应用

1、Tomcat介绍 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。 Tomcat服务器是一个免费的开放源...

IT_外卖小哥
2018/10/30
0
0
部署java项目出现base 64解析问题

部署tomcat之前,需要部署jdk环境,那么jdk和tomcat之间也是有一定得兼容性的,抛开版本问题不谈(jdk和tomcat版本,不能相差太大,jdk向下兼容),jdk与tomcat中还是有很多的兼容性 问题的,...

壹休哥
2018/06/26
0
0
关于跨域的小总结

跨域限制不仅仅是浏览器的行为,也可能是服务端的行为。 如果服务端不限制跨域访问,那就只有浏览器进行了跨域限制,浏览器遵循同源策略。 如果服务端做了跨域限制,那么即使请求成功发出,服...

huanxin2008
2017/12/24
0
0
关于tomcat配置的几个问题总结

1、一台主机上部署多个tomcat BUT 在环境变量中已经配置了CATALINAHOME和CATALINABASE和PATH了,咋整? answer:1) 在第二个tomcat的server.xml中将 shutdown,http,AJP端口号,设置为不同...

Freonever
2014/03/18
0
0
Nginx 配置实践

nginx 一般用作请求转发,用作服务器集群的负载均衡 典型的高并发集群是 nginx+tomcat(多个) nginx可以高效处理对静态文件的请求,tomcat 负责动态请求 配置范例: #user nobody;worker_pr...

HZCoder
2016/03/29
49
0

没有更多内容

加载失败,请刷新页面

加载更多

漏洞防御与修复工作

漏洞管理工作是企业安全建设必不可少的一环,在风险管理工作中,漏洞管理能够防患于未然,企业对漏洞管理有着广泛的基础建设和实践经验。但随着攻防技术的发展,传统漏洞管理的安全技术和管理...

linuxprobe16
15分钟前
0
0
MicroPython技术及应用前景

1 Micropython技术是什么? MicroPython极精简高效的实现了Python3语言。它包含Python标准库的一小部分,能在单片机和受限环境中运行。 1.1 MicroPython发展 由剑桥大学的理论物理学家乔治....

bodasisiter
21分钟前
0
0
跟我学Spring Cloud(Finchley版)-13-通用方式使用Hystrix

本节详细讲解使用Hystrix的通用方式。 简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要...

周立_ITMuch
29分钟前
0
0
🛠️Hanjst/汉吉斯特更新加JavaScript运行时优化等

这是 Hanjst/汉吉斯特 发布以来的首个主要升级更新版本。这次的主要升级更新的内容包括移除HTML Comments注释行, 优化在 Hanjst include模板文件时的JavaScript运行时环境。 Hanjst 在设计和...

wadelau
今天
2
0
OSChina 周六乱弹 —— 舔狗是没有好下场的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @我没有抓狂 :#今天听什么# #今天听这个# 分享 Nirvana 的歌曲《Smells Like Teen Spi...》 《Smells Like Teen Spi...》- Nirvana 手机党少...

小小编辑
今天
463
13

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部