您的位置:首页 > 运维架构 > Tomcat

Tomcat配置的几个安全问题

2010-02-02 16:44 260 查看
1.关闭服务器端口:

server.xml默认有下面一行:

这样允许任何人只要telnet到服务器的8005端口,输入"SHUTDOWN",然后回车,服务器立即就被关掉了。
从安全的角度上考虑,我们需要把这个shutdown指令改成一个别人不容易猜测的字符串。
例如修改如下:
,这样就只有在telnet到8006,并且输入"lizongbo"才能够关闭Tomcat.
注意:这个修改不影响shutdown.bat的执行。运行shutdown.bat一样可以关闭服务器。

2.对于tomcat3.1中,屏蔽目录文件自动列出的方法

缺省情况下,如果你访问tomcat下的一个web应用,那么如果你输入的是一个目录名,而且该目录下没有一个可用的welcome文件,那么tomcat会将该目录下的所有文件列出来,如果你想屏蔽这个缺省行为,那么可以修改conf/web.xml文件,将其中的:

default
org.apache.catalina.servlets.DefaultServlet

debug
0


listings
true

1

修改为:

default
org.apache.catalina.servlets.DefaultServlet

debug
0


listings
false

1


3.如何让Tomcat记录客户端的访问日志

需要完成的步骤:
 1。修改Tomcat的conf/server.xml文件。
 2。加上Valve节点到server.xml文件中,和您目前使用的Connector的节点平级。
 如: directory="e:/trs/trscds/tomcat/logs" pattern="combined"/>
 3。重新启动您的Tomcat
 4。有用户在访问的时候,在指定的log目录下面会生成一个access_log文件(每天一个)。
上述的步骤是以Tomcat4.x为例。(可能会影响性能,不推荐大家使用)。

4.处理好Tomcat管理台的安全

Tomcat管理台的应用文件,默认在{Tomcat安装目录}/server/webapps下,有admin和manager两个应用。
其用户密码,在{Tomcat安装目录}/conf/tomcat-users.xml中定义。在{Tomcat安装目录}/webapps下
admin.xml和manager.xml文件定义了可以通过访问/admin和/manager进入。
默认情况下,完全可以登录tomcat管理台,造成严重安全问题
检测办法:用IE打开链接http://[IP]:[Port]/admin,以用户名admin,密码为空登录,如果成功,
说明存在问题。
解决办法:可以删除{Tomcat安装目录}/webapps下admin.xml和manager.xml文件,或者去掉用户密
码,也可以删除应用文件。

5.运行错误网页

如果找不到网页即出现404错误,会显示服务器版本号,服务器配置也一目了然,
为了避免这种情况,希望自定义设置错误页面。
设置如下:
1、将附件的index.htm文件拷贝至/webapps/ROOT目录内,删除或改名原来的index.jsp文件。
2、用记事本打开/conf/web.xml文件,在文件的倒数第二行(一行之前)加入以下内容:

 404
 /error_404.htm


路径的是对的,奇怪的是我测试时输入一个不存在的页,出现404错误提示出现的却不是我所定义的页面,这就怪了.
主要有以下几个因素:
1.使用 tomcat 服务器
2.tomcat服务器版本
3.浏览器问题
4.IE的设置
5.错误页本身的大小

下面是提供的解决方法:

1.升级tomcat (换成其它服务器,代价沉重)
2.ie 设定 工具-->Internet选项-->高级--->显示http友好错误信息(取消选择) ,
3. 把错误页做大一点,具体几个字节,没测试,估计三四百足够了, (加一个div块,display设为none就可以了)
4.设置指定错误页页状态为正确,骗过IE的自定义错误页 方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: