前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >nginx HTTPS反向代理

nginx HTTPS反向代理

作者头像
ayqy贾杰
发布于 2019-06-12 04:27:40
发布于 2019-06-12 04:27:40
3.4K00
代码可运行
举报
文章被收录于专栏:黯羽轻扬黯羽轻扬
运行总次数:0
代码可运行

一.环境

Centos

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ cat /etc/redhat-releas
CentOS Linux release 7.3.1611 (Core)

非必须,配置方式都一样,编译安装nginx过程也一样,熟悉哪个用哪个就好

nginx:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.9.9
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module

configure arguments里的with-http_ssl_module必须的,在./configure时必须添上该选项启用ssl模块,否则比较麻烦(没有类似于phpize这种东西,只能添上参数重新编译按需覆盖)

免费SSL证书

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://letsencrypt.org/getting-started/

Let’s Encrypt相对更可靠一些,非盈利组织,旨在推动HTTPS化进程,所以用这个为世界和平出一份力(虽然主要就图个免费~)

P.S.证书3个月有效期,到期需要续命,可以通过工具自动续,不很麻烦

node:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ nvm ls
       v6.10.0
->       v7.9.0
default -> stable (-> v7.9.0)
node -> stable (-> v7.9.0) (default)
stable -> 7.9 (-> v7.9.0) (default)

非必须,用来验证nginx配置完毕后反向代理是否正常,其它任何能起HTTP server的方式都行

二.申请免费SSL证书

https://letsencrypt.org/getting-started/,一步一步来,推荐With Shell Access方式。提供了一个命令行工具certbot,交互式配置,傻瓜式下一步,非常好用

另外,用命令行工具的好处是证书到期可以自动续,执行一条命令的事情,添到cron任务里,就可以免打扰了。甚至可以每天自动来一发,官方也推荐这么做,作用是心跳包,表示健在,不会被筛查撤回:

Note: if you’re setting up a cron or systemd job, we recommend running it twice per day (it won’t do anything until your certificates are due for renewal or revoked, but running it regularly would give your site a chance of staying online in case a Let’s Encrypt-initiated revocation happened for some reason). Please select a random minute within the hour for your renewal tasks.

按照certbot一步一步来,比如本文环境的步骤是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 添yum源
yum -y install yum-utils
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
# 安装certbot
sudo yum install certbot
# 只求证书,不自动配置
certbot certonly

一切正常的话,最后会得到类似这样的提示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pemIMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
  /etc/letsencrypt/live/<mydomain>/fullchain.pem. Your cert will
  expire on 2017-07-17. To obtain a new or tweaked version of this
  certificate in the future, simply run certbot again. To
  non-interactively renew *all* of your certificates, run "certbot
  renew"
- Your account credentials have been saved in your Certbot
  configuration directory at /etc/letsencrypt. You should make a
  secure backup of this folder now. This configuration directory will
  also contain certificates and private keys obtained by Certbot so
  making regular backups of this folder is ideal.
- 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

证书和私钥都放在/etc/letsencrypt/live/<mydomain>/下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ ls /etc/letsencrypt/live/<mydomain>/
cert.pem  chain.pem  fullchain.pem  privkey.pem  README

其中cert.pem证书(服务端证书),privkey.pem私钥,有这两个就够了。另外,chain.pem是根证书和中间证书等除服务端证书外的其它的,认证流程证书链需要的。fullchain.pem是完整的证书链,包括cert.pemchain.pem的内容

最后开启自动续命:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 更新测试
certbot renew --dry-run

一切正常的话,添加cron任务:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
crontab -e
# 每天1.11更新证书
11 1 * * * certbot renew >> ~/cron/cert.log
# 查看所有任务
crontab -l

三.配置nginx HTTPS反向代理

检查ssl模块:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ /usr/local/nginx/sbin/nginx -V

configure arguments里有with-http_ssl_module表示已经有ssl模块了,否则需要添上参数重新编译一份,覆盖掉现有的nginx可执行文件,具体步骤请查看nginx重新编译添加ssl模块

