国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何配置 Nginx 作為 Jenkins 的反向代理并啟用 SSL 加密

這篇具有很好參考價(jià)值的文章主要介紹了如何配置 Nginx 作為 Jenkins 的反向代理并啟用 SSL 加密。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

簡(jiǎn)介

默認(rèn)情況下,Jenkins 自帶內(nèi)置的 Web 服務(wù)器,監(jiān)聽在 8080 端口上。這對(duì)于運(yùn)行私有 Jenkins 實(shí)例或者只是需要快速啟動(dòng)而不關(guān)心安全性的用戶來說很方便。但是一旦您的主機(jī)上有真實(shí)的生產(chǎn)數(shù)據(jù),使用更安全的 Web 服務(wù)器(如 Nginx)來處理流量是個(gè)不錯(cuò)的主意。

本文將詳細(xì)介紹如何使用 Nginx Web 服務(wù)器作為 Jenkins 實(shí)例的反向代理,為您的站點(diǎn)添加 SSL。本教程假設(shè)您對(duì) Linux 命令、已安裝的 Jenkins 和 Ubuntu 20.04 安裝有一定的了解。

如果您尚未安裝 Jenkins,您可以在本教程中安裝它。

先決條件

本指南假設(shè)您正在使用 Ubuntu 20.04。在開始之前,您應(yīng)該在系統(tǒng)上設(shè)置一個(gè)具有 sudo 權(quán)限的非root用戶帳戶。您可以按照 Ubuntu 20.04 初始服務(wù)器設(shè)置教程來學(xué)習(xí)如何做到這一點(diǎn)。您還需要安裝 Nginx 服務(wù)器并托管您的域。您可以按照《在 Ubuntu 20.04 上安裝 Nginx》教程來學(xué)習(xí)如何做到這一點(diǎn)。

另外,通過 SSL 保護(hù)您的 Jenkins 實(shí)例非常重要。如果它在互聯(lián)網(wǎng)上可見,您可以使用 Let’s Encrypt 來保護(hù)它。您可以按照《如何在 Ubuntu 22.04 上使用 Let’s Encrypt 保護(hù) Nginx》教程來學(xué)習(xí)如何做到這一點(diǎn)。

正如前面所述,本教程假設(shè) Jenkins 已經(jīng)安裝。本教程將向您展示如何安裝 Jenkins(如果需要)。您可能需要切換到 root 用戶來完成該文章。

步驟 1 — 配置 Nginx

近年來,Nginx 憑借其速度和靈活性成為了一個(gè)受歡迎的 Web 服務(wù)器,這使得它成為我們應(yīng)用的理想選擇。

編輯配置

接下來,您需要編輯默認(rèn)的 Nginx 配置文件。以下示例使用 nano。

sudo nano etc/nginx/sites-enabled/default

以下是最終配置的樣例;下面簡(jiǎn)要解釋了各個(gè)部分。您可以更新或替換現(xiàn)有的配置文件,不過您可能需要先備份一份。

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

server {
    listen 443;
    server_name jenkins.domain.com;

    access_log            /var/log/nginx/jenkins.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://jenkins.domain.com;
    }
    
    ...
}

您需要使用您自己的域名更新 server_nameproxy_redirect 行。還有一些額外的 Nginx 魔法,告訴請(qǐng)求在 Nginx 上被讀取并在響應(yīng)端被重寫,以確保反向代理正常工作。

保存并關(guān)閉文件。如果您使用的是 nano,您可以按 Ctrl + X,然后按 Y,最后按 Enter 來完成。

第一部分告訴 Nginx 服務(wù)器監(jiān)聽在 80 端口(默認(rèn) HTTP)上的任何請(qǐng)求,并將它們重定向到 HTTPS。

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

之后,代理開始工作。它基本上接收任何傳入的請(qǐng)求,并將它們代理到綁定/監(jiān)聽在本地網(wǎng)絡(luò)接口的 8080 端口上的 Jenkins 實(shí)例。

...
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://jenkins.domain.com;
}
...

這里有幾個(gè)要點(diǎn)需要指出。如果您沒有一個(gè)解析到您的 Jenkins 服務(wù)器的域名,那么上面的 proxy_redirect 語句在沒有修改的情況下將無法正確運(yùn)行,所以請(qǐng)記住這一點(diǎn)。另外,如果您錯(cuò)誤配置了 proxy_pass(例如添加了尾隨斜杠),您將在 Jenkins 配置頁面中看到類似以下內(nèi)容的錯(cuò)誤。

!Jenkins error: Reverse proxy set up is broken

因此,如果您看到此錯(cuò)誤,請(qǐng)?jiān)俅螜z查 Nginx 配置中的 proxy_passproxy_redirect 設(shè)置!

步驟 2 — 配置 Jenkins

