您的位置:首页 > 理论基础 > 计算机网络

centos下使用nginx搭建https服务器

2016-12-05 17:25 507 查看
HTTPS简介HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单来讲就是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。它是一个URI scheme(抽象标识符体系),句法类同http:体系,用于安全的http数据传输。https使用的默认端口是443.SSL证书证书类型简介要设置安全服务器,使用公共钥创建一对公私钥对。大多数情况下,发送证书请求(包括自己的公钥),你的公司证明材料以及费用到一个证书颁发机构(CA).CA验证证书请求及您的身份,然后将证书返回给您的安全服务器。但是内网实现一个服务器端和客户端传输内容的加密,可以自己给自己颁发证书,只需要忽略掉浏览器不信任的警报即可!由CA签署的证书为您的服务器提供两个重要的功能:浏览器会自动识别证书并且在不提示用户的情况下允许创建一个安全连接当一个CA生成一个签署过的证书,它为提供网页给浏览器的组织提供身份担保。多数支持ssl的web服务器都有一个CA列表,它们的证书会被自动接受。当一个浏览器遇到一个其授权CA并不在列表中的证书,浏览器将询问用户是否接受或拒绝连接
cd到目录
#cd /usr/local/nginx/conf
创建服务器私钥
#openssl genrsa -des3 -out server.key 1024
签名请求的证书
#openssl req -new -key server.key -out server.csr
注意此步骤过程中需要填写一系列的东西(公司名称、所在地等按照实际情况填)
尤其注意 your server' hostname的填写,如果没有域名就直接填ip,如果有域名就填域名(都不需要端口号)
例如:
直接填ip:  192.168.10.223
域名: www.test.com
模糊域名:  * .test.com
具体步骤如下,谨做参考:
具体说明参考下面:
生成证书 在服务器的命令行下进行如下操作 ①生成服务端的私钥,需要输入一个4~8191位的密码
openssl genrsa -des3 -out server.key 2048
11②去除key文件的密码,这里需要输入①中填写的密码
openssl rsa -in server.key -out server.key
11③生成csr文件,这一步要求输入多种信息,可以全部按回车跳过
openssl req -new -key server.key -out server.csr
11④生成crt文件,这一步中的-days后为有效期,可以写长一点
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
11⑤合并crt与key制作pem,用于后面生成cer以供客户端验证
cat server.crt server.key > server.pem
11⑥用pem生成cer,cer文件存放在客户端用于验证
openssl x509 -in server.pem -outform der -out server.cer
制作解密后的私钥#openssl rsa -in server.key -out server_nopwd.key#openssl x509 -req -days 3650 -in server.csr -signkey server_nopwd.key -out server.crt
拷贝证书文件
# cp /usr/local/nginx/conf/server.crt /usr/local/nginx/html/
配置confserver { listen 443;ssl on;ssl_certificate /usr/local/nginx/conf/server.crt;ssl_certificate_key /usr/local/nginx/conf/server_nopwd.key;}

http强制跳转到https并开启http2

server{listen 443 ssl http2;server_name  www.test.com;ssl_certificate /usr/local/nginx/conf/server.crt;ssl_certificate_key /usr/local/nginx/conf/server_nopwd.key;index index.html index.htm index.php default.html default.htm default.php;root /home/wwwroot/cmsky.com;include other.conf;#error_page 404 /404.html;include enable-php.conf;location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;}location ~ .*\.(js|css)?${expires 12h;}location ~ /\.{deny all;}access_log off;}server {listen 81;server_name cmsky.com;return 301 https://192.168.10.223$request_uri; }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: