tomcat安全

root
233
文章
0
评论
2020年1月10日18:34:25 评论 2687字阅读8分57秒

tomcat安全

配置安全

  • 1.删除webapps目录下的所有文件
  • 2.禁用tomcat管理界面
  • 3.注释或删除tomcat-users.xml文件内的所有用户权限;
  • 4.更改关闭tomcat指令或禁用;
    • tomcat的server.xml中定义了可以直接关闭 Tomcat 实例的管理端口(默认8005)。可以通过 telnet 连接上该端口之后,输入 SHUTDOWN (此为默认关闭指令)即可关闭Tomcat实 例(注意,此时虽然实例关闭了,但是进程还是存在的)。由于默认关闭Tomcat 的端口和指令都很简单。默认端口为8005,指令为SHUTDOWN
    • 方法一:
    • 更改端口号和指令: 
      
      <Server port="8456" shutdown="itcast_shut">
    • 方法二:
    • 禁用8005端口:
      
      <Server port="‐1" shutdown="SHUTDOWN">
  • 5.定义错误页面
    • 在webapps/ROOT目录下定义错误页面 404.html,500.html;然后在tomcat/conf/web.xml中进行配置 , 配置错误页面:
    • <error‐page>
             <error‐code>404</error‐code>
             <location>/404.html</location>
      </error‐page>
      <error‐page>
             <error‐code>500</error‐code>
             <location>/500.html</location>
      </error‐page>
      <error‐page>
             <exception‐type>java.lang.Exception</exception‐type>
             <location>/error.jsp</location>
      </error‐page>
    • 这样配置之后,用户在访问资源时出现404,500这样的异常,就能看到我们自定义的错误页面,而不会看到异常的堆栈信息,提高了用户体验,也保障了服务的安全性。
  • 6.修改三个默认端口(8080,8005[可以禁止],8009[可以注释掉])
  • 7.采用监牢模式,用普通用户管理tomcat
  • 8.修改sever.xml中host组件默认头部信息
    • <Host name="localhost" appBase="webapps" unpackWARs="true"
       
      autoDeploy="true">
       
      ...
       
      </Host>
  • 9.server.xml中host组件做IP访问控制
    •       <Host appBase="webapps(相当于root)" autoDeploy="true" name="localhost(类似server_name)" unpackWARs="true">
            
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
      allow="172.16.1.8,172.16.3.*" deny="*.*.*.*"(IP做访问控制) 
            pattern="%h %l %u %t &quot;%r&quot; %s %b" prefix="localhost_access_log." 
            resolveHosts="false" suffix=".txt"/>
  • 10.规定脚本权限
    • 防止其它用户可以执行 tomcat命令
      
      chmod -R 700 /aplication/tomcat/bin/*

传输安全

HTTPS介绍

  • HTTPS的全称是超文本传输安全协议(Hypertext Transfer Protocol Secure),是一种网络安全传输协议。在HTTP的基础上加入SSL/TLS来进行数据加密,保护交换数据不被泄露、窃取。
  • SSL 和 TLS 是用于网络通信安全的加密协议,它允许客户端和服务器之间通过安全链接通信。SSL 协议的3个特性:
    • 保密:通过SSL链接传输的数据时加密的。
    • 认证和加密:通信双方的身份鉴别,通常是可选的,单至少有一方需要验证。
    • 完整性:传输数据的完整性检查。
  • 从性能角度考虑,加解密是一项计算昂贵的处理,因为尽量不要将整个Web应用采用SSL链接, 实际部署过程中, 选择有必要进行安全加密的页面(存在敏感信息传输的页面)采用SSL通信。
  • HTTPS和HTTP的区别主要为以下四点:
    • HTTPS协议需要到证书颁发机构CA申请SSL证书, 然后与域名进行绑定,HTTP不用申请证书;
    • HTTP是超文本传输协议,属于应用层信息传输,HTTPS 则是具有SSL加密传安全性传输协议,对数据的传输进行加密,相当于HTTP的升级版;
    • HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是8080,后者是8443。(这里是tomcat)
    • HTTP的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比HTTP协议安全
  • HTTPS协议优势:
    • 提高网站排名,有利于SEO。谷歌已经公开声明两个网站在搜索结果方面相同,如果一个网站启用了SSL,它可能会获得略高于没有SSL网站的等级,而且百度也表明对安装了SSL的网站表示友好。因此,网站上的内容中启用SSL都有明显的SEO优势。
    • 隐私信息加密,防止流量劫持。特别是涉及到隐私信息的网站,互联网大型的数据泄露的事件频发发生,网站进行信息加密势在必行。
    • 浏览器受信任。 自从各大主流浏览器大力支持HTTPS协议之后,访问HTTP的网站都会提示“不安全”的警告信息。

tomcat配置ssl

这里写的非常简单,一般证书都是部署在负载均衡上的

  • 1.将秘钥库文件 tomcatkey.keystore 复制到tomcat/conf 目录下
  • 2.配置tomcat/conf/server.xml
    • <Connector port="8443"
      protocol="org.apache.coyote.http11.Http11NioProtocol"
            maxThreads="150" schema="https" secure="true" SSLEnabled="true">
            <SSLHostConfig certificateVerification="false">
                    <Certificate
      certificateKeystoreFile="D:/application/tomcat/conf/tomcatkey.keystore"
      certificateKeystorePassword="itcast" type="RSA" />
             </SSLHostConfig>
      </Connector>
  • 3.访问Tomcat ,使用https协议测试

 

 

 

 

 

 

 

继续阅读
历史上的今天
1月
10
weinxin
我的微信
这是我的微信扫一扫
  • 文本由 发表于 2020年1月10日18:34:25
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
tomcat优化 Tomcat

tomcat优化

tomcat优化  Tomcat 性能调优 对于系统性能,用户最直观的感受就是系统的加载和操作时间,即用户执行某项操作的耗时。从更为专业的角度上讲,性能测试可以从以下两个指标量化。 响应时间:如上所述...
tomcat多实例与集群,Session共享问题 Tomcat

tomcat多实例与集群,Session共享问题

tomcat多实例与集群 先说tomcat多实例, 这个很简单,就简单说一下,一台web服务器上部署好一次tomcat做好了优化以后,可以当作模板及,进行打包压缩,保存好,当需要添加多台tomcat时...
JVM 优化 Tomcat

JVM 优化

JVM 配置方法(根据需求需求) 最常见的JVM配置当属内存分配,因为在绝大多数情况下,JVM默认分配的内存可能不能够满足我们的需求,特别是在生产环境,此时需要手动修改Tomcat启动时的内存参数分配...
web.xml详细组件 Tomcat

web.xml详细组件

web.xml详细组件 web.xml 是web应用的描述文件, 它支持的元素及属性来自于Servlet 规范定义 。 在Tomcat 中, Web 应用的描述信息包括 tomcat/conf/web...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: