Nginx+Tomcat反向代理利用certbot实现https
一、利用Let's Encrypt 免费生成HTTPS证书
1、下载安装certbot(Let's Encrypt )
2、利用certbot生成证书
3、配置nginx的https证书
安装cerbot
[root@hz1 ~]# wget https://dl.eff.org/certbot-auto [root@hz1 ~]# chmod a+x certbot-auto [root@hz1 ~]#./certbot-auto
利用certbot生成证书
[root@hz1 certbot]# ./certbot-auto certonly --email zhai.junming@timecash.cn --agree-tos --webroot -w /alidata1/www/timecash22/api3 -d xxxx.zjm.cn/root/.local/share/letsencrypt/lib/python2./site-packages/cryptography/__init__.py:: DeprecationWarning: Python 2.6 is no longer supported by the Python core team, please upgrade your Python. A future version of cryptography will drop support for Python 2.6 DeprecationWarning Saving debug log to /var/log/letsencrypt/letsencrypt.log Obtaining a new certificate Performing the following challenges: http- challenge for xxx.zjm.cn Using the webroot path /alidata1/www/timecash22/api3 for all unmatched domains. Waiting for verification... Cleaning up challenges IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/xxx.zjm.cn/fullchain.pem. Your cert will expire on --. To obtain a new or tweaked version of this certificate in the future, simply run certbot-auto again. To non-interactively renew *all* of your certificates, run "certbot-auto renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le -w:指定域名的根目录 -d:指定域名 Note:证书已经生成到了/etc/letsencrypy/live/xxx.zjm.cn下
Nginx配置https证书
#http访问
server {
listen ;
server_name www.xxx.cn;
return https://$server_name$request_uri;
}
#https访问
server {
listen ssl;
server_name www.xxx.cn;
ssl_certificate /etc/letsencrypt/live/www.xxx.cn/fullchain.pem;
ssl_certificate_key/etc/letsencrypt/live/www.xxx.cn/privkey.pem;
ssl_trusted_certificate/etc/letsencrypt/live/www.xxx.cn/chain.pem;
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
location / {
proxy_pass http://www.xxx.cn/;
}
}
ssl_certificate和ssl_certificate_key分别对应fullchain.pem,privkey.pem
ssl_dhparam通过以下命令生成
$ mkdir /etc/nginx/ssl
$ openssl dhparam -out /etc/nginx/ssl/dhparam.pem
自动更新https证书
由于这个免费的证书只有90天的使用时间,所以遇到定时更新以下证书,这里是利用certbot每隔一段时间自动更新证书
手动执行更新
./certbot-auto renew --dry-run
结合crontab每隔一段时间自动更新证书
* * ./certbot-auto renew >> /var/log/le-renew.log
PS:
1、生成证书的时候切记-w参数后边的站点目录要写对,不然会报错
2、只需配nginx支持https就好,tomcat不用配置
3、前端代码和后端接口必须支持https
Nginx+Tomcat反向代理利用certbot实现https的更多相关文章
- Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
上一篇分享了 Nginx + Tomcat 反向代理 负载均衡 集群 部署指南,感觉还是相当实用型的,但是一般集群部署是基于大访问量的,可能有的企业用不到,类似一些企业官网,访问量并不是很大,基于这个 ...
- nginx+tomcat反向代理下使用tomcat-redis-session-manager进行session共享中值得注意的一个问题
公司目前项目使用nginx反向代理+多个tomcat进行负载均衡,之前使用ip_hash策略进行session控制.近期有考虑不再使用ip_hash策略,所以需要进行session共享. 根据项目实际 ...
- nginx + tomcat 反向代理
简单的配置:# my test java+nginx project server { listen ; server_name localhost; root /home/user/Desktop/ ...
- 详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
转自:http://www.jb51.net/article/100111.htm 首先我们需要安装好Nginx.jdk.Tomcat,安装方法已经在 上一篇 说过了,本篇不再赘述. 下来看一下我们的 ...
- nginx+tomcat 反向代理 负载均衡配置
1.nginx的安装和配置见:http://www.cnblogs.com/ll409546297/p/6795362.html 2.tomcat部署项目到对应的服务器上面并启动,不详解 3.在ngi ...
- nginx+tomcat反向代理
第一步:编辑nginx的配置文件 #服务转发一 upstream tomcat8080{ server 192.168.1.6:8080; } #服务转发二 upstream tomcat8081{ ...
- docker配置nginx做反向代理管理tomcat应用
由于业务开始复杂,单一tomcat已经不足以满足业务需求,多tomcat部署起来不方便而且面临域名解析问题,因此开始增加反向代理,由于docker的易用性,便使用docker管理各个应用. docke ...
- windows版 nginx配置反向代理实例教程 跳转tomcat和php网站
抄自 https://www.cnblogs.com/j-star/p/8785334.html 个人理解 nginx端口设置为80,简称n tomcat端口设置为其他,例如8080,简称t php网 ...
- 配置tomcat、nginx实现反向代理(需操作)
配置tomcat.nginx实现反向代理现在我想通过nginx访问tomcat 这就要我们去修改nginx的核心配置文件,在其目录下的conf文件夹下的nginx.conf文件,那么首先我们就要了解该 ...
随机推荐
- 官方解析Cookies和Session的区别
官方理解: Cookie机制 Cookie机制 Cookie是服务器存储在本地计算机上的小块文本,并随每个请求发送到同一服务器. IETF RFC 2965 HTTP状态管理机制是一种通用的coo ...
- uva-10602-贪心
题意:有个编辑器,支持三种操作,摁下一个键盘上的字符,重复最后一个单词,删除最后一个字符.给N个字符串,必须先在编辑器内输入第一个字符, 问,输入完所有字符串最少需要摁下多少次键盘. 最多100个字符 ...
- IIC 设备使用
通过 读 / 写 IIC 设备上特定的存储空间,来使用设备提供的功能: 存储空间地址 = 设备名 + 设备地址(Slave Address) + 寄存器地址 . 注:设备地址.寄存器地址.地址中写入数 ...
- 在centos上面编译安装python
前言 因为在学习storm的过程中需要安装python,storm是部署在linux上面的,所以需要将python安装在linux上面. 安装准备 python下载 官网链接:https://www. ...
- java中封装类(一)
java中封装类共九个,分别是Boolean,Byte,Short,Integer,Long,Float,Double,Character,Void 其中Void对于使用者并无多大意义,也不可以构造任 ...
- SQL 读取csv 文件批量插入数据
use test /* create table temp_pre ( vc_product_id varchar(20) default '', en_in_amount numeric(9,2)d ...
- 通过windows远程桌面连接CentOS系统
前提: CentOS安装桌面,如果无桌面,请执行 # yum -y groups install "GNOME Desktop" # startx 1 2 配置源 # yum in ...
- wiredtiger--初学数据恢复
启动mongodb是failed,日志如下 1.解压wirdtiger包 tar -vxf wiredtiger-3.1.0.tar.bz2 -C /home/wiredtiger/ 2.安装snap ...
- 通过msyql proxy链接mysql中文乱码及session问题
1.session问题 问题前提:一台机数据库为两个实例,通过不同的socket监听不同端口对外提供服务.不同的站点都访问同一个VIP不同的端口进行访问数据库. 故障现象:一旦有一个站点先用了这个vi ...
- [leetcode]37. Sudoku Solver 解数独
Write a program to solve a Sudoku puzzle by filling the empty cells. A sudoku solution must satisfy ...