【方案】Tomcat 拒绝恶意域名解析、设置多域名、泛解析等方法
2016年03月03日 11:04:44 作者:Jiaozn 分类:Tomcat 评论(0)其他域名域名解析到了tomcat服务器,如何拒绝恶意域名解析
设置白名单或者黑名单
方法一:
白名单(特定的域名可以访问)
<Host name="www.aaa.com" appBase="root/HangupSMS"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/" docBase="root/HangupSMS" debug="0" reloadable="true"/>
</Host>
<Host name="www.bbb.com" appBase="root/HangupSMS"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/" docBase="root/HangupSMS" debug="0" reloadable="true"/>
</Host>
或者(多个域名同时访问一个tomcat下的项目):
<Host name="www.aaa.com" appBase="root/HangupSMS"
unpackWARs="true"
xmlValidation="false" xmlNamespaceAware="false">
<Alias>www.aaa.com</Alias>
<Alias>www.bbb.com</Alias>
<Context path="/" docBase="root/HangupSMS" debug="0" reloadable="true"/>
</Host>
或者设置允许:
<!-- default host is forbiden -->
<Engine name="Catalina" defaultHost="forbiden"> #默认
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<!-- allow hosts -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<Host name="www.yourdomain.com" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<Host name="192.168.1.3" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
<!-- forbiden host, the appBase is a not exists directory.
If the requested domain is not in the above list of hosts where are allowed, then use this host.
-->
<Host name="forbiden" appBase="notexists" #默认到这里,目录是一个没有的目录,访问显示404
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
</Engine>
方法二:
黑名单(指向一个没有的目录,报404页面):
<Host name="www.fff.com" appBase="notexists"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"></Host>
泛解析问题:
好像tomcat不支持域名泛解析(*.ccc.com),
但tomcat默认将不能解析的域名扔给<Engine name="Catalina" defaultHost="localhost">,
也就是说把localhost改为www.ccc.com,这样tomcat就会把访问ccc.com的二级域名解析给ccc.com了
评论
发表评论