apache添加https证书

今天折腾了一下,总结apache添加https证书的方法。
证书类型分为两种,
A)自签名证书
利用oepnssl命令生成.csr和key文件,没有授信,没有有效期,但是可以强制使用https协议,可用于本地和测试阶段。
步骤如下:
1.安装相关依赖。
yum install mod_ssl openssl
 
2.生成私钥
openssl genrsa -out server.key 2048
 
3.生成签名文件
openssl req -new -key server.key -out server.csr
 
4.生成自签名证书。有效期设置为10年
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
 
5.将相关文件复制到相应位置。
cp server.crt /etc/pki/tls/certs/ cp server.key /etc/pki/tls/private/ cp server.csr /etc/pki/tls/private/
 
6.修改ssl.conf中相应配置。找到VirtualHost 443相关配合段,将下面几行配好:
SSLCertificateFile /etc/pki/tls/certs/server.crt SSLCertificateKeyFile /etc/pki/tls/private/server.key
SSLEngine on
 
 
(ServerName、DocumentRoot记得也配好)
7.重启apache服务。
service httpd restart
B) 真实ssl证书
可以使用cerbot 或者letsencrypt进行生成证书。相关命令操作如下:
git clone https://github.com/letsencrypt/letsencrypt cd letsencrypt ./letsencrypt-auto certonly --standalone --email YOUREMAIL@XXX.com -d YOURDOMAIN.com -d www.YOURDOMAIN.com 请用你自己的邮箱和域名
 
特别注意:Let`s Encrypt提供的证书每隔90天就要重新申请一次
 
说一些相关又题外的话,如果apache是部署在docker容器中的话,记得把443的端口映射出来,让宿主机能正常访问到https的web服务。

posted @   freephp  阅读(5585)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2017-07-22 一叶障目:排查问题的思路
点击右上角即可分享
微信分享提示