Ubuntu 16.04配置SSL免费证书
主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613
本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache。
关于安装Apache,对于Ubuntu来说,一行命令行就能搞定。
sudo apt-get install apache2
当然了,如果有对lnmp或者lanmp环境搭建感兴趣的可以参考我的这篇博文:Ubuntu16.04之开发环境构建
虽说该文排版有待改善,但是内容还是很实用的。
1.开启SSL模块
a2enmod ssl
上面的命令相当于下面两条命令:
sudo ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled
sudo ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled
如果没有a2enmod
指令,也可直接在apache2.conf中设置SSL模块加载:
LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so
不过注意,一般都用不到这个,因为安装apache2时,自带有a2enmod指令。
2.创建第三方CA机构签署证书,并向它提交“生成证书的请求文件”(文件后缀通常为.csr)
openssl genrsa -des3 -out server.key 1024
-des3
选项能对私钥进行加密,采用此选项会在后续的设置中提示你输入密码(只是加密私钥,https访问时不需要这个密码)
这样会在当前目录下生成server.key私钥文件
3.生成请求文件csr
openssl req -new -key server.key -out server.csr
执行这条命令后,会在小黑窗里显示如下需要填写的内容:
Country Name
Province Name
Common Name
Email
其中Common Name
最好用域名,否则https访问时会出现证书不一致的情况
4.自己签发证书
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
3650表示证书有效期10年
5.修改apache配置文件
ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/default-ssl.conf
vim /etc/apache2/sites-enabled/default-ssl.conf
在DocumentRoot中加入内容:
SSLEngine On
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key
6.重启Apache即可
/etc/init.d/apache2 restart
完成上面的不能代表,就可以直接使用。上面的步骤,只是一个搭建,可以让你看到界面上的简单效果。
简而言之的说,中看不中用。但是总的来说,它仍然是有益的。希望能够给广大朋友带来帮助。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述