Tomcat体系结构
配置https链接器
- 创建数字证书:
keytool -genkey -v -alias tomcat -keyalg RSA -keystore tomcat.keystore //为服务器创建数字证书
- 配置连接器:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
sslProtocol="TLS" clientAuth="false"
keystoreFile="D:\temp\SSL\tomcat.keystore" keystoreass="123456"
/>
为什么要配置https链接器呢?
为了提高网站的安全性,一般会在比较敏感的部分页面采用https传输,比如注册、登录、控制台等。像Gmail、网银等全部采用https传输。
https/ssl 主要起到两个作用:网站认证、内容加密传输和数据一致性。经CA签发的证书才起到认证可信的作用,所有有效证书均可以起到加密传输的作用。
SSL最主要应用是在浏览器和Web服务器之间,尽管不限于此。当然,安全本身是重要的内在属性。但在表面上看,部署SSL 就是为了让用户浏览器里看起来更安全一些,以增加用户的信任感。所以很多企业更把它当作门面,而签发机构也为此卖高价,尤其是国内的价格明显高于国外的。
实际上SSL证书也可以做客户端认证,用户拥有自己特有的证书,用它可以证明自己的身份,当然也就用不着用户名和密码了。但这种用的很少,一般web服务器也不支持。
内容加密传输更安全,如果只是为了加密,使用自签发的证书也可以,但浏览器无法验证证书,所以会给出一个非常吓人的警告,所以自签发证书不适合给外人使用,只适合内部使用,把这个证书 加入到自己的信任列表或忽略证书验证即可,以后就不会继续拦截了。
证书需要被少数一级或二级 CA 认证才有效。计算机安全中的信任就是一个信任链的关系,信任链最顶端的被称为根证书。
自签发的证书在技术上是完全一样的,仅用于加密传输是没问题的。但是不能被外人信任,所以一般仅用于内部使用。除了自签发不被信任,如果证书过期、已被吊销或者非证书所代表的域名也都是不被信任的,导致证书验证出错。
由于网站的证书需要被大众信任,所以不能自签发的证书,那就申请(购买)一个吧。
使用Tomcat管理平台
使用tomcat管理平台,可以远程管理服务器中的web应用,例如可以上传war包。
- 配置管理员角色
在使用之前,应在tomcat-users.xml配置管理员的角色:
<?xml version='1.0'encoding='utf-8'?>
<tomcat-users>
<role rolename="manager"/>
<userusername="tomcat" password="tomcat"roles="manager"/>
</tomcat-users>
NT:操作完之后,不用这个账户的时候一定要注释或者删除掉这个用户,否则别人就可以操控你的wenapps下的app应用文件了。
- 进入管理平台
打开 http://localhost:8080 –> Tomcat Manager
对服务器中的web应用进行管理。