29 | 我应该迁移到HTTPS吗?
29 | 我应该迁移到HTTPS吗?
讲述:Chrono
时长09:53大小11.33M
迁移的必要性
迁移的顾虑
申请证书
配置 HTTPS
服务器名称指示
重定向跳转
小结
课下作业
赞 19
提建议
精选留言(22)
- 前端西瓜哥2019-08-03感谢老师的这篇文章!今天我成功将个人博客网站迁移到 HTTPS 了,高兴。 我之前一直没有把网站迁移到 HTTPS ,主要是因为需要学很多东西,比如如何配置 nginx,https 的相关知识,证书的申请等等(做开发的都知道,配置这种东西真的很麻烦)。此外误解申请证书是要花很多钱的(看了这章才知道有这么方便简单的免费证书),另外又觉得我这个只是个个人技术博客网站,http 其实也可以,就一直放在那里不做了。 不过学了这章和前面的内容,就明白的 HTTPS 大概的过程,也学会了迁移 HTTPS 需要注意的一些细节。今天也是成功将自己的个人博客迁移到 HTTPS 了,期间也是各种问题不断,也是一一解决,折腾了很久。不过看到自己的网站上在也没有“不安全”的标签,也是觉得非常有成就感。展开
作者回复: 一起分享你的喜悦!
61 - Demon.Lee2019-10-29安全篇学习完了,大部分都没记住,看样子,起码得刷3遍以上🐮
作者回复: https要比http复杂得多,因为涉及到安全,所以“万事小心”。 可以结合抓包、Chrome工具,多做实验。
10 - 许童童2019-08-02个人博客网站很早就用上了https,但老师说的那些Nginx优化参数没有用上,我这就去加上。
作者回复: 很好的实践机会。
6 - 皮特尔2020-07-09ESNI把请求域名也加密了,GFW的拦截是不是就失效了?
作者回复: 这个问题不好回答啊,是送命题……
共 2 条评论4 - 阿锋2019-08-02上文提到的虚拟主机,跟正向代理,反向代理,有什么区别。
作者回复: 虚拟主机与代理没有关系,是http服务器里的概念,在一个ip地址上存在多个域名(即主机),所以叫“虚拟主机”。 因为不能用ip地址区分,所以就要用host字段,区分不同的主机(域名、网站)。
共 2 条评论4 - 许童童2019-08-02老师你好,刚才搞了半天编译好了Nginx新版本With OpenSSL才开启TLSv1.3,不知道老师是怎么安装这些软件的,有什么好的建议吗? nginx version: nginx/1.16.0 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) built with OpenSSL 1.1.1 11 Sep 2018
作者回复: 支持tls1.3主要就是OpenSSL要升级到1.11,Nginx的版本用较新的就好。 因为Nginx的ssl功能依赖于底层的OpenSSL,所以支持tls1.3比较简单,只要重新编译就好。 这方面好像没什么简单的方法,不过也不是很麻烦。
3 - 功夫熊猫2021-10-29vue-cil的vue-config里可以直接选择发送协议是http还是https,只需要在https选项后设置为true就可以,但好像还是需要数字证书申请之类的
作者回复: 前端的vue不是很了解,但如果是访问https服务器,一般是不需要客户端提供证书的,因为现在大多数是单向认证,只验证服务器的证书。
2 - Lostoy2021-12-05老师能否说一下浏览器/移动端APP和服务端进行https请求的完整加密配置和通信过程?上面只说了服务端的配置,难道移动端APP或者浏览器不用做任何配置?如果不用配置那整个安全通信机制是什么样的?为什么只用服务器配置就可以了?
作者回复: 前面讲tls1.2、1.3的时候已经说过通信过程了,客户端是浏览器、curl都可以。 这里只说了目前最常用的单向认证,所以客户端不需要任何配置,只要按照协议的规定,验证完服务器身份就可以了。 具体可以再看看这两个握手过程,注意把客户端替换成你关心的浏览器或者App。
1 - 学不动了2021-04-25这两章对于我这种门外汉来说,真的是干货满满
作者回复: 有问题随时提,共同进步。
1 - 尿布2020-09-10”HSTS“无法防止黑客对第一次访问的攻击,所以Chrome等浏览器还内置了一个”HSTS preload“的列表(chrome://net-internals/#hsts),只要域名再这个列表里,无论何时都会强制使用HTTPS访问 之前在实验室环境访问HTTP协议时可以看到请求头里有”Upgrade-Insecure-Requests: 1“,它就是GSP的一种,表示浏览器支持升级到HTTPS协议展开1
- 张三2020-04-121. 公司有一台服务器的应用配置了http和https,用不同的端口来区分,可是chrome每次都是默认用https,所以就会出现不能访问http的问题,而ie就不会,不知道和HSTS有没有关系?
作者回复: ie比较老了,安全性比较弱。 Chrome的问题需要看服务器的配置,是否配置了hsts,你要非用http它也是支持的。
1 - 钱2020-04-04大势所趋,那就要跟上,我司已切😄
作者回复: good
1 - djfhchdh2019-08-022、TLS1.3的pre-shared-key,实现0-RTT;OCSP Stapling;
作者回复: 对,相应的Nginx指令是: ssl_early_data on; ssl_stapling on;
共 2 条评论1 - ifelse2023-02-01 来自浙江天才们努力奋斗,凡人坐享其成
作者回复: keep going.
1 - 疯狂的书生2022-11-05 来自北京我主要做嵌入式软件端的开发,最近开发个物联网的项目,碰上了一个有关SNI的问题。 使用移远4G模组Open方案,https连服务器,实名手机SIM卡https post请求均正常;但使用物联网卡https post请求,TCP三次握手后,进入SSL握手阶段就连接断开了,(物联网卡没有设置白名单)。后来在技术支持的帮助下设定了开启SNI,稀里糊涂的此问题就修复了。 看到这个课程的SNI,才隐约了解这个参数的作用,看来我还要回去继续复盘一下这个问题,更深入巩固一下SSL / 证书相关知识。展开
作者回复: great
- 曾泽浩2022-10-28 来自上海你好,我想请教一下,是不是NG到upstream这一跳还是用明文传输的?
作者回复: 可以在proxy_pass指令里配置,http、https都可以。
- 睡觉也在笑2021-03-29老师,内部spring boot写的微服务之间有什么https的优化方案吗?因为是银行领域,所以监管部门有一些强制的安全基线。因此我想问一下有没有什么支持国密算法的好的方案。sm2算法是椭圆曲线的一种扩展算法,但是不知道需要怎样的改造才能支持TLS1.3.
作者回复: TLS标准里没有为国密算法留位置,这个不太好办,也许可以考虑那个国内某个大学基于OpenSSL做的库,具体的名字记不清了。
- Ping2020-04-13老师不知道您了解S2N吗,能不能讲解下什么是S2N?
作者回复: 搜了一下,它是Amazon开发的一个tls实现,相当于OpenSSL,但更精简。 现在来看影响还不是很大,权威性不够,不过用来研究应该还是可以的。
- keep it simple2020-02-09请教下老师,启用了session ticket,但注意到new session ticket有效期只有300秒,这个参数能改长吗?我们用的是阿里云的SLB
作者回复: 可以改,在Nginx里有配置,ssl_session_timeout默认就是300秒,但阿里云该如何配置就不太清楚了。 我猜用的是tengine,也是Nginx,应该是一样的,可以去Nginx官网看文档。 http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_session_tickets
- 鸟人2019-08-26请问如果网站HTTPS证书过期会怎么样?
作者回复: 那么证书就失效了,浏览器会认为不安全,当然还是可以强制访问的。