為了讓 Jenkins 與 Nginx 協(xié)同工作,我們需要更新 Jenkins 配置,使其僅監(jiān)聽本地地址而不是所有地址(0.0.0.0),以確保流量得到正確處理。這是一個(gè)重要的安全步驟,因?yàn)槿绻?Jenkins 仍然在所有地址上監(jiān)聽,那么它仍然可能通過其原始端口(8080)訪問。我們將修改 /etc/default/jenkins 配置文件以進(jìn)行這些調(diào)整。

sudo nano /etc/default/jenkins

找到 JENKINS\_ARGS 行并將其更新如下:

JENKINS_ARGS="--webroot=/var/cache/jenkins/war --httpListenAddress=127.0.0.1 --httpPort=$HTTP_PORT -ajp13Port=$AJP_PORT"

請(qǐng)注意,–httpListenAddress=127.0.0.1 設(shè)置必須要么添加,要么修改。

然后繼續(xù)重啟 Jenkins 和 Nginx。

sudo service jenkins restart
sudo service nginx restart

現(xiàn)在您應(yīng)該能夠通過 HTTPS 訪問您的域名,并且 Jenkins 站點(diǎn)將被安全地提供。

可選 — 更新 OAuth URL

如果您正在使用 GitHub 或其他 OAuth 插件進(jìn)行身份驗(yàn)證,此時(shí)它可能已經(jīng)失效。例如,當(dāng)嘗試訪問 URL 時(shí),您將收到一個(gè)類似 http://jenkins.domain.com:8080/securityRealm/finishLogin?code=random-string 的“無法打開頁面”的錯(cuò)誤。

為了解決這個(gè)問題,您需要更新 Jenkins 中的一些設(shè)置,包括 OAuth 插件設(shè)置。首先在 Jenkins GUI 中更新 Jenkins URL;它可以在 Jenkins -> 管理 Jenkins -> 配置系統(tǒng) -> Jenkins 位置 菜單中找到。

將 Jenkins URL 更新為使用 HTTPS - https://jenkins.domain.com/

!Jenkins URL

接下來,更新您的 OAuth 設(shè)置與外部提供者。以下示例是針對(duì) GitHub 的。在 GitHub 上,這可以在 設(shè)置 -> 應(yīng)用程序 -> 開發(fā)人員應(yīng)用程序 下找到。

應(yīng)該有一個(gè)條目為 Jenkins。將 主頁 URL授權(quán)回調(diào) URL 更新以反映 HTTPS 設(shè)置。它可能類似于以下內(nèi)容:

!GitHub 上的 Jenkins 設(shè)置;兩個(gè) URL 都使用了 https://

結(jié)論

唯一剩下的事情就是驗(yàn)證一切是否正確工作。如上所述,您現(xiàn)在應(yīng)該能夠通過新配置的 URL - jenkins.domain.com - 使用 HTTP 或 HTTPS 瀏覽。您應(yīng)該被重定向到安全站點(diǎn),并且應(yīng)該看到一些站點(diǎn)信息,包括您新更新的 SSL 設(shè)置。如前所述,如果您沒有通過 DNS 使用主機(jī)名,則您的重定向可能無法按預(yù)期工作。在這種情況下,您需要修改 Nginx 配置文件中的 proxy_pass 部分。文章來源地址http://www.zghlxwxcb.cn/news/detail-855310.html

