Linux下SSL证书申请
申请前的准备 申请SSL证书需要安装openssl(下载链接我就不给了)创建根证书密匙文件:openssl genrsa -des3 -out ca.key 2048 (会让你输入密码,按照提示输入就行了) openssl req -in ca.key -out ca.key (去除密码,要不然每次重启服务器都要输入一次密码) openssl req -new -key ca.key -out ca.csr (创建根证书的申请文件ca.csr),以下是申请csr需要填写的内容 Country Name (2 letter code) [AU]:CN [国家代号,中国CN] State or Province Name (full name) [Some-State]:ZheJiang [省的拼音,全拼] Locality Name (eg, city) []:HangZhou [市级地名,全拼] Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mycode Corp. [公司英文名] Organizational Unit Name (eg, section) []: [选填] Common Name (e.g. server FQDN or YOUR name) []:mzshe.cn [填你网站域名就行了] Email Address []:master@mzshe.cn [你的电子邮箱。可以不填] Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:[选填] An optional company name []:[选填] openssl x509 -req -days 730 -sha256 -in ca.csr -signkey ca.key -out server.crt (创建一个为期2年的服务器证书,但是只能用于测试) openssl x509 -req -days 730 -sha256 -in ca.csr -signkey ca.key -extensions ext -extfile ssl.ini -out server.crt(多域名申请,新建一个配置文件ssl.ini) vi ssl.ini (填入一下内容) [ext] subjectAltName = @dns [dns] DNS.1 = mzshe.cn DNS.2 = *.mzshe.cn
Nginx开启HTTPS配置
Nginx HTTPS的配置:
将申请的SSL证书放置到/etc/nginx/ssl目录里面 (其实放到哪都随意啦)
然后找到nginx的配置文件,一般是在Nginx安装目录下 (/usr/local/nginx/conf/nginx.conf)这是我的配置文件路径了(雾) 打开配置文件 vi nginx.conf
由于HTTPS是443端口所以要将默认的80端口改成443端口
以下是服务器配置代码:
server{
listen 443; #端口设置
root html; #web根目录
server_name blog.mzshe.cn; #网站地址
ssl on; #开启SSL证书验证
ssl_certificate /ect/nginx/ssl/server.crt; #服务器端证书目录
ssl_certificate_key /ect/nginx/ssl/server.key;
ssl_session_timeout 5m; #服务端ssl超时时间
location / {
root html;
index index.html;
}
}