Chinaunix首页 | 论坛 | 博客
  • 博客访问: 136512
  • 博文数量: 25
  • 博客积分: 389
  • 博客等级: 一等列兵
  • 技术积分: 838
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-23 14:18
文章存档

2013年(20)

2012年(5)

分类: 服务器与存储

2013-03-08 20:12:41

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

实现所需参数:RemoteHostValve 和RemoteAddrValve
              前者用于限制主机名,后者用于限制IP地址。

实现过程:

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

server.xml中的间添加如下代码:

限制主机IP地址:

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

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

限制主机域名:

  1. <Valve className="org.apache.catalina.valves.RemoteHostValve"
  2. allow="*.abc.com" deny=""/>

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

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

示例如下:

1、只允许192.168.1.10访问:


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

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


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

3、只允许192.168.1.10、192.168.1.30访问:

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

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


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

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


  1. <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10,192.168.1.30,192.168.2.*" deny=""/>
  2. <Valve className="org.apache.catalina.valves.RemoteHostValve" allow="*.aaa.com" deny=""/>
 

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

server.xml中的间添加如下代码:

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

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

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

阅读(1696) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~