windows下apache配置ssl(https)服务器
SSl是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全, 可以通过apache自带的openssl进行配置:
步骤如下:
1.安装有openssl模板的apache,大多数都会有,判断有没有 只需要查看 apache\bin 下有没有 openssl.exe 运行程序;
2.配置 apache/conf/httpd.conf 文件,如下:
#LoadModule ssl_module modules/mod_ssl.so
#Include conf/extra/httpd-ssl.conf
去除这两行前的#
3.配置 apache/conf/extra/httpd-ssl.conf 文件,如下:
SSLCertificateFile "conf/ssl.crt/server.crt" (服务器证书的位置)
SSLCertificateKeyFile "conf/ssl.key/server.key" (服务器私钥的位置)
#SSLCACertificateFile "c:/Apache24/conf/ssl.crt/ca-bundle.crt" (CA根证书的位置,进行客户端验证时需要)
#SSLVerifyClient require (去掉前面的‘#’号,进行客户端验证时需要)
#SSLVerifyDepth 10 (去掉前面的‘#’号,把10改为1,进行客户端验证时需要)
4.生成服务器的私钥
打开cmd命令行 进入apache/bin目录 执行 openssl genrsa -out server.key 1024 命令 在当前bin目录下生成一个 server.key 私钥文件
5.生成签署申请
在当前目录命令行下继续执行 openssl req -new -out server.csr -key server.key -config ..\conf\openssl.cnf 命令 在当前bin目录下生成一个 server.csr 签署文件
该过程将填入签署文件信息 如国家 省份 城市地区 机构组织等 值得注意的一点是:Common Name 信息必须要和是网站域名或是IP地址与httpd.conf中的serverName一致。
6.生成CA私匙文件
在当前目录命令行下继续执行 openssl genrsa -out ca.key 1024 命令 在当前bin目录下生成一个 ca.key 私钥文件
7.利用CA的私钥产生CA的自签署证书
在当前目录命令行下继续执行 openssl req -new -x509 -days 365 -key ca.key -out ca.crt -config ..\conf\openssl.cnf 命令 在当前bin目录下生成一个 ca.crt 自签署证书
该过程将填入签署文件信息 如国家 省份 城市地区 机构组织等 值得注意的一点是:Common Name 信息必须要和是网站域名或是IP地址与httpd.conf中的serverName一致。(与步骤5一致)
8.CA为网站服务器签署证书
在当前目录命令行下继续执行openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ..\conf\openssl.cnf 命令 在当前bin目录下生成一个 server.crt 签署证书文件
这里执行命令时会报错,解决方法在当前文件夹下(bin目录)创建 demoCA 文件夹, 在其中创建2个文件和1个文件夹: index.txt 空文件 内容为01的无后缀名serial文件 和 newcert文件夹 即可,重新运行命令便不会有错了
9.移动文件
将生成的 server.crt,server.key,ca.crt 文件复制到 步骤3中所配置的文件夹中
10.配置httpd.conf和httpd-ssl.conf文件中的ServerName的访问域名 或 IP地址, 重启apache服务
11.打开IE,输入https://域名或IP地址:443的时候会弹出一个验证证书的地方点击取消发现没能成功,原来还要生成一个 .pfx 的证书并导入到IE中去。
在当前目录命令行下继续执行 openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.pfx 在bin下面生成一个ca.pfx的文件,中间有个输入密码的过程,要记住这个密码。打开IE浏览器-》工具-》Internet选项-》内容-》证书,按照提示导入,这里要输入刚才生成 .pfx 过程中输入的密码。
以上内容借鉴 http://blog.csdn.net/decajes/article/details/41706739
http://www.jb51.net/article/23971.htm
本人菜鸟 有些地方不对请大神指出!
windows下apache配置ssl(https)服务器的更多相关文章
- windows下Apache配置SSL安全连接
什么是SSL? SSL(Secure Socket Layer): 是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全.Open SSL下载地址:http://www ...
- windows 下nginx配置ssl https支持
本文适合正式上线的配置,购买来的证书 私钥*.key文件需要先去掉密码 openssl rsa -in old.key -out new.key
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- Windows下Apache添加SSL模块
参考资料:http://www.yuansir-web.com/2011/05/12/hello-world/测试环境:windows2003 32位 + Apache2.4 + PHP5.4 一.准 ...
- phpstudy集成下Apache配置部署https安全证书
一..先申请到安全证书.(腾讯云或者阿里云申请免费1年的安全证书),怎么申请这里也说下(以腾讯云为例): 1.登录腾讯云QQ或微信登录都行,第一次登录要通过实名认证,点击[产品]---[ss证书l] ...
- Windows下nginx配置多台服务器做负载均衡
Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务. Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3 ...
- 8-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(Apache 配置SSL,HTTPS连接)
https://www.cnblogs.com/yangfengwu/p/10947423.html 和当时配置MQTT差不多,去下载证书文件 https://www.cnblogs.com/ya ...
- windows下apache利用SSL来配置https
第一步打开httpd.conf文件找到以下两个变量把注释去掉. #LoadModule ssl_module modules/mod_ssl.so (去掉前面的#号) #Include conf/ex ...
- windows下apache配置https
1.下载带有openSSL的apache安装包,我下载的为apache_2.2.11-win32-x86-openssl-0.9.8i.msi,安装后确认一下bin路径下的openssl.exe,ss ...
随机推荐
- 保留n位四舍五入小数
一:可选择保留位数,注释很解释的很详细,上图 二:全部代码 using System; using System.Collections.Generic; using System.Component ...
- JavaScript引擎研究与C、C++与互调用(转)
本文转自:ice6015的专栏.为什么有些招聘需要熟悉JS和C++,这或许就是原因. 1. 概要 JavaScript是一种广泛用于Web客户端开发的脚本语言,常用来控制浏览器的DOM树,给HTML ...
- voronoi
- SRM 402(1-250pt, 1-500pt)
DIV1 250pt 题意:对于任意一个由1-n组成的数列,其原始顺序为1,2,3..n.给出1~n的一个排列a[n],要通过swp操作将其变回原始顺序.当i < j且a[i] > a[j ...
- hdu 4322 最大费用流
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4322 #include <cstdio> #include <cstring> ...
- Jenkins 十: 访问控制
1. 打开“系统管理” –> “Configure Global Security”. 2. 选中“启用安全”. 3. 找到“安全域”,选中“Jenkins专有数据库”,选中“允许用户注册”. ...
- 调查:Java程序员最亲睐的Web框架
这是关于Java的第二个调查,第一个调查请点这里查看. 这一次,我们要讨论的是web框架. 只有少数几种语言像Java一样提供了各种各样的web框架,上面的统计图就是一个证据.下面是其他开发者所使用w ...
- ios-简单算法
#import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...
- ionic之应用首次启动引导页
用户首次启动app先进入引导页,localstroge记录状态,下次启动应用不再显示引导页. HTML: <html> <head> <meta charset=&quo ...
- 用于A*的 二叉堆 AS3实现
package com.copper.isometric.pathing { import flash.sampler.startSampling; /** * ...