设为首页 收藏本站
查看: 1474|回复: 0

[经验分享] 快速安装Tomcat 并实现HTTPS访问

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2018-11-29 11:25:02 | 显示全部楼层 |阅读模式
  HTTPS,在HTTP下加了一层SSL,用于安全的HTTP数据传输,对于数据敏感的网址必须要使用HTTPS协议,本文将介绍如何快速安装Tomcat,并实现HTTPS访问。

安装Tomcat
  安装tomcat必须得有java环境,所以先安装JDK;

1、安装JDK

[root@node1 ~]# rpm -ivh jdk-8u161-linux-x64.rpm
Preparing...                ########################################### [100%]
1:jdk1.8                 ########################################### [100%]
Unpacking JAR files...
tools.jar...
plugin.jar...
javaws.jar...
deploy.jar...
rt.jar...
jsse.jar...
charsets.jar...
localedata.jar...
[root@node1 ~]#
2、添加Java系统环境变量

[root@node1 ~]# cat /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/latest
export PATH=$JAVE_HOME/bin:$PATH
[root@node1 ~]#
  3、加载环境变量

[root@node1 ~]# . /etc/profile.d/java.sh
4、查看JDK是否安装成功

[root@node1 ~]# java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
[root@node1 ~]#
5、安装Tomcat

[root@node1 ~]# tar  -zxf apache-tomcat-8.0.50.tar.gz  -C /usr/local/
6、创建软连接

[root@node1 ~]# ln -s /usr/local/apache-tomcat-8.0.50/ /usr/local/tomcat
7、添加Tomcat系统环境变量

[root@node1 ~]# cat /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
8、加载环境变量

[root@node1 ~]# . /etc/profile.d/tomcat.sh
9、测试是否生效

[root@node1 ~]# catalina.sh version
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.0.50
Server built:   Feb 7 2018 20:06:05 UTC
Server number:  8.0.50.0
OS Name:        Linux
OS Version:     2.6.32-642.6.2.el6.x86_64
Architecture:   amd64
JVM Version:    1.8.0_161-b12
JVM Vendor:     Oracle Corporation
[root@node1 ~]#
10、启动Tomcat服务

[root@node1 ~]# catalina.sh  start
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
11、测试访问
  Tomcat默认端口为8080,所以访问时使用IP+8080访问即可;
http://i2.运维网.com/images/blog/201804/13/6bb83a2c54ab2b25685f7cedb0914a20.png
  ★ 到这里,Tomcat就安装完成了,但是只是默认环境,还需要根据需求自定义配置;

实现HTTPS访问

1、添加域名解析
  到自己的域名解析商处,添加一条A记录指向你的服务器IP即可;

2、申请证书
  使用刚才添加的域名申请一个SSL证书;

3、上传证书
  在tomcat目录新建一个ssl目录,将证书文件上传到这个目录;

[root@node1 ~]# cd /usr/local/tomcat/
[root@node1 tomcat]# mkdir ssl
[root@node1 tomcat]# rz
4、修改server.xml
  VIM打开server.xml,添加ssl连接器,在8080端口连接器下面添加如下配置:


注意:
keystoreFile :证书存放目录,可以写绝对路径或Tomcat相对路径;
keystorePass:证书私钥密码;
5、修改HOST配置

      
## 这里指定的localhost是默认HOST的名称,修改为证书绑定的域名即可













  ★这里只需要将里两个localhost修改为证书绑定域名即可,也就是是将该域名与此HOST绑定;

6、重启Tomcat服务

[root@node1 tomcat]# catalina.sh stop
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@node1 tomcat]# catalina.sh start
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
7、查询端口是否监听

[root@node1 tomcat]# ss -ntl
State      Recv-Q Send-Q                                                  Local Address:Port                                                    Peer Address:Port
LISTEN     0      1                                                           127.0.0.1:8005                                                               *:*     
LISTEN     0      100                                                                 *:8009                                                               *:*     
LISTEN     0      100                                                                 *:8080                                                               *:*     
LISTEN     0      128                                                                 *:22                                                                 *:*     
LISTEN     0      100                                                         127.0.0.1:25                                                                 *:*     
LISTEN     0      100                                                                 *:443                                                                *:*     
[root@node1 tomcat]#
8、测试访问
  使用https://YourDomain/ 来访问;
http://i2.运维网.com/images/blog/201804/13/088027e012340e15fd1e5afa3841f6fd.png
★用浏览器访问显示小绿锁,F12查看,提示:This is secure (valid HTTPS),说明证书已经配置成功;

配置HTTP自动跳转到HTTPS
  上面我们实现了HTTPS访问,但是客户使用http访问,还是会走http协议,依然是不安全的,没有达到我们的需求,下面配置HTTP自动跳转到HTTPS;

1、修改web.xml
  在后面,也就是倒数第二行里,加上如下配置:



CLIENT-CERT
Client Cert Users-only Area




SSL
/*


CONFIDENTIAL


2、修改sever.xml
  修改非SSL连接器的请求跳转到SSL连接器上,修改如下配置:

原来为:

修改为:

  ★将默认8080端口修改为80端口,访问时就不需要加8080端口了,因为HTTP协议默认走的是80端口;
★将8443端口修改为443端口,意思是来自80端口的请求都跳转至443端口;

3、重启服务

[root@node1 conf]# catalina.sh  stop
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@node1 conf]# catalina.sh  start
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
4、检测端口
  查看端口,发现原来监听的8080端口已经没在了,而是监听的我们上面修改的80端口;

[root@node1 conf]# ss -nlt
State      Recv-Q Send-Q                                                  Local Address:Port                                                    Peer Address:Port
LISTEN     0      100                                                                 *:8009                                                               *:*     
LISTEN     3      100                                                                 *:80                                                                 *:*     
LISTEN     0      128                                                                 *:22                                                                 *:*     
LISTEN     0      100                                                         127.0.0.1:25                                                                 *:*     
LISTEN     0      100                                                                 *:443                                                                *:*     
[root@node1 conf]#
5、测试访问
  这里我们使用linux下的curl命令测试,能更直观的看到跳转效果;

[root@node1 ~]# curl  http://YourDomain/  -I
HTTP/1.1 302 Found
Server: Apache-Coyote/1.1
Cache-Control: private
Expires: Thu, 01 Jan 1970 08:00:00 CST
Location: https://YourDomain/
Transfer-Encoding: chunked
Date: Fri, 13 Apr 2018 16:06:04 GMT

  ★ 到这里,Tomcat配置HTTP自动跳转HTTPS就已经完成了~




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-641116-1-1.html 上篇帖子: Tomcat以Daemon的方式启动(CentOS6&7) 下篇帖子: webServer tomcat5/tomcat6/tomcat7诠释
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表