Nginx搭建https服務(wù)器教程
HTTPS簡介
HTTPS(Hypertext Transfer Protocol over Secure Socket Layer),是以安全為目標(biāo)的HTTP通道,簡單來講就是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL。
它是一個URI scheme(抽象標(biāo)識符體系),句法類同http:體系,用于安全的http數(shù)據(jù)傳輸。https使用的默認(rèn)端口是443.
SSL證書
證書類型簡介
要設(shè)置安全服務(wù)器,使用公共鑰創(chuàng)建一對公私鑰對。大多數(shù)情況下,發(fā)送證書請求(包括自己的公鑰),你的公司證明材料以及費(fèi)用到一個證書頒發(fā)機(jī)構(gòu)(CA).CA驗(yàn)證證書請求及您的身份,然后將證書返回給您的安全服務(wù)器。
但是內(nèi)網(wǎng)實(shí)現(xiàn)一個服務(wù)器端和客戶端傳輸內(nèi)容的加密,可以自己給自己頒發(fā)證書,只需要忽略掉瀏覽器不信任的警報(bào)即可!
由CA簽署的證書為您的服務(wù)器提供兩個重要的功能:
- 瀏覽器會自動識別證書并且在不提示用戶的情況下允許創(chuàng)建一個安全連接
- 當(dāng)一個CA生成一個簽署過的證書,它為提供網(wǎng)頁給瀏覽器的組織提供身份擔(dān)保。
- 多數(shù)支持ssl的web服務(wù)器都有一個CA列表,它們的證書會被自動接受。當(dāng)一個瀏覽器遇到一個其授權(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虛擬主機(jī)
虛擬主機(jī)配置文件
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;
#為虛擬主機(jī)指定pem格式的證書文件
ssl_certificate /home/wangzhengyi/ssl/wangzhengyi.crt;
#為虛擬主機(jī)指定私鑰文件
ssl_certificate_key /home/wangzhengyi/ssl/wangzhengyi_nopass.key;
#客戶端能夠重復(fù)使用存儲在緩存中的會話參數(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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Nginx+Tomcat群集的實(shí)現(xiàn)示例
這篇文章主要介紹了Nginx+Tomcat群集的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07
nginx代理postgresql的實(shí)現(xiàn)示例
本文主要介紹了nginx代理postgresql的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-10-10
詳解Nginx服務(wù)器的配置中開啟文件Gzip壓縮的方法
這篇文章主要介紹了Nginx服務(wù)器的配置中開啟文件Gzip壓縮的方法,可以對CSS和JavaScript以及各種圖片等web傳輸?shù)奈募M(jìn)行壓縮,需要的朋友可以參考下2016-01-01
Nginx?error_page自定義錯誤頁面設(shè)置過程
這篇文章主要介紹了Nginx?error_page自定義錯誤頁面設(shè)置過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
Nginx使用的php-fpm的兩種進(jìn)程管理方式及優(yōu)化
這篇文章主要介紹了Nginx使用的php-fpm的兩種進(jìn)程管理方式及優(yōu)化,需要的朋友可以參考下2016-09-09