到了這里,關(guān)于如何配置 Nginx 作為 Jenkins 的反向代理并啟用 SSL 加密的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何使用寶塔面板配置Nginx反向代理WebSocket(wss)

    本章教程,主要介紹一下在寶塔面板中如何配置websocket wss的具體過程。 目錄 一、添加站點(diǎn) 二、申請(qǐng)證書 三、配置代理 ?1、增加配置內(nèi)容

    2024年02月21日
    瀏覽(31)
  • 使用Nginx作為反向代理服務(wù)器在Linux中的最佳實(shí)踐

    使用Nginx作為反向代理服務(wù)器在Linux中的最佳實(shí)踐

    在Linux環(huán)境下,Nginx因其高效性能、穩(wěn)定性以及豐富的功能集而廣泛用于作為反向代理服務(wù)器。以下是在Linux中使用Nginx作為反向代理服務(wù)器的最佳實(shí)踐: 1. 安裝與配置 首先,確保你的Linux發(fā)行版已經(jīng)安裝了Nginx。大多數(shù)Linux發(fā)行版都提供了Nginx的包管理工具。例如,在基于Deb

    2024年01月17日
    瀏覽(26)
  • 拓展操作(四) 使用nginx反向代理jenkins

    讓清單成為一種習(xí)慣 互聯(lián)網(wǎng)時(shí)代的變革,不再是簡(jiǎn)單的開發(fā)部署上線,持續(xù),正確,安全地把事情做好尤其重要;把事情做好的前提是做一個(gè)可量化可執(zhí)行的清單,讓工程師就可以操作的清單而不是專家才能操作: 設(shè)定檢查點(diǎn) 根據(jù)節(jié)點(diǎn)執(zhí)行檢查程序 操作確認(rèn)或邊讀邊做 二

    2024年01月18日
    瀏覽(56)
  • 具有公網(wǎng)IP的服務(wù)器作為代理服務(wù)器,并使用Nginx將內(nèi)網(wǎng)服務(wù)器反向代理

    在代理服務(wù)器上安裝Nginx。如果您正在使用Linux操作系統(tǒng),則可以使用包管理器來安裝Nginx。例如,如果您使用的是Ubuntu,可以使用以下命令安裝: 配置Nginx以將HTTP和HTTPS請(qǐng)求轉(zhuǎn)發(fā)到內(nèi)部服務(wù)器。打開Nginx的主配置文件/etc/nginx/nginx.conf,并在http塊中添加以下代碼: 注意: 將

    2024年01月25日
    瀏覽(30)
  • Nginx搭建Https反向代理,使用阿里云免費(fèi)SSL證書 - Docker

    Nginx搭建Https反向代理,使用阿里云免費(fèi)SSL證書 - Docker

    沒有docker需提前安裝docker,不知怎么安裝的請(qǐng)自行百度。 1、拉取鏡像 2、去阿里云或者其他云服務(wù)提供商申請(qǐng)免費(fèi)證書,申請(qǐng)到之后下載下來,上傳到服務(wù)器 把證書上傳到ssl目錄下面,下面是ssl的目錄結(jié)構(gòu) /root/nginx/ssl 和上傳的證書有兩個(gè)文件一個(gè) .key 一個(gè) .pem 進(jìn)入nginx-pr

    2024年02月09日
    瀏覽(22)
  • linux環(huán)境下docker中搭建 jenkins 及自定義訪問路徑,利用nginx反向代理

    linux環(huán)境下docker中搭建 jenkins 及自定義訪問路徑,利用nginx反向代理

    前兩天發(fā)布了完整的 linux服務(wù)器上Docker中安裝jenkins 在實(shí)際的開發(fā)中,可能我們并不能直接開放8081或者8080端口給jenkins使用,常常是通過nginx方向代理來實(shí)現(xiàn)的,這里我們來配置一下。 如果你還沒有安裝 可以參考我這篇文章 linux服務(wù)器上Docker中安裝jenkins 看到目錄: 創(chuàng)建一個(gè)

    2024年02月16日
    瀏覽(19)
  • Nextcloud 集成 onlyoffice 配置 apache 反向 SSL 反向代理填坑

    onlyoffice nextcloud Apache? 反向代理 nginx Error while downloading the document file to be converted 一臺(tái)服務(wù)器設(shè)備安裝了很多 docker 服務(wù),包括 nextcloud 和 onlyoffice 和 apache。nextcloud、onlyoffice 服務(wù)默認(rèn)使用 10001 和 10002 端口映射到兩個(gè)服務(wù)的 80 端口。直接訪問是通過 80 端口訪問的,沒有 SSL 加

    2024年01月21日
    瀏覽(16)
  • Nginx-反向代理(配置教程)

    Nginx-反向代理(配置教程)

    ?反向代理的作用 1、解決網(wǎng)站服務(wù)器對(duì)外可見的問題、私密性、安全性 2、路由功能:根據(jù)用戶請(qǐng)求的URI調(diào)度到對(duì)應(yīng)功能的節(jié)點(diǎn)處理請(qǐng)求 3、負(fù)載均衡:將用戶的請(qǐng)求,通過調(diào)度算法挑選一臺(tái)合適的節(jié)點(diǎn)處理請(qǐng)求 4、動(dòng)靜分離:根據(jù)用戶請(qǐng)求的URI進(jìn)行區(qū)分,將動(dòng)態(tài)資源調(diào)度到應(yīng)

    2024年02月13日
    瀏覽(24)
  • Nginx反向代理 配置實(shí)例

    Nginx反向代理 配置實(shí)例

    介紹: 反向代理,其實(shí)客戶端對(duì)代理是無感知的,因?yàn)榭蛻舳瞬恍枰魏闻渲镁涂梢栽L問。 我們只 需要將請(qǐng)求發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器去選擇目標(biāo)服務(wù)器獲取數(shù)據(jù)后,在返 回給客戶端,此時(shí)反向代理服務(wù)器和目標(biāo)服務(wù)器對(duì)外就是一個(gè)服務(wù)器,暴露的是代理

    2024年02月15日
    瀏覽(25)
  • nginx反向代理配置

    nginx反向代理配置

    客戶端對(duì)代理是無感知的,只需將請(qǐng)求發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器去選擇目標(biāo)服務(wù)器獲取數(shù)據(jù)后,再返回給客戶端,此時(shí)反向代理服務(wù)器和目標(biāo)服務(wù)器對(duì)外就是一個(gè)服務(wù)器,暴露的是代理服務(wù)器地址,隱藏了真實(shí)服務(wù)器IP地址 瀏覽器訪問 www.123.com ,訪問nginx的地

    2024年02月17日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包