LNMP架構(五)Nginx負載均衡 ssl

2021-08-11 08:47:41 字數 4093 閱讀 5615

十六 nginx負載均衡

yum install -y bind-utils

dig 命令,解析ip

vim /usr/local/nginx/conf/vhost/load.conf // 寫入如下內容

upstream qq_com

server

}

upstream來指定多個web server

reload後可以看到預設的html**。

十七 ssl原理

安全套接字(secure socket layer,ssl)協議是web瀏覽器與web伺服器之間安全交換資訊的協議,提供兩個基本的安全服務:鑑別與保密。

ssl協議的三個特性

① 保密:在握手協議中定義了會話金鑰後,所有的訊息都被加密。

② 鑑別:可選的客戶端認證,和強制的伺服器端認證。

③ 完整性:傳送的訊息包括訊息完整性檢查(使用mac)。

ssl的位置

ssl介於應用層和tcp層之間。應用層資料不再直接傳遞給傳輸層,而是傳遞給ssl層,ssl層對從應用層收到的資料進行加密,並增加自己的ssl頭。

ssl的工作原理

握手協議(handshake protocol)

記錄協議(record protocol)

警報協議(alert protocol)

瀏覽器傳送乙個https的請求給伺服器;

伺服器要有一套數字證書,可以自己製作,也可以向組織申請,區別就是自己頒發的證書需要客戶端驗證通過,才可以繼續訪問,而使用受信任的公司申請的證書則不會彈出》提示頁面,這套證書其實就是一對公鑰和私鑰;

伺服器會把公鑰傳輸給客戶端;

客戶端(瀏覽器)收到公鑰後,會驗證其是否合法有效,無效會有警告提醒,有效則會生成一串隨機數,並用收到的公鑰加密;

客戶端把加密後的隨機字串傳輸給伺服器;

伺服器收到加密隨機字串後,先用私鑰解密(公鑰加密,私鑰解密),獲取到這一串隨機數後,再用這串隨機字串加密傳輸的資料(該加密為對稱加密,所謂對稱加密,就是將資料和私鑰也就是這個隨機字串》通過某種演算法混合在一起,這樣除非知道私鑰,否則無法獲取資料內容);

伺服器把加密後的資料傳輸給客戶端;

客戶端收到資料後,再用自己的私鑰也就是那個隨機字串解密;

十八 生成ssl金鑰對

openssl genrsa -des3 -out tmp.key 2048//key檔案為私鑰

openssl rsa -in tmp.key -out aminglinux.key //轉換key,取消密碼

rm -f tmp.key

openssl req -new -key aminglinux.key -out aminglinux.csr//生成證書請求檔案,需要拿這個檔案和私鑰一起生產公鑰檔案

openssl x509 -req -days 365 -in aminglinux.csr -signkey aminglinux.key -out aminglinux.crt

這裡的aminglinux.crt為公鑰

[root@greg02 conf]#openssl x509 -req -days 365 -in aminglinux.csr -signkey aminglinux.key -out aminglinux.crt

signature ok

subject=/c=cn/st=beijing/l=beijing/o=zju/ou=greg/cn=grego/[email protected]

getting private key

[root@greg02 conf]#ls aminglinux.

aminglinux.crt aminglinux.csr aminglinux.key

十九 nginx配置ssl

vim /usr/local/nginx/conf/vhost/ssl.conf//加入如下內容

server

[root@greg02 conf]#/usr/local/nginx/sbin/nginx -t

nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/vhost/ssl.conf:7

nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed

-t && -s reload //若報錯unknown directive "ssl" ,需要重新編譯nginx,加上--with-http_ssl_module

編輯hosts,增加127.0.0.1 aming.com

curl

[root@greg02 test.com]#curl

證書不被信任

沃通購買證書

12306自己頒發證書,不被瀏覽器信任

Nginx配置upstream實現負載均衡

今天來實踐一下upstream的應用,環境如下 名稱server1 nginx server2 apache php sever3 apache php server4 nginx php ip192.168.10.3 192.168.10.4 192.168.10.5 192.168.10.6 目...

Nginx使用upstream實現負載均衡

upstream模組相關說明 1 upstream模組應放於nginx.conf配置的http 標籤內 2 upstream模組預設演算法是wrr 權重輪詢 weighted round robin 一 分配方式 nginx的upstream支援5種分配方式,下面將會詳細介紹,其中前三種為nginx...

Nginx簡介及使用Nginx實現負載均衡的原理

nginx 這個輕量級 高效能的 web server 主要可以幹兩件事情 直接作為http server 代替apache,對php需要fastcgi處理器支援 另外乙個功能就是作為反向 伺服器實現負載均衡 1 環境 a.我們本地是windows系統,然後使用virutalbox安裝乙個虛擬的li...