3 Web服务器安全加固
3.1 启用日志记录功能
3.2 HTTPS协议
3.3 Tomcat错误页面重定向
3.4 禁止tomcat列表显示文件
表2-1 Linux安装后文件路径
表2-2 Linux下全局配置文件可能位置
3.1 启用日志记录功能
实施目的
Web服务器应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。
问题影响
无法对用户的登陆进行日志记录。
系统当前状态
系统未配置日志记录。
实施步骤
编辑server.xml配置文件,在<HOST>标签中增加记录日志功能
将以下内容的注释标记< ! -- -- >取消
<valve classname="org.apache.catalina.valves.AccessLogValve"
Directory="logs" prefix="localhost_access_log." Suffix=".txt"
Pattern="common" resloveHosts="false"/>
classname:必须被设置为
“org.apache.catalina.valves.AccessLogValve to use the default access log valve. &<60”;
Directory:日志文件放置的目录,在tomcat下面有个logs文件夹,那里面是专门放置日志文件的,也可以修改为其他路径;
Prefix: 日志文件的名称前缀,如日志名称为“localhost_access_log.2008-10-22.txt”,前缀就是本例中设置的“localhost_access_log”;
Suffix: 文件后缀名;
Pattern: common方式时,将记录访问源IP、本地服务器IP、记录日志服务器IP、访问方式、发送字节数、本地接收端口、访问URL地址等相关信息在日志文件中;
resolveHosts:值为true时,tomcat会将这个服务器IP地址通过DNS转换为主机名,如果是false,就直接写服务器IP地址。
回退方案
还原server.xml。
判断依据
登录web服务器后,检查相关信息是否被日志记录。
实施风险
低
重要等级
3.2 HTTPS协议
实施目的
对于通过HTTP协议进行远程维护的设备,设备应支持使用HTTPS等加密协议。
问题影响
增加Web数据传输安全隐患。
系统当前状态
系统未配置HTTPS加密协议。
实施步骤
1、使用JDK自带的keytool工具生成一个证书:
JAVA_HOME/bin/keytool -genkey –alias tomcat –keyalg RSA -keystore /path/to/my/keystore
2、修改tomcat/conf/server.xml配置文件,更改为使用https方式,增加如下行:
<Connector classname="org.apache.catalina.http.HttpConnector" port="443" minProcessors="5" maxprocessors="100" enableLookups="true" acceptCount="10" debug="0"scheme="https" secure="true" >
< Factory classname="org.apache.catalina.SSLServerSocketFactory" clientAuth="false" keystoreFile="/path/to/my/keystore" keystorePass="runway" protocol="TLS"/>
< /Connector>
回退方案
还原server.xml。
判断依据
登录web服务器后,检查相关信息是否被日志记录。
实施风险
低
重要等级
3.3 Tomcat错误页面重定向
实施目的
更改Tomcat错误页面并重定向页面,增加系统安全性。
问题影响
出现错误时系统可能会将错误堆栈信息打印到页面,使得攻击人员可以根据错误信息进行有效的攻击。
系统当前状态
系统未配置错误重定向页面。
实施步骤
配置tomcat/conf/web.xml文件,在最后</web-app>之前加入以下内容:
<error-page>
< error-code>404</error-code>
< location>/noFile.htm</location>
< /error-page>
……………
< error-page>
< exception-type>java.lang.NullPointerException</exception-type>
< location>/error.jsp</location> </error-page>
第一个<error-page></error-page>之间的配置实现了将404未找到jsp网页的错误导向noFile.htm页面,也可以用类似方法添加其多的错误代码导向页面,如403,500等。
第二个<error-page></error-page>之间的配置实现了当jsp网页出现java.lang.NullPointerException导常时,转向error.jsp错误页面。
回退方案
还原server.xml。
判断依据
URL地址栏中输入“http://ip:80/manager123”查看返回界面。
实施风险
高
重要等级
3.4 禁止tomcat列表显示文件
实施目的
禁止tomcat列表显示文件,增加系统安全性。
问题影响
不安全性增加。
系统当前状态
系统未配置禁止tomcat列表显示文件。
实施步骤
编辑tomcat/conf/web.xml配置文件,
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
< /init-param>
把true改成false。重新启动tomcat服务。
回退方案
还原server.xml。
判断依据
直接访问http://ip:8800/webadd。
实施风险
低
重要等级