• 配置http.conf,所在位置d:\wamp\bin\apache\apache2.4.9\conf\http.conf
 
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule sslmodule modules/modssl.so
Include conf/extra/httpd-ssl.conf
 
  • 配置http-ssl.conf,所在位置d:\wamp\bin\apache\apache2.4.9\conf\extra\http-ssl.conf
 
# 注意路径都改到wamp的目录下
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLSessionCache "shmcb:E:/wamp/logs/ssl_scache"
DocumentRoot "d:/wamp/www"
ServerName localhost:443
ErrorLog "d:/wamp/logs/apache_error.log"
TransferLog "d:/wamp/logs/access.log"
 
SSLCertificateFile "d:/wamp/bin/apache/apache2.4.9/bin/server.crt"
SSLCertificateKeyFile "d:/wamp/bin/apache/apache2.4.9/bin/server.key"
SSLCACertificateFile "d:/wamp/bin/apache/apache2.4.9/bin/ca.crt"
 
# 要求进行客户端认证,如果是双向认证,需要打开
SSLVerifyClient require        
SSLVerifyDepth  1
 
CustomLog "d:/wamp/logs/ssl_request.log"
 
  • 生成证书
# openssl程序,在wamp\bin\apache\apache2.4.9\bin目录下
 
生成私钥
openssl> genrsa -out ca.key 2048
openssl> genrsa -out server.key 2048
openssl> genrsa -out client.key 2048
 

自签署ca证书

openssl> req -x509 -new -key ca.key -out ca.crt -config ../conf/openssl.cnf -days 365
 
# 因为是根证书,这里的Common Name只填显示名称即可
 
说明:
Country Name 国家代码(只支持两位字符)
Province Name 省份
Locality Name 城市
Organization Name 公司名称
Organizational Unit Name 组织名称
Common Name (申请证书的域名或IP地址)  
Email Address 管理员邮箱  
 

服务端申请签署资料生成

 
req -new -key server.key -out server.csr -config ../conf/openssl.cnf -days 365
 
# 需注意国家、省、市这些资料,必需和根证书CA一样,不然没法用CA签证
# Common Name为当前服务器IP或域名
 
客户端申请签署资料生成
req -new -key client.key -out client.csr -config ../conf/openssl.cnf -days 365
 
建立CA自签目录
在wamp\bin\apache\apache2.4.9\bin目录下
 
mkdir -p ./demoCA/newcerts
touch ./demoCA/index.txt
echo 01 > ./demoCA/serial
echo 01 > ./demoCA/crlnumber
 
 

用ca证书给服务端签名

 
ca -in server.csr -cert ca.crt -keyfile ca.key -out server.crt  -config ../conf/openssl.cnf
 
# 注意生成之后,需要清空demoCA/index.txt里面的内容,不然给下一个签证时会报错
 
 

用ca证书给客户端签名

 
ca -in client.csr -cert ca.crt -keyfile ca.key -out client.crt  -config ../conf/openssl.cnf
 
 

生成客户端使用证书

 
pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx
 
--------------------------------------
  • 测试使用
 
 
因为证书不是机构所发,所以会提示这个
 
  • 导入CA根证书
此时访问就ok了

