<< Click to Display Table of Contents >> 安全加固 |
互联网时代的数据安全与个人隐私受到极大挑战,各种新奇的攻击技术层出不穷。为了更好的保障产品安全,建议用户按照如下步骤对产品进行安全加固。
❖Tomcat安全加固
1.升级到最新稳定版本(https://tomcat.apache.org/),出于稳定性考虑,最好不跨大版本升级。
2.使用普通用户安装启动,产品目录权限750。
3.配置使用https,提高数据传输安全性。
1)证书的生成:keytool -genkey -alias tomcat -keyalg RSA -keystore /home/Yonghong/tomcat/keystore
➢注意:如果商用系统建议使用向CA付费购买的证书。因为如果使用自签名证书的话,客户端对服务器的验证是抛给用户来判断(用户自己决定信任还是不信任)。
2)修改tomcat/conf/server.xml文件,禁掉http访问8080端口,新增8443使用https:
<!--<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />-->
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLSv1.2" sslEnabledProtocols="TLSv1.2"
keystoreFile="/home/Yonghong/tomcat/keystore"
keystorePass="Yonghong" />
3)修改tomcat/webapps/bi/WEB-INF/web.xml,在标签web-app中添加如下内容:
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
4.设置Cookie中的secure和httponly属性,防止cookie信息被窃取,修改tomcat/conf/web.xml文件:
<session-config>
<session-timeout>30</session-timeout>
<cookie-config>
<http-only>true</http-only>
<secure>true</secure>
</cookie-config>
</session-config>
5.设置HSTS,让浏览器强制使用HTTPS与网站进行通信,减少会话劫持风险,修改tomcat/conf/web.xml文件,在标签web-app中添加:
<filter>
<filter-name>httpHeaderSecurity</filter-name>
<filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
<init-param>
<param-name>hstsEnabled</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>hstsMaxAgeSeconds</param-name>
<param-value>31536000</param-value>
</init-param>
<init-param>
<param-name>antiClickJackingOption</param-name>
<param-value>SAMEORIGIN</param-value>
</init-param>
<async-supported>true</async-supported>
</filter>
<filter-mapping>
<filter-name>httpHeaderSecurity</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
6.隐藏Tomcat版本信息,修改tomcat/conf/server.xml文件,在标签HOST中添加:
<Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" />
❖产品安全加固
➢说明:该类配置大部分会对易用性有一定影响或需要配置环境信息,所以没有默认开启,均在bi.properties中修改。
1.防止CSRF跨站请求伪造
CSRF.check=true
CSRF.white.list=127.0.0.1,https://demo.yonghongtech.com/bi/
CSRF.token.check=true
2.限制了单个账户的多重并发登录(V8.5.1):userlogin.sso=true
3.关闭自动登录功能(V8.6.1):show.autologin=false
4.限制管理员账号登录ip(V8.5.1):admin.login.ip.white.list=127.0.0.1
5.用pbkdf2方式加密(V8.6.1):secure.user.pass.pbkdf2=true