apache 配置https 支持ssl

本文涉及的产品
Digicert DV 证书 单域名,20个 3个月
简介:
1. 安装openssl 
apache2.0 建议安装0.9版本,我曾经试过2.0.59 对openssl-1.0编译不过去
下载Openssl: http://www.openssl.org/source/
       tar -zxf openssl-0.9.8k.tar.gz    //解压安装包   
       cd openssl-0.9.8k                 //进入已经解压的安装包   
       ./config                          //配置安装。推荐使用默认配置   
       make && make install              //编译及安装   
openssl默认将被安装到/usr/local/ssl 


2. 让apache支持ssl,编译的时候,要指定ssl支持。
静态或者动态
静态方法即  --enable-ssl=static --with-ssl=/usr/local/ssl
动态方法  --enable-ssl=shared --with-ssl=/usr/local/ssl
其中第二种方法会在module/ 目录下生成 mod_ssl.so 模块,而静态不会有,当然第二种方法也需要在httpd.conf 中加入
LoadModule ssl_module modules/mod_ssl.so   

3. 1    创建私钥  
在创建证书请求之前,您需要首先生成服务器证书私钥文件。  
cd /usr/local/ssl/bin                    //进入openssl安装目录  
openssl genrsa -out server.key 2048      //运行openssl命令,生成2048位长的私钥server.key文件。如果您需要对 server.key 添加保护密码,请使用 -des3 扩展命令。Windows环境下不支持加密格式私钥,Linux环境下使用加密格式私钥时,每次重启Apache都需要您输入该私钥密码(例:openssl genrsa -des3 -out server.key 2048)。 
cp server.key   /usr/local/apache/conf/ssl.key/
  
3.2    生成证书请求(CSR)文件   
openssl req -new -key server.key -out certreq.csr   
Country Name:                           //您所在国家的ISO标准代号,中国为CN   
State or Province Name:                 //您单位所在地省/自治区/直辖市   
Locality Name:                          //您单位所在地的市/县/区   
Organization Name:                      //您单位/机构/企业合法的名称   
Organizational Unit Name:               //部门名称   
Common Name:                            //通用名,例如: www.itrus.com.cn 。此项必须与您访问提供SSL服务的服务器时所应用的域名完全匹配。   
Email Address:                          //您的邮件地址,不必输入,直接回车跳过   
"extra"attributes                        //以下信息不必输入,回车跳过直到命令执行完毕。 
   
3.3    备份私钥并提交证书请求   
请将证书请求文件certreq.csr提交给天威诚信,并备份保存证书私钥文件server.key,等待证书的签发。服务器证书密钥对必须配对使用,私钥文件丢失将导致证书不可用。 

4.安装证书
4.1 获取服务器证书中级CA证书   
为保障服务器证书在客户端的兼容性,服务器证书需要安装两张中级CA证书(不同品牌证书,可能只有一张中级证书)。   
从邮件中获取中级CA证书:   
将证书签发邮件中的从BEGIN到 END结束的两张中级CA证书内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到同一个记事本等文本编辑器中,中间用回车换行分隔。修改文件扩展名,保存为conf/ssl.crt/intermediatebundle.crt文件(如果只有一张中级证书,则只需要保存并安装一张中级证书)。   
4.2 获取EV服务器证书   
将证书签发邮件中的从BEGIN到 END结束的服务器证书内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”) 粘贴到记事本等文本编辑器中,保存为ssl.crt/server.crt文件 
   
4.3 apache的配置 2.0的配置
httpd.conf 中增加
Listen  443
NameVirtualHost *:443

    DocumentRoot "/data/web/www"
    ServerName aaa.com:443
    ErrorLog "logs/error.log"
    CustomLog "logs/access.log" combined
     
        SSLEngine on
        SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
        SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key

        SSLCertificateChainFile /usr/local/apache/conf/ssl.crt/intermediatebundle.crt



本文转自 小杨_Ivan 51CTO博客,原文链接:http://blog.51cto.com/aqiang/1895874

相关文章
|
1月前
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
55 3
|
1月前
|
安全 应用服务中间件 网络安全
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
107 3
|
1月前
|
安全 应用服务中间件 网络安全
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
114 10
|
1月前
|
安全 网络协议 网络安全
怎么给ip地址配置https访问
为了配置公网IP地址的HTTPS访问,首先需明确需求并选择受信任的证书颁发机构(如JoySSL)。接着,在JoySSL官网注册并登录,填写特定注册码230922以获取免费IP证书的测试权限。提交证书申请时,填写IP地址及相关验证信息,并完成IP地址验证。验证通过后,下载证书文件。最后,使用浏览器访问IP地址,检查安全连接标志,确保无证书错误。通过以上步骤,可成功配置IP地址的HTTPS访问,提升数据传输安全性和可信度。
|
2月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
2月前
|
Linux 应用服务中间件 Shell
利用 ACME 实现SSL证书自动化配置更新
【10月更文挑战第11天】多项式承诺原理是密码学中的重要工具,允许证明者向验证者承诺一个多项式并证明其某些性质。Kate多项式承诺是一种知名方案,基于有限域上的多项式表示,通过生成和验证简洁的证明来确保多项式的正确性和隐私。其安全性基于离散对数假设。应用场景包括区块链中的零知识证明和可验证计算,以及多方计算和身份认证协议。在区块链中,Kate多项式承诺可用于保护隐私币和智能合约中的敏感信息。
144 2
|
2月前
|
弹性计算 应用服务中间件 网络安全
ECS服务器使用:SSL证书安装、配置和问题定位指南
本文简要介绍了SSL证书的生成与部署方法,包括使用OpenSSL生成自签名证书和从CA获取证书的步骤,以及在Apache和Nginx服务器上的配置方法。此外,还提供了测试证书是否生效的方法和常见问题的解决策略,帮助确保证书正确安装并解决调试过程中可能遇到的问题。
201 0
|
3月前
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性
|
27天前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
54 11

推荐镜像

更多