Tomcat支持SSL加密网站
配置Tomcat,以支持SSL对网站加密,关键性配置如下:
思路:在tomcat服务器web1上做相应配置->客户端测试.
1.创建加密用的私钥和证书文件
[root@web1 ~]# keytool -genkeypair -alias tomcat -keyalg RSA -keystore /usr/local/tomcat/keystore //提示输入密码
-genkeypair 生成密钥
-alias tomcat 密钥别名
-keyalg RSA 定义密钥算法为RSA算法
-keystore 定义密钥文件存储在:/usr/local/tomcat/keystore
2.修改server.xml配置文件,创建支持加密连接的Connector
[root@web1 ~]# vim /usr/local/tomcat/conf/server.xml
...
<Host name="www.a.com" appBase="a" unpackWARS="true" autoDeploy="true">
<Context path="/test" docBase="/var/www/html/" />
</Host>
<Host name="www.b.com" appBase="b" unpackWARS="true" autoDeploy="true">
<Context path="" docBase="base" />
</Host>
#默认这段Connector被注释掉了,打开注释,添加密钥信息即可
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/keystore" keystorePass="123456" clientAuth="false" sslProtocol="TLS" />
...
3.重启Tomcat服务器
[root@web1 ~]# /usr/local/tomcat/bin/shutdown.sh
[root@web1 ~]# /usr/local/tomcat/bin/startup.sh
4.客户端设置host文件,并测试页面
[root@client ~]# vim /etc/hosts
...
192.168.2.100 www.a.com www.b.com //在客户端的/etc/hosts里定义tomcat服务器的IP地址,及负责解析的域名.
[root@client ~]# firefox https://www.a.com:8443/ //客户端访问
[root@client ~]# firefox https://www.b.com:8443/
[root@client ~]# firefox https://192.168.2.100:8443/
结束.