这里说下Linux 系统怎么经过openssl命令生成 证书。php
首先执行以下命令生成一个key
openssl genrsa -des3 -out ssl.key 1024
而后他会要求你输入这个key文件的密码。不推荐输入。由于之后要给nginx使用。每次reload nginx配置时候都要你验证这个PAM密码的。
因为生成时候必须输入密码。你能够输入后 再删掉。nginx
mv ssl.key xxx.key
openssl rsa -in xxx.key -out ssl.key
rm xxx.key
而后根据这个key文件生成证书请求文件
openssl req -new -key ssl.key -out ssl.csr
以上命令生成时候要填不少东西 一个个看着写吧(能够随便,毕竟这是本身生成的证书)session
最后根据这2个文件生成crt证书文件
openssl x509 -req -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt
这里365是证书有效期 推荐3650哈哈。这个你们随意。最后使用到的文件是key和crt文件。spa
若是须要用pfx 能够用如下命令生成 openssl pkcs12 -export -inkey ssl.key -in ssl.crt -out ssl.pfx 在须要使用证书的nginx配置文件的server节点里加入如下配置就能够了。
server {
listen 443;
server_name bbs.nau.edu.cn;code
if ($uri !~ "/logging.php$") {
rewrite ^/(.)$ http://$host/$1 redirect;
}
ssl on;
ssl_certificate /home/ssl.crt;
ssl_certificate_key /home/ssl.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;server
}
而后重启nginx就大功告成了
做者:朱立志连接:http://www.jianshu.com/p/1aa43b23b38d來源:简书著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。