设置apache https服务的更多相关文章

  1. Centos6.3下搭建apache+https服务

    1. 安装插件 yum install mod_ssl openssl openssl-devel --downloadonly --downloaddir=/home/https 2.生成私钥 op ...

  2. 如何在IIS中设置HTTPS服务

    文章:https://support.microsoft.com/en-us/help/324069/how-to-set-up-an-https-service-in-iis 在这个任务中 摘要 为 ...

  3. Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务

    目录 目录 1.GitLab11.3.9的安装 2.域名在阿里云托管,申请免费的1年证书 3.Gitlab 的 https 配置 4.Nginx 配置 https,反向代理指向 Gitlab 配置 目 ...

  4. centos配置apache的https服务

    因为公司要开发微信小程序,由于小程序比较特殊,需要https服务,所以就研究了下apache的https服务了,大致过程如下: 1.向证书机构申请https证书,会得到证书和私钥 2.安装apache ...

  5. 使用poco 的NetSSL_OpenSSL 搭建https 服务端,使用C++客户端,java 客户端访问,python访问(python还没找到带证书访问的代码.)

    V20161028 由于项目原因,需要用到https去做一些事情. 这儿做了一些相应的研究. 这个https 用起来也是折腾人,还是研究了一周多+之前的一些积累. 目录 1,java client 通 ...

  6. 解决Android调用https服务API时出错的问题

    今天同事告诉我说他的应用调用我开发的API报异常了,原因跟SSL有关系,因为之前调试一直调用的是HTTP服务API,今天调试HTTPS服务API时报错了,并且找到了一篇文章让我看了一眼,文章中提到了W ...

  7. .Net Core和jexus配置HTTPS服务

    花了几天时间,看了好多篇博客,终于搞定了网站的HTTPS服务,借此写篇博客,来让有需要的朋友少走弯路. 一.环境介绍 1.Linux下在Docker容器中部署好了一个网站,该网站需要通过外部提供程序访 ...

  8. windows下apache+https环境配置

    windows下apache+https环境配置 转 https://www.cnblogs.com/sandaizi/p/7519370.html 1.修改配置文件conf/httpd.conf,去 ...

  9. Apache ZooKeeper 服务启动源码解释

    转载:https://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper-code/ 本文首先讲解了 Apache ZooKeeper 服 ...

随机推荐

  1. php设计模式 策略模式

    策略模式: 将一组特定的行为和算法封装成类,以适应某些特定的上下文环境: 实际应用举例,假如一个电商网站系统,针对男性女性用户要各自跳转到不同的商品类目,并且所有广告位展示不同的广告. UserStr ...

  2. jstack简单使用,定位死循环、线程阻塞、死锁等问题

    当我们运行java程序时,发现程序不动,但又不知道是哪里出问题时,可以使用JDK自带的jstack工具去定位: 废话不说,直接上例子吧,在window平台上的: 死循环 写个死循环的程序如下: pac ...

  3. 深入解析Windows操作系统笔记——CH1概念和术语

    1.概念和工具 本章主要介绍Windows操作系统的关键概念和术语 1.概念和工具 1.1操作系统版本 1.2基础概念和术语 1.2.1Windows API 1.2.2 服务.函数和例程 1.2.3 ...

  4. Oracle12c安装出错

    Database Configuration Assistant安装失败 向广大园友求助

  5. mysqldump 逻辑备份的正确姿势

    在上一篇文章 MySQL 命令行工具之 mysqldump 深入研究 中,我们搞定了mysqldump的参数和基本原理.那么我们该怎么样最好的使用它的?它有哪些坑呢? 1. 利用mysqldump进行 ...

  6. mysql 触发器的创建 修改 删除

    //做一个简单的练习,创建一个简单的触发器 完成添加文章的时候,自动加上时间,默认作者 为 ‘日记本的回忆‘ show columns from test; //查看表结构 //查看已存在触发器 sh ...

  7. WebService 实例

    使用Java WebService API实现 1.服务端接口: package com.h3c.itac.webservice; import javax.jws.WebService; @WebS ...

  8. DDNS

    一.DDNS简介 DNS,域名系统,是因特网的一项服务,它作为将域名和IP地址相互映射的一个分布式数据库,能够使人们更方便的访问互联网. DDNS,动态域名系统,是域名系统(DNS)中的一种自动更新名 ...

  9. LeetCode #329. Longest Increasing Path in a Matrix

    题目 Given an integer matrix, find the length of the longest increasing path. From each cell, you can ...

  10. 虚拟机centos6.5 --开放端口

    系统:centos6.5 1.查看端口开放情况 /etc/init.d/iptables status 2.开启端口 /sbin/iptables -I INPUT -p tcp --dport -j ...