day11 四層負載均衡和https

2022-09-13 22:18:34 字數 3960 閱讀 1879

1.四層負載均衡特點

1.1.四層負載均衡僅能**tcp/ip協議、udp協議、通常用來**埠,如:tcp/22、udp/53;

1.2.四層負載均衡可以用來解決七層負載均衡埠限制問題;(七層負載均衡最大使用65535個埠號)

1.3.四層負載均衡可以解決七層負載均衡高可用問題;(多台後端七層負載均衡能同時的使用)

1.4.四層的**效率比七層的高得多,但僅支援tcp/ip協議,不支援http和https協議;

1.5.通常大併發場景通常會選擇使用在七層負載前面增加四層負載均衡。

2、四層的使用場景

1、mysql服務

2、ssh**埠

3、**的負載均衡**

3、四層的實現

注:epel源安裝的nginx無法使用四層負載均衡

四層負載均衡和七層負載均衡基本一樣,也有連線池stream ,proxy_pass往連線池丟請求

#nginx.conf也要修改http內容刪除 加上stream

#upstream:四層只能配置在stream模組裡,七層只能配置在http http==stream

#配置檔案也不能寫在conf.d裡

upstream [連線池的名稱]

server

#實際nginx.conf配置

vim /etc/nginx/nginx.conf

user nginx;

worker_processes auto;

error_log /var/log/nginx/error.log notice;

pid /var/run/nginx.pid;

events

stream

# vim /etc/nginx/stream.conf/stream.conf

upstream lol

server

案例1. :要求使用192.168.15.6的1234埠鏈結192.168.15.5的22埠

修改四層負載均衡 /etc/nginx/stream.conf/ssh.conf

upstream lol

server

#測試(通過nginx**ssh)

ssh192.168.15.6 -p 1234

案例2:要求使用192.168.15.6的33060埠**192.168.15.51的3306埠

vim mysql.conf

upstream gailun

server

#測試在db01機器

#介紹

為什麼需要使用https,因為http不安全,當我們使用http**時,會遭到劫持和篡改,如果採用https協議,那麼資料在傳輸過程中是加密的,所以黑客無法竊取或者篡改資料報文資訊,同時也避免**傳輸時資訊洩露。

簡而言之https是主要用來加密傳輸

http的問題:

中間人攻擊,**被**修改

如何使用https認證

#詳細解釋

我們首先需要申請證書,先去登記機構進行身份登記,我是誰,我是幹嘛的,我想做什麼,然後登記機構再通過csr發給ca機構,ca中心通過後會生成一堆公鑰和私鑰,公鑰會在ca證書鏈中儲存,公鑰和私鑰證書我們拿到後,會將其部署在web伺服器上

1.當瀏覽器訪問我們的https站點時,他會去請求我們的證書

2.nginx這樣的web伺服器會將我們的公鑰證書發給瀏覽器

3.瀏覽器會去驗證我們的證書是否合法有效

4.ca機構會將過期的證書放置在crl伺服器,crl服務的驗證效率是非常差的,所以ca有推出了ocsp響應程式,ocsp響應程式可以查詢指定的乙個證書是否過期,所以瀏覽器可以直接查詢oscp響應程式,但oscp響應程式效能還不是很高

5.nginx會有乙個ocsp的開關,當我們開啟後,nginx會主動上ocsp上查詢,這樣大量的客戶端直接從nginx獲取證書是否有效

6.瀏覽器再次訪問的時候,web伺服器會將證書和驗證結果一起發給瀏覽器,瀏覽器直接與我們建立連線

#使用https認證

1.檢查nginx -v 是否有這個--with-http_ssl_module

2.建立證書存放目錄ssl_key

[root@web02 ~]

# mkdir /etc/nginx/ssl_key

3.製造證書

[root@web02 ~]

# cd /etc/nginx/ssl_key/ #先要到這個目錄下

[root@web02 ssl_key]

# openssl genrsa -idea -out server.key 2048 #(生成私鑰)

generating rsa private key, 2048 bit long modulus

....+++

......

....

...+++

e is 65537

(0x10001)

[root@web02 ssl_key]

# openssl req -days 36500 -x509 -sha256 -nodes -newkey rsa:2048 -keyout server.key -out server.crt #生成公鑰

會在該目錄下生成兩個檔案

[root@web02 ssl_key]

# ll

total 8

-rw-r--r-- 1 root root 1220 nov 1

19:18 server.crt #公鑰

-rw-r--r-- 1 root root 1708 nov 1

19:18 server.key #私鑰

4.配置nginx**

[root@web02 ssl_key]

# vim /etc/nginx/conf.d/game.conf

server

}5.重啟nginx並測試

systemctl restart nginx

#**輸入下面內容,發現如下圖即為成功

全棧https(在負載均衡裡設定https)

#先把web02nginx配置修改回來

1.建立ssl_key

[root@lb01 ssl_key]

# mkdir /etc/nginx/ssl_key

2.生成公鑰私鑰

[root@lb01 ssl_key]

# openssl genrsa -idea -out server.key 2048 #私鑰

[root@lb01 ssl_key]

# openssl req -days 36500 -x509 -sha256 -nodes -newkey rsa:2048 -keyout server.key -out server.crt #公鑰

3.設定nginx**,並加入強制跳轉

[root@lb01 ssl_key]

# vim /etc/nginx/conf.d/game.conf

upstream game

#強制跳轉

server

server

}4.重啟nginx並測試

systemctl restart nginx

四層負載均衡和七層負載均衡

第一,技術原理上的區別。所謂四層負載均衡,也就是主要通過報文中的目標位址和埠,再加上負載均衡裝置設定的伺服器選擇方式,決定最終選擇的內部伺服器。以常見的 tcp為例,負載均衡裝置 在接收到第乙個來自客戶端的 syn請求時 即通過上述方式選擇乙個最佳的伺服器,並對報文中目標 ip位址進行修改 改為後端...

負載均衡總結 四層負載均衡和七層負載均衡的區別

一 四層負載和七層負載的對比 在osi七層模型的第4層工作,即tcp層,其不會理解上層的協議如 http ftp等.由上圖,在四層負載裝置中,把client傳送的報文目標位址 原來是負載均衡裝置的ip位址 根據均衡裝置設定的選擇web伺服器的規則選擇對應的web伺服器ip位址,這樣client就可以...

四層負載均衡

nat方式l4負載均衡 網路位址轉換 nat,network address translation 屬於廣域網接入技術,它是一種將私有 保留 位址轉化為合法ip位址的轉換技術,被廣泛應用於各種型別網際網路接入方式和各種型別的網路中 採用nat方式實現的l4伺服器負載均衡,後端伺服器可以位於不同的物...