Wamp apache 配置 Https 双向 认证 全过程
1.我安装的是Wampserver 2.2.11, d:\wamp目录
2.本机操作系统Win7 32位
3.D:\wamp\bin\apache\Apache2.2.11\bin 下有 openssl.exe
4.D:\wamp\bin\apache\Apache2.2.11\conf 下有 openssl.cnf
5.D:\wamp\bin\apache\Apache2.2.11\conf\extra 下有 httpd-ssl.conf
6.本机地址 192.168.111.1
7.wamp apache 开启 mod_ssl
8.httpd-ssl.conf内容(去除注释后)
Listen 443
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:D:/wamp/bin/apache/Apache2.2.11/logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
SSLMutex default
<VirtualHost _default_:443>
DocumentRoot "D:\wamp\www"
ServerName 192.168.111.1:443
ServerAdmin me@localhost
ErrorLog "D:/wamp/bin/apache/Apache2.2.11/logs/error.log"
TransferLog "D:/wamp/bin/apache/Apache2.2.11/logs/access.log"
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "D:/wamp/bin/apache/Apache2.2.11/bin/server.crt"
SSLCertificateKeyFile "D:/wamp/bin/apache/Apache2.2.11/bin/server.key"
SSLCertificateChainFile "D:/wamp/bin/apache/Apache2.2.11/bin/root.key"
SSLCACertificateFile "D:/wamp/bin/apache/Apache2.2.11/bin/root.crt"
SSLVerifyClient require
SSLVerifyDepth 10
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "D:/wamp/bin/apache/Apache2.2.11/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "D:/wamp/bin/apache/Apache2.2.11/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
以上主要注意
a.路径问题
b.ServerName 这个要注意,一定是本机地址或域名,另外在命令行时,也要多次用到
c.如果是单向认证,34行的值修改成 none 同时把所有 client 字样的行注释掉即可(用#)
8.根证书用 root 表示 , 服务端证书 server , 客户端证书 client
9.openssl.cnf 内容(去除注释后)(只贴出有可能修改过的地方)
dir = ./ca # Where everything is kept
certs = $dir/certs # Where the issued certs are kept
crl_dir = $dir/crl # Where the issued crl are kept
database = $dir/index.txt # database index file.
# several ctificates with same subject.
new_certs_dir = $dir/newcerts # default place for new certs.
certificate = $dir/cacert.pem # The CA certificate
serial = $dir/serial # The current serial number
crlnumber = $dir/crlnumber # the current crl number
# must be commented out to leave a V1 CRL
crl = $dir/crl.pem # The current CRL
private_key = $dir/private/cakey.pem# The private key
RANDFILE = $dir/private/.rand # private random number file
以上要建立几个目录,bin/ca/, bin/ca/newcerts/,bin/ca/private/ 也不知道是否都用上了,反正有这些足够了.
还要建立几个文件
a. bin/ca/index.txt 一个0字节的空文件
b.bin/ca/serial (注意 无后缀),内容写 2个(0-9,A-F)的字符即可,随意.
10.下面说操作了,
进入命令行,进入 D:\wamp\bin\apache\Apache2.2.11\bin 这个目录,反正我是在这里操作的.
set OPENSSL_CONF=../conf/openssl.cnf 这是指明配置文件的
openssl genrsa >root.key 生成根密钥(未加保护密码)(openssl genrsa -des3 -out root.key 1024 这个是加保护密码的命令) 我以下都没加保护密码
openssl genrsa >server.key 生成服务端密钥
openssl genrsa >client.key 生成客户端密钥
openssl req -x509 -new -key root.key >root.crt 生成自签名的根证书 (CRT即PEM格式)
openssl req -new -key server.key -out server.csr 生成服务端签名请求文件CSR
openssl req -new -key client.key -out client.csr 生成客户端签名请求文件
以上如果要求输入一些信息,注意 domain 处,必须是本机域名或IP地址 ,我是写的 192.168.111.1 (我本机IP)
使用根证书为服务端及客户端签名
openssl ca -in server.csr -cert root.crt -keyfile root.key -out server.crt
openssl ca -in client.csr -cert root.crt -keyfile root.key -out client.crt
客户端证书转换成PFX格式
openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx
把root.crt client.pfx 复制到客户机(随便哪台电脑了)
双击导入 ( root 导入到 可信任的根证书签发机构,client导入到个人/您的证书)
重启服务器Apache OVER
以上可能有所遗漏,可参考我的前几篇博客,那些是我参考过的文章.
如果实在不行,QQ我:31008088
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.5pt; mso-bidi-font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi; mso-font-kerning:1.0pt;}
<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(451) | 评论(0) | 转发(0) |
上一篇:[转]Linux Apache Https 配置
下一篇:JS 文件上传 前端验证 后缀及大小
- IP Sec VPN与NAT破镜重圆
- 网站导航
- UT2.0正式版下载
- tomcat6.0配置(含配置视频下载...
- Gomez中国网站用户体验排行榜(...
- LNMP 老是会出现502?
- suse 运用一个shell获取本机和...
- 虚拟机 unix 配置ip
- hp-un 主机新系统读不到磁盘阵...
- mysql出现问题:Starting MySQ...
Wamp apache 配置 Https 双向 认证 全过程相关推荐
- soapui 证书_配置https双向认证,以及用soapui调试
maxThreads="150" scheme="https" secure="true" clientAuth="false&q ...
- nginx 配置 https双向认证
参考文章: https://blog.csdn.net/xiangguiwang/article/details/76400805 https://blog.csdn.net/qq_37049781/ ...
- Android本地服务器NanoHttpd配置Https双向认证
一. 了解数字证书 在HTTPS的传输过程中,有一个非常关键的角色--数字证书,那什么是数字证书?又有什么作用呢? 所谓数字证书,是一种用于电脑的身份识别机制.由数字证书颁发机构(CA)对使用私钥创建 ...
- HTTPS双向认证配置
最近看了下HTTPS相关的,概念性的东西各位就去查查资料吧.主要找到两篇比较靠谱的文章,收藏下. xiooa面复制自https://my.oschina.net/jjface/blog/339144 ...
- Nginx配置ssl双向认证
最近公司项目需要配置双向认证,使用的是阿里云Linux服务器以及nginx,对应的ssl证书也使用的是阿里云的免费证书.特此记录配置流程. CA与自签名 # 制作CA私钥 openssl genrsa ...
- Apache httpd设置HTTPS双向认证
一.环境 httpd: 2.4.4 openssl:1.0.1 os:ubuntu 12.04 LTS 二.场景 我准备在httpd上配置一个HTTPS双向认证,既向客户端表明自己的身份,也只允许 ...
- tomcat实现https双向认证配置
Tomcat实现https双向认证配置 1.生成证书库 2.jks转p12 3.证书库导出cer文件 4.证书库生成证书请求 5.对证书请求进行签名 6.例子 6.1创建证书库 6.2导出根证书 6. ...
- Https双向认证Android客户端配置
Https双向认证啊 做了两遍,第一遍懵懂状态处于 好不容易做好了,换服务器,一下子懵了,使出浑身解数又找了一遍,这下终于好了 快哭啦,必须滴要记录一下,以免以后遇到继续懵,这里用retrofit ...
- httpd设置HTTPS双向认证
去年用tomcat.jboss配置过HTTPS双向认证,那时候主要用的是JDK自带的keytool工具.这次是用httpd + openssl,区别比较大 在网上搜索了很多文章,发现全面介绍的不多,或 ...
最新文章
- python调用spark和调用hive_Spark(Hive) SQL数据类型使用详解(Python)
- 跨平台SSE、AVX指令测试
- xxl-job使用实例
- MQTT 轻量版实例发布,满足更多移动互联场景
- [PowerShell]人人都值得学一点PowerShell实现自动化(2)有哪些可用的场景及方式?
- linux救援模式下卸载根目录,删除Linux的依赖库并进入救援模式恢复
- Python中raise用法
- Windows Phone 7(WP7)开发 获取网络状态
- android应用程序在哪找,找不到应用程序的错误android
- 八皇后问题(Queen8)思路分析+源码
- EI会议论文的格式要求
- (3)数据链数层——计算机网络复习笔记
- 小米5x android auto,小米 5s Plus重生——伪装Pixel XL
- 云计算笔记---day3
- 2017cad光标大小怎么调_cad十字光标怎么调大-调整cad十字光标大小的方法 - 河东软件园...
- openoffice java awt_使用openoffice转pdf,详细
- vmware磁盘已成功扩展,从操作系统内部对磁盘进行重新分区
- 微信小程序 image图片组件实现宽度固定 高度自适应
- Mahout学习总结
- pytorch实现 chatbot聊天机器人
热门文章
- 【Python面向对象进阶④】——定制类
- 崴泥篇——Thymeleaf 报错:ERROR 8592 org.thymeleaf.TemplateEngine
- android editview获取焦点,Android EditText 获取不到焦点
- bizCharts使用小笔记
- GBase 8c数据库安全审计
- 高通平台TP常见问题
- 设计模式:(组合模式)
- Sigmoid,tanh,Relu,Leaky ReLu,ELU,GeLu 激活函数理解
- 计算机毕业设计Python+uniapp+安卓动漫壁纸App(WEB+APP+LW)
- 计算机网络——ARQ协议