修改配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 备份
cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf_
# 编辑
vi /usr/local/nginx/conf/nginx.conf
# 修改HTTPS server下的内容为
server {
   listen       443 ssl;
   server_name  localhost;   ssl_certificate      /etc/letsencrypt/live/<mydomain>/fullchain.pem;
   ssl_certificate_key  /etc/letsencrypt/live/<mydomain>/privkey.pem;   ssl_session_timeout  5m;   location / {
       proxy_pass http://localhost:7777;
   }
}
# 测试配置语法
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
# 重启nginx
/usr/local/nginx/sbin/nginx -s reload

一切正常的话,到这里就配置好了整站HTTPS请求都转发到7777端口

P.S.如果需要配置指定路径转发,修改location路径匹配规则就好,具体可以参考Nginx 配置简述

四.起HTTP server确认代理生效

由nginx来维护HTTPS连接,身后的HTTP服务几乎不需要做任何改动,因为收到的仍然是HTTP请求,只不过是经nginx转发的(但cookie等经转发可能会出问题,需要配置proxy_cookie_path,以后遇到再说)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
const http = require('http');const PORT = 7777;http.createServer((req, res) => {
   res.end('hoho, ' + PORT);
}).listen(PORT);
console.log('server is ready, listening ' + PORT);

访问https:<mydomain>/看到hoho, 7777,说明代理生效

