主頁 > 知識庫 > 利用SSL配置Nginx反向代理的簡單步驟

利用SSL配置Nginx反向代理的簡單步驟

熱門標簽:賀州市地圖標注app 百度地圖標注要不要錢 長沙開福怎么申請400電話 東莞人工智能電銷機器人供應商 高德地圖標注無營業(yè)執(zhí)照 智能電話機器人線路 金融行業(yè)外呼線路 江蘇電銷外呼防封系統(tǒng)是什么 廣州電銷機器人系統(tǒng)圖

前言

反向代理是一個服務器,它接收通過Web發(fā)出的請求,即http和https,然后將它們發(fā)送到后端服務器(或服務器)。后端服務器可以是單個或一組應用服務器,如Tomcat,wildfly或Jenkins等,或者甚至可以是其他Web服務器,如Apache等。

我們已經討論過如何使用Nginx配置簡單的http反向代理。在本教程中,我們將討論如何使用SSL配置Nginx反向代理。因此,讓我們從使用SSL配置Nginx反向代理的過程開始。

先決條件

1.后端服務器:為了本教程的目的,我們使用在端口8080的localhost上運行的tomcat服務器

注意: - 當您開始代理請求時,請確保應用程序服務器已啟動。

2.SSL證書:我們還需要在服務器上配置SSL證書。我們可以使用 let's encrypt的加密證書,你可以使用這里提到的程序得到一個。但是對于本教程,我們將使用自簽名證書,可以通過從終端運行以下命令來創(chuàng)建,

$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/certs/cert.key -out /etc/nginx/certs/cert.crt 

使用ssl配置nginx反向代理的下一步將是nginx安裝,

安裝Nginx

Ubuntu

Nginx可用于默認的Ubuntu存儲庫。這么簡單,使用以下命令安裝它,

$ sudo apt-get update && sudo apt-get install nginx 

現(xiàn)在啟動服務并啟用它以進行啟動,

# systemctl start nginx 
 
# systemctl enable nginx 

現(xiàn)在檢查nginx安裝,我們可以打開Web瀏覽器并輸入系統(tǒng)IP作為url以獲取默認的nginx網頁,這確認nginx工作正常。

使用SSL配置Nginx反向代理

現(xiàn)在我們擁有了使用ssl配置nginx反向代理所需的所有東西。我們現(xiàn)在需要在nginx中進行配置,我們將使用默認的nginx配置文件,即/etc/nginx/conf.d/default.conf.

假設這是我們第一次對配置進行任何更改,打開文件并刪除或注釋所有舊文件內容,然后將以下條目放入文件中。

vi /etc/nginx/conf.d/default.conf

server { 
 
listen 80; 
 
return 301 https://$host$request_uri; 
 
} 
 
 
 
 
server { 
 
listen 443; 
 
server_name linuxtechlab.com; 
 
ssl_certificate /etc/nginx/ssl/cert.crt; 
 
 
 
 
ssl_certificate_key /etc/nginx/ssl/cert.key; 
 
ssl on; 
 
ssl_session_cache builtin:1000 shared:SSL:10m; 
 
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
 
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; 
 
ssl_prefer_server_ciphers on; 
 
access_log /var/log/nginx/access.log; 
 
 
 
 
location / { 
 
proxy_set_header Host $host; 
 
proxy_set_header X-Real-IP $remote_addr; 
 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
 
proxy_set_header X-Forwarded-Proto $scheme; 
 
proxy_pass http://localhost:8080; 
 
proxy_read_timeout 90; 
 
proxy_redirect http://localhost:8080 https://linuxtechlab.com; 
 
} 
 
} 

完成所有更改后,保存文件并退出。在我們重新啟動nginx服務以實現(xiàn)所做的更改之前,我們將逐節(jié)討論我們所做的配置。

第1節(jié)

server { 
listen 80; 
return 301 https://$host$request_uri; 
} 

在這里,我們告訴我們要聽取對端口80的任何請求,然后將其重定向到https。

第2節(jié)

listen 443; 
 
server_name linuxtechlab.com; 
 
ssl_certificate /etc/nginx/ssl/cert.crt; 
 
ssl_certificate_key /etc/nginx/ssl/cert.key; 
 
ssl on; 
 
ssl_session_cache builtin:1000 shared:SSL:10m; 
 
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
 
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; 
 
ssl_prefer_server_ciphers on; 

現(xiàn)在這些是我們正在使用的一些默認的nginx ssl選項,它們告訴nginx web服務器支持哪種協(xié)議版本,SSL密碼。

第3節(jié)

location / { 
 
proxy_set_header Host $host; 
 
proxy_set_header X-Real-IP $remote_addr; 
 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
 
proxy_set_header X-Forwarded-Proto $scheme; 
 
proxy_pass http://localhost:8080; 
 
proxy_read_timeout 90; 
 
proxy_redirect http://localhost:8080 https://linuxtechlab.com; 
 
} 

現(xiàn)在,本節(jié)介紹代理以及傳入請求進入后的位置?,F(xiàn)在我們已經討論了所有配置,我們將檢查然后重新啟動nginx服務。

要檢查nginx,請運行以下命令

# nginx -t 

一旦我們所有配置文件都ok,我們將重新啟動nginx服務

# systemctl restart nginx 

就是這樣,我們的ssl nginx反向代理現(xiàn)已準備就緒。現(xiàn)在要測試設置,您所要做的就是打開Web瀏覽器并輸入URL。我們現(xiàn)在應該重定向到apache tomcat網頁。

這完成了我們如何使用ssl配置nginx反向代理的教程

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:張家界 洛陽 玉樹 松原 永州 北京 廊坊 滄州

巨人網絡通訊聲明:本文標題《利用SSL配置Nginx反向代理的簡單步驟》,本文關鍵詞  利用,SSL,配置,Nginx,反向,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《利用SSL配置Nginx反向代理的簡單步驟》相關的同類信息!
  • 本頁收集關于利用SSL配置Nginx反向代理的簡單步驟的相關信息資訊供網民參考!
  • 推薦文章