如何利用SSL配置Nginx反向代理

這篇文章主要介紹“如何利用SSL配置Nginx反向代理”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“如何利用SSL配置Nginx反向代理”文章能幫助大家解決問題。

為農(nóng)安等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及農(nóng)安網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為網(wǎng)站設計、成都網(wǎng)站建設、農(nóng)安網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

先決條件

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網(wǎng)頁,這確認nginx工作正常。

使用ssl配置nginx反向代理

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

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

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é)介紹代理以及傳入請求進入后的位置。現(xiàn)在我們已經(jīng)討論了所有配置,我們將檢查然后重新啟動nginx服務。

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

# nginx -t

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

# systemctl restart nginx

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

關于“如何利用SSL配置Nginx反向代理”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識,可以關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

分享題目:如何利用SSL配置Nginx反向代理
文章出自:http://www.muchs.cn/article10/phohgo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、響應式網(wǎng)站、企業(yè)網(wǎng)站制作、軟件開發(fā)、標簽優(yōu)化、外貿(mào)網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營