linux自建https证书
一、生成单向认证的https证书
建立服务器私钥,生成RSA秘钥。
会有两次要求输入密码,
然后获得了一个server.key文件.
以后使用此文件(通过openssl提供的命令或API)可能经常回要求输入密码,如果想去除输入密码的步骤可以使用以下命令:
创建服务器证书的申请文件server.csr
Country Name填CN,Common Name填主机名也可以不填,如果不填浏览器会认为不安全,其他可以不填
填入密码
对于上面的秘钥进行ssl加密
使用上面的秘钥和CSR对正式进行签名
创建自当前日期起有效期为期十年的服务器证书server.crt:
这样证书就建好了。
~ 是 home目录的意思。
如果以超级用户root账号登陆:~ 是 /root目录
如果以普通用户name登陆:~是 /home/name目录
移动到home目录
打开你的nginx配置文件,搜索443找到https的配置,去掉这段代码的注释,按照自己路径进行更改:
把ssl on;这行去掉,ssl写在443端口后面。这样http和https的链接都可以用
location 照着之前的server写
将ssl_certificate改为server.crt的路径,将ssl_certificate_key改为server.key的路径.
nginx -s reload 重载配置 ,nginx的https就可以使用了,默认443端口.
如果出现报错信息:
nginx: [emerg] BIO_new_file("/user/local/nginx/temp/server.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/user/local/nginx/temp/server.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
把server.crt 和server.key 文件放在nginx/conf文件夹下。(和nginx.conf文件同一文件夹)
ssl_certificate server.crt;
ssl_certificate_key server.key;
修改域名,参考--本机如何访问vmware虚拟机中配置的域名
https://jingyan.baidu.com/article/2d5afd690d7f6d85a2e28ec6.html
成功
最新文章
- linux 文件系统结构及命令
- 彻底解决phpcms v9升级后,文章发布出现: Mysql 1267错误:MySQL Error : Illegal mix of collations 解决办法
- python多线程的用法之一
- Ubuntu 16.04播放器Rhythmbox乱码解决
- 有关big.LITTLE,你需要知道的十件事情
- 浅谈JS事件冒泡
- 剑指offer系列44---只出现一次 的数字
- 转——Android应用开发性能优化完全分析
- (转载)ETL利器Kettle实战应用解析系列一【Kettle使用介绍】
- Spring @RequestHeader用法
- Java的内存管理与内存泄露
- MVC学习四
- 免费自学Cocos2d-x3.0final2014原创视频教程(56集)(适用于Cocos2d-x3.1 Cocos2d-x3.2版本号全)
- BZOJ 1196 [HNOI2006]公路修建问题(二分答案+并查集)
- Java数据库连接错误集
- easyui1.2.6 validate输入框验证在火狐下的一个bug
- 最短路问题之Dijkstra算法
- C#中 将图片保存到Sql server 中
- HTML词法和语法
- 小程序——如何引入外部js