首页
Search
1
v2ray异常错误之二
3,310 阅读
2
linux时区设置
2,698 阅读
3
DB2常用操作
2,173 阅读
4
websphere修改jvm内存xmx和xms
1,929 阅读
5
nfs客户端文件属主为nobody的现象
1,552 阅读
技术
生活
运动
游戏
电影
登录
Search
标签搜索
docker
linux
troubleshooting
nginx
secure
truenas
mysql
windows
python
esxi
docker swarm
oracle
zabbix
tomcat
blog
dsm
群晖
rpa
freenas
db
yuc
累计撰写
291
篇文章
累计收到
0
条评论
首页
栏目
技术
生活
运动
游戏
电影
页面
搜索到
7
篇与
的结果
2023-08-24
tomcat自签证书以及http跳转https
0x1 自签证书生成 使用java的命令: keytool -genkey -alias webgis -keyalg RSA -keypass gisplatform -storepass gisplatform -keysize 2048 -keystore webgis.keystore -validity 7300 keytool -export -alias webgis -storepass gisplatform -file webgis.cer -keystore webgis.keystore keytool -import -trustcacerts -alias webgis -storepass gisplatform -file webgis.cer -keystore cacerts server.xml 配置证书 keystoreFile="D:\apache-tomcat-8.5.15\bin\webgis.keystore" keystorePass="gisplatform" truststoreFile="D:\apache-tomcat-8.5.15\bin\cacerts" server.xml 配置tls版本以及加密套件,其中useServerCipherSuitesOrder="true"很重要,要优先使用服务端的顺序 <Connector port="8443" protocol="user.Http11Protocol" SSLEnabled="true" sslEnabledProtocols="TLSv1,TLSv1.2" useServerCipherSuitesOrder="true" ciphers="TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA" scheme="https" secure="true" clientAuth="false" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" keystoreFile="keystore.jks" keystorePass="password" /> 0x2 http跳转https tomcat默认配置了https是会共存http的,所以需要修改配置,使得访问http的时候自动跳转到https页面,修改web.xml <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>
2023年08月24日
476 阅读
0 评论
0 点赞
2022-01-08
tomcat 400错误的解决
报错和现象 当url中有特殊字符时,高版本tomcat会显示400页面,页面暴露了版本信息和部分堆栈,参考部分报错关键字: The valid characters are defined in RFC 7230 and RFC 3986 如何解决 主要解决办法有如下几个: 此报错是高版本tomcat才出现,所以可以更换低版本来解决此问题,但同时需要考虑低版本tomcat是否有其他安全问题 在tomcat/conf/server.xml的端口配置下增加如下配置: relaxedPathChars='\":[]|' relaxedQueryChars='\":[]|' 同时在tomcat/conf/catalina.properties追加如下配置: tomcat.util.http.parser.HttpParser.requestTargetAllow=|{} org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true 但这两个配置文件不能解决所有问题,只能解决部分上面列出的特殊符号问题,如果有一些其他更特殊的符号未添加或者遗漏,那么仍然可能报错 3. 在tomcat/conf/server.xml的Host标签内加入以下代码: <Valve className="org.apache.catalina.valves.ErrorReportValve" showReport="false" showServerInfo="false" /> 这种方式仍然会显示400错误,但不会输出错误堆栈,也算是比较好的解决方案了 方案对比 方案一需要回退低版本,存在其他安全风险 方案二使得列出的字符可以被正常请求,与高版本tomcat禁止这些字符来提升安全相背离 方案三是仍然禁止这些字符,但仅不显示版本和错误堆栈,可以保证服务安全
2022年01月08日
1,109 阅读
0 评论
0 点赞
1
2