地址栏已经挂上了一把漂亮的小绿锁,另外,一般还需要配置DNS解析规则,HTTP请求强制重发HTTPS,或者更合理的HSTS方式等等,都是后话

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端向后 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
NSF发布人-技关系前沿项目指南
美国国家科学基金会(NSF)发布人-技关系前沿项目指南,旨在通过支持融合研究来应对不断变化的工作环境带来的机遇和挑战,包括:理解和发展人与技术的关系;设计新技术来增强人的表现;阐述新兴社会技术格局并了解新技术的风险和收益;利用技术普及终生教育机制。
人工智能快报
2018/07/26
3370
美国家机器人计划重奖3150万美元推动协作机器人发展
从灾难恢复到在家里照顾老人,科学家和工程师们正在开发接近人的机器人去处理重要任务,其安全和弹性都远远超过前几代智能机器。 今天,美国国家科学基金会(NSF)联手美国国立卫生研究院、美国农业部和美国航
机器人网
2018/04/13
8560
美国家机器人计划重奖3150万美元推动协作机器人发展
美国科研欲重回阿波罗登月水平,基础科学投入计划翻倍
机器之心报道 编辑:泽南、小舟 数倍增加美国科学研究经费的「无尽边界法案」即将成真了。尽管投入数字缩水,但新版的法案仍然让美国的基础科研经费有了可怕的增长。 在与中国的全面竞争中,美国希望能在基础科学领域里保持领先,对此其不惜准备将经费投入重新提高到 20 世纪 60 年代「阿波罗登月计划」时期的最高水平。 美国众议院科学委员会希望在未来五年内将国家科学基金会(NSF)的预算增加一倍以上,把大量额外资金用于新的理事会,以加快基础研究的步伐,研究新技术和新产品。 与参议院多数党领袖查克 · 舒默(Chuck
机器之心
2023/03/29
2680
美国科研欲重回阿波罗登月水平,基础科学投入计划翻倍
重磅 | 美国AI再加码:投资2.2亿美元新增11个国家AI研究中心,覆盖7大研究领域
刚刚,美国国家科学基金会(NSF)的一份公告显示,作为基础 AI 研究的非国防主要联邦资助机构,NSF 正在引领美国进行关键的人工智能投资,这些投资几乎覆盖所有的社会领域。
机器之心
2021/08/06
4460
美国2.2亿美元砸向人工智能,再建11个国家AI研究中心
明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI 2.2亿美元资助11个新成立的国家人工智能研究中心。 美国国家科学基金会(NSF)刚刚宣布,在2020年首轮资助7个人工智能研究中心基础上,这一次将覆盖范围扩大到了美国40个州。 此次新增研究中心主要覆盖以下几个领域: 人机交互与协作、人工智能优化进步、人工智能和高级网络基础设施、计算机和网络系统中的人工智能、动态系统中的人工智能、农业和食品系统中的人工智能创新。 每个研究中心在未来5年内将得到总计约2000万美元的资助。 这无疑将促进整个AI行
量子位
2023/03/10
3900
美国2.2亿美元砸向人工智能,再建11个国家AI研究中心
斯坦福HAI研究院解读:「芯片法案」撒钱2800亿美元,AI行业能拿多少?
---- 新智元报道   编辑:David Joey 【新智元导读】2800亿美元的「芯片与科学法案」,其实芯片只分走540亿,大头是「科学」。李飞飞任院长的斯坦福HAI分析了一波,看哪些条款与AI有关,AI行业能分多少蛋糕。 昨天,美国2800亿美元「芯片法案」正式签署,立即引发热烈讨论。资本市场给出强烈负面回应,主要芯片大厂股票纷纷大跌。 不过,无论是媒体还是市场,关注焦点全在「芯片」上,大概都忽略了这个法案的全名叫做「芯片和科学法案」。 实际上,2800亿美元中,给「芯片」的补贴加一起540多
新智元
2022/08/26
2380
斯坦福HAI研究院解读:「芯片法案」撒钱2800亿美元,AI行业能拿多少?
学界铁幕遭搁置?2500亿美元《无尽前沿法案》再加码,遭讽「无尽开支法案」!
---- 新智元报道   来源:外媒 编辑:LQ 【新智元导读】学界铁幕《无尽前沿法案》加码至2500亿美元,但在表决阶段遭遇反对,有议员表示,这将使今后10年美国赤字暴增500多亿美元,美国没钱支付这一「无尽开支法案」! 查克·舒默和托德·杨的《无尽前沿法案》仍未通过。 本来舒默老头满心希望能赶在下周阵亡将士纪念日假期来之前完成该议案的立法,但是周四晚上,以Ron Johnson为首的参议院共和党人发起了反对。 随后两方开始「协商」,一直商量到周五凌晨3点也没有达成共识。 周五投票,结果68:30,
新智元
2023/05/22
5880
学界铁幕遭搁置?2500亿美元《无尽前沿法案》再加码,遭讽「无尽开支法案」!
AI 公共政策成全球热点,美国 ITI 发布《人工智能政策原则》
作者:曹建峰 腾讯研究院法律研究中心高级研究员   祝林华 腾讯研究院法律研究中心助理研究员 一、 AI公共政策成AI领域全球热点 AI研究开发和行业应用的热度仍在持续,在此背景下,A
腾讯研究院
2017/11/02
1.8K0
美国国会将NSF科研预算翻一倍,只为碾压中国,获众议院全票通过!
不久前(5月12日),美国参议院的商业与科学委员会通过了参议院多数党领袖 Chuck Schumer 所提议的《无尽边沿法案》(Endless Frontier Act),该法案 (S. 1260) 提议给 NSF 新成立的技术理事会拨款 1000 亿美元,以支持人工智能、先进通信与量子信息科学等 10 项关键技术的发展。
AI科技评论
2021/07/03
3490
美国国会将NSF科研预算翻一倍,只为碾压中国,获众议院全票通过!
学界铁幕落下!美《无尽前沿法案》高票通过,砸1100亿美元抗衡中国
近日,美国参议院商务委员会审议通过了《无尽前沿法案》(Endless Frontier Act)。
新智元
2021/05/28
8170
学界铁幕落下!美《无尽前沿法案》高票通过,砸1100亿美元抗衡中国
美国机器人应用遥遥落后?时隔15年,十所顶尖高校重启「国家机器人路线图」
到了2009年,美国首次发布国家机器人路线路(national robotics roadmap)时,美国在工业应用领域(如汽车、航空航天和家电等)的应用已经降低到了全球第四位。
新智元
2024/05/15
1660
美国机器人应用遥遥落后?时隔15年,十所顶尖高校重启「国家机器人路线图」
美国国家科学基金会投3至5千万美元研发协作式机器人
2015年12月,美国国家科学基金会(NSF)宣布将投资3至5千万美元用于研发协作式机器人,相关经费将用于支持25至70个科研项目。NSF将从14个重点方向开展相关研发,包括: 自治系统方面:涉及到在非结构化环境中部署单个或多个代理(agent)来增强智能感知和智能决策方面的原理、计算方法和架构等; 社会、行为和经济方面:从这三个方面探索协作式机器人对人类各领域活动的深远影响;包括人口统计学群体和一般意义上的社会群体对协作式机器人可能的理解,推广和使用模式,各行业使用协作式机器人的积极面、潜在问题和伦理诉求
人工智能快报
2018/03/13
7370
迈向福祉型人工智能:指导原则与行动路线图
12月3日,卡耐基国际和平基金会主席Mariano-Florentino Cuéllar、谷歌首席科学家Jeff Dean、知名计算机科学家David Patterson等人撰写的长篇报告“Shaping AI’s Impact on Billions of Lives”发布,报告探讨了利用人工智能增进大众福祉的指导原则和行动路线图。作者团队与来自各个领域的24位专家进行了深入访谈,包括诺贝尔化学奖得主John Jumper、前美国总统Barack Obama、前联合国大使兼前国家安全顾问Susan Rice、谷歌前首席执行官兼慈善家Eric Schmidt以及科幻小说家Neal Stephenson等。本文是对该报告核心内容的编译。
小腾资讯君
2024/12/23
1800
美商务部:英特尔将获85亿美元补贴,还有110亿美元低息贷款!
当地时间3月20日,美国拜登政府宣布,美国商务部已与英特尔公司达成了一份不具约束力的初步条款备忘录(PMT),将根据《芯片和科学法案》为其提供高达 85 亿美元的直接补贴资金,以加强美国的供应链,并重新确立美国在半导体制造领域的领导地位。同时,《芯片与科学法案》项目办公室还将根据 PMT 向英特尔提供高达 110 亿美元的低息贷款(这是《芯片与科学法案》提供的 750 亿美元贷款授权的一部分) 。英特尔公司表示,计划申请财政部的投资税收抵免,预计最高可达合格资本支出的 25%。
芯智讯
2024/03/26
1270
美商务部:英特尔将获85亿美元补贴,还有110亿美元低息贷款!
获1000万美元捐款,用于代码重构、上云,论文预印版平台arXiv「好起来了」
对于节奏越来越快的学术研究领域而言,arXiv 是非常重要的论文预印版平台。和维基百科一样,它是个非营利性机构。
机器之心
2023/10/24
2620
获1000万美元捐款,用于代码重构、上云,论文预印版平台arXiv「好起来了」
NSF投资1700万美元开展神经和认知系统基础研究
美国国家科学基金会(NSF)宣布投资1700万美元开展18项神经与认知系统前沿研究项目,如表1所示。这些项目来自于NSF的“面向理解神经和认知系统的综合战略”项目,属于人脑计划的一部分,主要包括四个主题:神经工程和脑启发概念与设计、个体化和差异性、在现实和复杂环境中的认知和神经过程、数据密集型科学和认知科学。其中,前两项主题已列于2015财年的人脑研究首轮资助项目中。 这些项目将探索从空间导航到内存优化到神经形态计算的基本科学和工程问题,基于超越传统观点和方法的综合战略构建跨学科的前沿研究。 表1 NSF资
人工智能快报
2018/03/14
6580
美国政府提议大幅增加AI和量子科研支出,AI研发经费提高至20亿美元
据外媒报道,白宫将于2月10日在其2021年预算提案中大幅度增加AI和量子科学研发的开支。特朗普政府目标是到2022年将人工智能研发经费的支出从9.73亿美元增加一倍至近20亿美元,并在两年内将量子信息科研的支出增加一倍至8.6亿美元。
镁客网
2020/02/21
3670
美国政府提议大幅增加AI和量子科研支出,AI研发经费提高至20亿美元
2.3万亿美元,拜登公布大基建计划:对标罗斯福新政,特斯拉股票大涨
机器之心报道 编辑:泽南、蛋酱 拜登的 2.3 万亿美元,都要花在哪儿? 当地时间 3 月 31 日,美国总统拜登在宾夕法尼亚州匹兹堡发表讲话,宣布了一项数额高达 2.3 万亿美元的基础设施计划,表示将在未来 8 年内重构美国的基础设施。 拜登承诺这项计划将取得与「罗斯福新政」及约翰逊「伟大社会」计划同样的成就,并将其称为「一代人仅有一次的投资」。 「这不是一个小修小补的计划。自从几十年前我们建造了州际公路系统,完成了太空竞赛之后,美国就从未做过类似这样的事情。它将是自二战以来美国最大的就业投资,将创造数
机器之心
2023/03/29
3270
2.3万亿美元,拜登公布大基建计划:对标罗斯福新政,特斯拉股票大涨
跨年AI应用指南:有人获30万美元年薪新工作,GPTs可能彻底改变人类社会
奈飞在1999年推出DVD邮件订阅服务后,用了三年半的时间才拥有了100万用户;Airbnb用了两年半的时间吸引了100万用户;Facebook用了10个月时间取得这样的成绩;音乐流媒体服务Spotify只用了5个月就达到了这个受众规模,而Instagram在2010年用不到3个月的时间吸引到100万用户。
小腾资讯君
2024/01/23
1620
跨年AI应用指南:有人获30万美元年薪新工作,GPTs可能彻底改变人类社会
美NSF支持神经与认知系统深度研究
美国国家基金会(NSF)将在2017财年划拨1500万美元支持对关于神经与认知系统的深度研究。该计划将支持一些具有潜在变革影响的创新科技研究,从而促进对神经和认知系统的认识。该计划的重点关注方向包括: 1.神经工程及基于人脑的概念和设计:受神经科学、认知科学以及现代技术发展的启发,将产生关于人脑科学的重大创新,包括:实时大脑活动与行为成像、感知、记录或干预技术;基于人脑的计算模式;人脑-计算机界面;增强和自适应系统(如用于通信、修复术、学习、教育或执行任务);实用神经技术;其他运算和生物工程系统。关于该主题
人工智能快报
2018/03/14
5680
推荐阅读
NSF发布人-技关系前沿项目指南
3370
美国家机器人计划重奖3150万美元推动协作机器人发展
8560
美国科研欲重回阿波罗登月水平,基础科学投入计划翻倍
2680
重磅 | 美国AI再加码:投资2.2亿美元新增11个国家AI研究中心,覆盖7大研究领域
4460
美国2.2亿美元砸向人工智能,再建11个国家AI研究中心
3900
斯坦福HAI研究院解读:「芯片法案」撒钱2800亿美元,AI行业能拿多少?
2380
学界铁幕遭搁置?2500亿美元《无尽前沿法案》再加码,遭讽「无尽开支法案」!
5880
AI 公共政策成全球热点,美国 ITI 发布《人工智能政策原则》
1.8K0
美国国会将NSF科研预算翻一倍,只为碾压中国,获众议院全票通过!
3490
学界铁幕落下!美《无尽前沿法案》高票通过,砸1100亿美元抗衡中国
8170
美国机器人应用遥遥落后?时隔15年,十所顶尖高校重启「国家机器人路线图」
1660
美国国家科学基金会投3至5千万美元研发协作式机器人
7370
迈向福祉型人工智能:指导原则与行动路线图
1800
美商务部:英特尔将获85亿美元补贴,还有110亿美元低息贷款!
1270
获1000万美元捐款,用于代码重构、上云,论文预印版平台arXiv「好起来了」
2620
NSF投资1700万美元开展神经和认知系统基础研究
6580
美国政府提议大幅增加AI和量子科研支出,AI研发经费提高至20亿美元
3670
2.3万亿美元,拜登公布大基建计划:对标罗斯福新政,特斯拉股票大涨
3270
跨年AI应用指南:有人获30万美元年薪新工作,GPTs可能彻底改变人类社会
1620
美NSF支持神经与认知系统深度研究
5680
相关推荐
NSF发布人-技关系前沿项目指南
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档