学习笔记:在本地搭建SSL开发环境

2017-03-16  本文已影响337人  大爽兔

备注:本配置针对Mac用户。。。
在本地搭建SSL环境的基本思路就是:
本地用nginx反向代理下,然后把证书挂在nginx上。
安装Nginx及配置
首先安装Nginx:
brew install nginx
Ngnix基本命令可以使用 nginx -h
查看。常用的有:
nginx -s stop # 快速关闭nginx -s quit # 关闭nginx -s reload # 重新加载配置文件nginx -s reopen # 重新打开log
安装nginx后,nginx服务默认已经启动。一般nginx会在如下位置:
/usr/local/etc/nginx/nginx.conf
打开,编辑。修改http下面的server项,将root修改为绝对路径/www/,并修改监听的端口号。
server { listen 8080; server_name localhost; root /www/; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; }
修改了nginx.conf配置文件后,需要重启nginx:
sudo nginx -s reload
当在/www/目录下添加index.html文件,打开 http://127.0.0.1:8080即可浏览。
证书及https配置
1)进入希望生成证书和密钥的目录,这里选择ngnix.conf所在的目录:
cd /usr/local/etc/nginx
2)创建服务器私钥:
openssl genrsa -des3 -out server.key 1024
第一次执行openssl可能会报如下错误:
nginx: [error] open() "/usr/local/var/run/nginx.pid" failed (2: No such file or directory)
这时因为有一个 ~/.rnd
文件是OpenSSL需要写入的,但是目前当前用户对这个文件没有写入权限。所以需要执行:
sudo chown [username] ~/.rnd
3)创建签名请求的证书(CSR):
openssl req -new -key server.key -out server.csrcp server.key server.key.org
按提示填入相关证书信息即可。
4)在加载SSL支持的Nginx并使用上述私钥时除去必须的口令:
openssl rsa -in server.key.org -out server.key
5)最后标记证书使用上述私钥和CSR:
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
6)然后修改nginx.conf文件中的HTTPS server的部分:

HTTPS serverserver { listen 443 ssl; server_name localhost; ssl_certificate server.crt; ssl_certificate_key server.key; location / { root /www/; index index.html index.htm; }}

7)重启nginx:
sudo nginx -s reload



由于Chrome安全限制,非认证证书被当做不安全处理。所以可以为Chrome添加启动参数 --ignore-certificate-errors
即可。

上一篇 下一篇

猜你喜欢

热点阅读