Nginx搭建https服務(wù)器教程
HTTPS簡介
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),是以安全為目標的HTTP通道,簡單來講就是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細內(nèi)容就需要SSL。
它是一個URI scheme(抽象標識符體系),句法類同http:體系,用于安全的http數(shù)據(jù)傳輸。https使用的默認端口是443.
SSL證書
證書類型簡介
要設(shè)置安全服務(wù)器,使用公共鑰創(chuàng)建一對公私鑰對。大多數(shù)情況下,發(fā)送證書請求(包括自己的公鑰),你的公司證明材料以及費用到一個證書頒發(fā)機構(gòu)(CA).CA驗證證書請求及您的身份,然后將證書返回給您的安全服務(wù)器。
但是內(nèi)網(wǎng)實現(xiàn)一個服務(wù)器端和客戶端傳輸內(nèi)容的加密,可以自己給自己頒發(fā)證書,只需要忽略掉瀏覽器不信任的警報即可!
由CA簽署的證書為您的服務(wù)器提供兩個重要的功能:
- 瀏覽器會自動識別證書并且在不提示用戶的情況下允許創(chuàng)建一個安全連接
- 當一個CA生成一個簽署過的證書,它為提供網(wǎng)頁給瀏覽器的組織提供身份擔保。
- 多數(shù)支持ssl的web服務(wù)器都有一個CA列表,它們的證書會被自動接受。當一個瀏覽器遇到一個其授權(quán)CA并不在列表中的證書,瀏覽器將詢問用戶是否接受或拒絕連接
生成SSL證書
openssl genrsa -des3 -out wangzhengyi.key 2048

openssl req -new -key wangzhengyi.key -out wangzhengyi.csr

創(chuàng)建一個自己簽署的CA證書
openssl req -new -x509 -days 3650 -key wangzhengyi_nopass.key -out wangzhengyi.crt

搭建https虛擬主機
虛擬主機配置文件
upstream sslfpm {
server 127.0.0.1:9000 weight=10 max_fails=3 fail_timeout=20s;
}
server {
listen 192.168.1.*:443;
server_name 192.168.1.*;
#為一個server開啟ssl支持
ssl on;
#為虛擬主機指定pem格式的證書文件
ssl_certificate /home/wangzhengyi/ssl/wangzhengyi.crt;
#為虛擬主機指定私鑰文件
ssl_certificate_key /home/wangzhengyi/ssl/wangzhengyi_nopass.key;
#客戶端能夠重復使用存儲在緩存中的會話參數(shù)時間
ssl_session_timeout 5m;
#指定使用的ssl協(xié)議
ssl_protocols SSLv3 TLSv1;
#指定許可的密碼描述
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
#SSLv3和TLSv1協(xié)議的服務(wù)器密碼需求優(yōu)先級高于客戶端密碼
ssl_prefer_server_ciphers on;
location / {
root /home/wangzhengyi/ssl/;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
error_page 404 /404.html;
location = /50x.html {
root /usr/share/nginx/www;
}
location = /404.html {
root /usr/share/nginx/www;
}
# proxy the PHP scripts to fpm
location ~ \.php$ {
access_log /var/log/nginx/ssl/ssl.access.log main;
error_log /var/log/nginx/ssl/ssl.error.log;
root /home/wangzhengyi/ssl/;
fastcgi_param HTTPS on;
include /etc/nginx/fastcgi_params;
fastcgi_pass sslfpm;
}
}
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Nginx Rewrite規(guī)則與使用介紹和技巧實例
這篇文章主要介紹了Nginx Rewrite規(guī)則與使用介紹和技巧實例,本文講解了正則表達式匹配、文件及目錄匹配、flag標記、Nginx Rewrite相關(guān)指令等內(nèi)容,需要的朋友可以參考下2015-01-01
Apache和Nginx的優(yōu)缺點詳解_動力節(jié)點Java學院整理
Nginx和Apache一樣,都是HTTP服務(wù)器軟件,在功能實現(xiàn)上都采用模塊化結(jié)構(gòu)設(shè)計,都支持通用的語言接口。下面通過本文給大家分享Apache和Nginx比較 功能對比,感興趣的朋友參考下吧2017-08-08

