下载openssl并安装,下载地址:http://slproweb.com/products/Win32OpenSSL.html

假设安装路径为C:\"Program Files"\OpenSSL-Win64\bin\openssl.exe

如果没有加入系统环境变量,下面的命令里的openssl要换成安装路径的值

一、生成秘钥

openssl genrsa 1024 > server.key

这是用128位rsa算法生成密钥,得到server.key文件 > 是输出文件的标识符

二、生成未签署的server.csr

openssl req -new -key server.key > server.csr

这是用步骤1的密钥生成证书请求文件server.csr, 这一步会有很多参数,需要一一输入

Country Name (2 letter code) [AU]:CN ISO国家代码(只支持两位字符)
State or Province Name (full name) [Some-State]:ZJ所在省份
Locality Name (eg, city) []:HZ所在城市
Organization Name (eg, company):SW_TECH公司名称
Organizational Unit Name (eg, section) []:SW_TECH组织名称
Common Name (eg, YOUR name) []:kedou.com申请证书的域名
Email Address []:admin@admin.com 管理员邮箱
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: 交换密钥
An optional company name []:  注:Common Name必须和httpd.conf中server name必须一致,否则apache不能启动 (启动apache时错误提示为:RSA server certificate CommonName (CN) `Kedou' does NOT match server name!? )

四、签署服务器证书文件server.crt
openssl req -x509 -days 365 -key server.key -in server.csr > server.crt 
说明:这是用步骤1,2的的密钥和证书请求生成证书server.crt,-days参数指明证书有效期,单位为天,x509表示生成的为X.509证书。

五、这一步可选,配置apache的httpd.conf.
在conf目录下的httpd_ssl.conf文件是关于ssl的配置,是httpd.conf的一部分,在 httpd.conf中找到给文件的引用,移除对应的注释
Include conf/extra/httpd-ssl.conf
LoadModule ssl_module modules/mod_ssl.so

修改httpd-ssl.conf文件 并配置
SSLCertificateFile "D:/phpStudy/Apache/conf/ssl/server.crt" (具体的服务器地址)
SSLCertificateKeyFile "D:/phpStudy/Apache/conf/ssl/server.key" (具体的服务器地址)
CustomLog "D:/PHPStudy/Apache/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

配置
<VirtualHost _default_:443>

# General setup for the virtual host
DocumentRoot "D:/PHPStudy/WWW/" (域名带访问的目录)
ServerName www.rgweb.com:443 (域名)
ServerAdmin admin@admin.com (管理员邮箱)
ErrorLog "D:/PHPStudy/Apache/logs/ssl_error.log.txt" (写入日志)
TransferLog "D:/PHPStudy/Apache/logs/ssl_trans_error.log.txt" (写入日志)

至此重启apache 
浏览器输入 https 加你配置的域名

注:错误:WARNING: can't open config file: /apache24/conf/openssl.cnf

解决:将openssl_conf 放入环境变量  set openssl_conf=../conf/openssl.cnf

错 :Unable to write ‘random state

解决:是因为没有用管理员进入cmd,使用管理员身份进入cmd 就解决了

六、用flask等程序的话直接调用生成证书即可

flask使用证书,如果报ssl错误,需注意证书在代码里的位置是否有调换,

'server.crt','server.key'这两个证书出现在代码里的位置不可以调换
app.run('0.0.0.0', debug=True, port=5000, ssl_context=('server.crt','server.key'))

windows配置openssl的更多相关文章

  1. Windows下openssl的下载安装和使用

    Windows下openssl的下载安装和使用 安装openssl有两种方式,第一种直接下载安装包,装上就可运行:第二种可以自己下载源码,自己编译.下面对两种方式均进行详细描述. 一.下载和安装ope ...

  2. windows配置nginx实现负载均衡集群

    windows配置nginx实现负载均衡集群2014-08-20 09:44:40   来源:www.abcde.cn   评论:0 点击:617 网上大部分关于nginx负载均衡集群的教程都是lin ...

  3. Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行

    遇到这个问题是用辅助工具(WinNTSetup3.exe)进行的安装,重启后就就遇到“Windows 安装程序无法将 Windows 配置为在此计算机的硬件上运行” 解决:在WIN PE 下挂载安装光 ...

  4. windows安装程序无法将windows配置为在此计算机的硬件上运行

    关于装windows系统时,出现一些安装中断的处理 该方法适用于 windows安装程序无法将windows配置为在此计算机的硬件上运行 计算机意外地重新启动或遇到错误. Windows 安装无法继续 ...

  5. 【NO.3-1】Jmeter - 在Windows配置HOSTS的方法

    在Windows配置HOSTS 那么还记得Windows如何修改HOSTS文件吗? (1) 进入到C:\Windows\System32\drivers\etc (2) 通过”记事本”来打开hosts ...

  6. windows配置nginx实现负载均衡集群 -请求分流

    windows配置nginx实现负载均衡集群 一.windows上安装nginx 1.下载nginx的windows版本http://nginx.org/en/download.html 2.把压缩文 ...

  7. FAT16/32不等于ESP:windows安装程序无法将windows配置为在此计算机的硬件上运行

    今天给公司电脑装系统,由于公司特殊需要,要给新电脑装win7系统.三台完全一样的华硕adol笔记本,前两台都和win10并存装成了双系统,第三台被不懂系统的人尝试装win7搞坏了,只能全盘格式化后再装 ...

  8. windows配置cider和clojure clj

    windows配置cider和clojure clj */--> pre.src {background-color: #292b2e; color: #b2b2b2;} windows配置ci ...

  9. windows配置Python多版本共存

    windows配置Python多版本共存 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近Python开发蛮火的,三年前我的一个运维朋友就告诉我说Python语言将来会很火,当时 ...

随机推荐

  1. Linux内存管理 (4)分配物理页面

    专题:Linux内存管理专题 关键词:分配掩码.伙伴系统.水位(watermark).空闲伙伴块合并. 我们知道Linux内存管理是以页为单位进行的,对内存的管理是通过伙伴系统进行. 从Linux内存 ...

  2. Google第三方网站登录(JavaScript SDK)

    官网:https://developers.google.com/identity/sign-in/web/ 一.创建应用 a.去谷歌控制台创建应用     网址:https://accounts.g ...

  3. git方法 GUI here

    注:stage changed是将所有修改归集到一次commit,如果要分开commit,则应该使用ctrl+t来一个一个文件的stage

  4. (转)JMeter学习逻辑控制器

    JMeter中的Logic Controller用于为Test Plan中的节点添加逻辑控制器. JMeter中的Logic Controller分为两类:一类用来控制Test Plan执行过程中节点 ...

  5. map遍历性能记录

    map遍历可以通过keySet或者entrySet方式. 性能上:entrySet略胜一筹,原因是keySet获取到key后再根据key去获取value,在查一遍,所以慢一些. keySet: //先 ...

  6. UIAutomator简介

    简介 Android 4.3发布的时候包含了一种新的测试工具–uiautomator,uiautomator是用来做UI测试的.也就是普通的手工测试,点击每个控件元素 看看输出的结果是否符合预期.比如 ...

  7. luogu P1613 跑路

    一开始看这道题时,发现是最短路,可是搜的又是倍增的题无可分说这是倍增+最短路 但是Dijkstra,SPFA我又不熟,可是看了数据范围心中萌生一种用Floyd做的方法 不扯了 先设一个三维bool数组 ...

  8. 【XSY3147】子集计数 DFT 组合数学

    题目大意 给定一个集合 \(\{1,2,\ldots,n\}\),要求你从中选出 \(m\) 个数,且这 \(m\) 个数的和是 \(k\).问方案数 \(\bmod 998244353\) \(0\ ...

  9. webpack学习记录-初步体验(一)

    一.关于webpack 自从出现模块化以后,大家可以将原本一坨代码分离到个个模块中,但是由此引发了一个问题.每个 JS 文件都需要从服务器去拿,由此会导致加载速度变慢.Webpack 最主要的目的就是 ...

  10. MySQL安装-二进制软件包安装

    MySQL 双版本安装 安装mysql AB (RPM)    -mysql官方的RPM包  安装MySQL 5.6.19版本 安装之前需要将系统自带的关于mysql软件全部卸载掉 rpm -e (加 ...