tomcat访问限制
‘壹’ 怎么用Tomcat实现IP限制访问
Tomcat供了两个参数供配置:RemoteHostValve 和RemoteAddrValve,前者用于限制主机名,后者用于限制IP地址。通过配置这两个参数,可以过滤来自请求的主机或IP地址,并允许或拒绝哪些主机/IP。
全局设置,对Tomcat下所有应用生效:
server.xml中添加下面一行,重启服务器即可:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>
此行放在</Host>之前。例:
1,只允许192.168.1.10访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10" deny=""/>
2,只允许192.168.1.*网段访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>
3,只允许192.168.1.10、192.168.1.30访问:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10,192.168.1.30" deny=""/>
4,根据主机名进行限制:
<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="abc.com" deny=""/>局部设置,仅对具体的应用生效,根据项目配置情况进行设置:
1)使用conf目录下xml文件进行配置${tomcat_root}confproj_1.xml
2)直接在server.xml中进行设置${tomcat_root}confserver.xml
在上述文件对应项目的</Context>前增加下面一行:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>特别需求:测试版本不想提供别人访问,打开tomcat6confserver.xml文件,如果是要限制整个站点别人不能访问,则要将
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*,192.168.2.*,*.mysite.com" deny=""/>
加入到<HOST></HOST>标签中,如果是要限制某个站点不能被访问,则要加入到<Context>里面就可以。
<Context path="/myweb" reloadable="true" docBase="E: omcat6webappsmyweb">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.13.110,192.168.1.*,220.250.13.21" deny=""/>
< /Context>
RemoteHostValve根据主机名进行限制:
<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="tmachine1" deny=""/>
修改文件:
tomcat/conf/server.xml
通过tomcat限制ip访问。
‘贰’ 如何在linux系统防火墙中放开对8080端口的限制
1.修改文件/etc/sysconfig/iptables
[root@bogon ~]# cd /etc/sysconfig/
[root@bogon sysconfig]# vi iptables
在文件中加入如下内容,目的是对外界开放8080端口
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
2.将iptables服务重启。
[root@bogon sysconfig]# service iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables moles: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables moles: ip_conntrack_ftp [ OK ]
[root@bogon sysconfig]#
这样就放开了8080端口的限制。