站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        如何在 Ubuntu 18.04 上安裝和配置 Squid 代理

        Squid 是一個(gè)功能齊全的緩存代理,支持流行的網(wǎng)絡(luò)協(xié)議,如 HTTP , HTTPS , FTP 等。 Squid 主要用于通過緩存重復(fù)請(qǐng)求,過濾 Web 流量和訪問地理限制內(nèi)容來提高 Web 服務(wù)器的性能。

        本教程將引導(dǎo)您完成在 Ubuntu 18.04 上設(shè)置 Squid 代理并配置 Firefox 和 Google Chrome Web 瀏覽器以使用它的過程。

        在 Ubuntu 上安裝 Squid

        Squid 包包含在默認(rèn)的 Ubuntu 18.04 存儲(chǔ)庫中。要安裝它,請(qǐng)使用 sudo 用戶運(yùn)行以下命令:

        sudo apt update  sudo apt install squid

        安裝完成后, Squid 服務(wù)將自動(dòng)啟動(dòng)。

        要驗(yàn)證安裝是否成功并且 Squid 服務(wù)是否正在運(yùn)行,請(qǐng)鍵入以下命令以打印服務(wù)狀態(tài):

        sudo systemctl status squid

        ● squid.service - LSB: Squid HTTP Proxy version 3.x     Loaded: loaded (/etc/init.d/squid; generated)     Active: active (running) since Thu 2019-06-27 11:45:17 UTC  ...

        配置 Squid

        可以通過編輯 /etc/squid/squid.conf 文件來配置 Squid  。您還可以使用帶有配置選項(xiàng)的分隔文件,可以使用 “include” 指令包含這些選項(xiàng)。

        配置文件包含描述每個(gè)配置選項(xiàng)的注釋。

        在進(jìn)行任何更改之前,最好備份原始配置文件:

        sudo cp /etc/squid/squid.conf{,.orginal}

        要編輯文件,請(qǐng)?jiān)谖谋揪庉嬈髦袑⑵浯蜷_:

        sudo nano /etc/squid/squid.conf

        默認(rèn)情況下, Squid 配置為偵聽服務(wù)器上所有網(wǎng)絡(luò)接口上的 3128 端口。

        如果要更改端口并設(shè)置偵聽接口,請(qǐng)找到以 http_port 開頭的行,并指定接口 IP 地址和新端口。如果沒有指定網(wǎng)絡(luò)接口, Squid 將監(jiān)聽所有網(wǎng)絡(luò)接口。

        /etc/squid/squid.conf 中

        # Squid normally listens to port 3128 http_port IP_ADDR:PORT

        在所有接口和默認(rèn)端口上運(yùn)行 Squid 應(yīng)該適合大多數(shù)用戶。

        另一個(gè)有趣的選擇是 forwarded_for 。默認(rèn)情況下,將其設(shè)置為 on 表示 out-box Squid 的行為類似于 RFC 兼容代理,并在 X-Forwarded-For 標(biāo)頭中添加客戶端的 IP 地址。如果要設(shè)置透明代理,請(qǐng)取消注釋該指令并將其更改為 transparent 。

        將指令設(shè)置為 off 將告訴 Squid 不要在 HTTP 請(qǐng)求中轉(zhuǎn)發(fā)附加客戶端的 IP 地址。

        /etc/squid/squid.conf 中

        #Default: # forwarded_for on

        在 Squid 中,您可以使用訪問控制列表 (ACL) 控制客戶端如何訪問 Web 資源。

        默認(rèn)情況下, Squid 只允許從 localhost 訪問。

        如果將使用代理的所有客戶端都具有靜態(tài) IP 地址,則可以創(chuàng)建包含允許的 IP 的 ACL 。

        我們將創(chuàng)建一個(gè)新的專用文件來保存 IP ,而不是在主配置文件中添加 IP 地址:

        /etc/squid/allowed_ips.txt

        192.168.33.1  # All other allowed IPs

        完成后,打開主配置文件并創(chuàng)建一個(gè)名為 allowed_ips (第一個(gè)突出顯示的行) 的新 ACL ,并允許使用該 http_access 指令(第二個(gè)突出顯示的行)訪問該 ACL  :

        /etc/squid/squid.conf 中

        # ... acl allowed_ips  src "/etc/squid/allowed_ips.txt" # ... #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all

        http_access 規(guī)則的順序很重要。請(qǐng)務(wù)必先添加該行 http_access deny all 。

        該 http_access 指令的工作方式與防火墻規(guī)則類似。 Squid 從上到下讀取規(guī)則,當(dāng)規(guī)則匹配時(shí),不處理下面的規(guī)則。

        每當(dāng)您更改配置文件時(shí),都需要重新啟動(dòng) Squid 服務(wù)才能使更改生效:

        sudo systemctl restart squid

        Squid身份驗(yàn)證

        Squid 可以對(duì)經(jīng)過身份驗(yàn)證的用戶使用不同的后端,包括 Samba , LDAP 和 HTTP 基本身份驗(yàn)證。

        在本教程中,我們將配置 Squid 以使用基本身份驗(yàn)證。它是 HTTP 協(xié)議中內(nèi)置的簡單身份驗(yàn)證方法。

        我們將使用 openssl 生成密碼并使用 tee 命令將該 username:password 對(duì)附加到 /etc/squid/htpasswd 文件,如下所示:

        printf "USERNAME:$(openssl passwd -crypt PASSWORD)n" | sudo tee -a /etc/squid/htpasswd

        讓我們創(chuàng)建一個(gè)名為 “john” 的用戶,密碼為 Sz$Zdg69:

        printf "josh:$(openssl passwd -crypt 'Sz$Zdg69')n" | sudo tee -a /etc/squid/htpasswd

        josh:RrvgO7NxY86VM

        現(xiàn)在創(chuàng)建了用戶,下一步是配置 Squid 以啟用 HTTP 基本身份驗(yàn)證并使用該文件。

        打開主配置并添加以下內(nèi)容:

        /etc/squid/squid.conf 中

        # ... auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED # ... #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all

        前三個(gè)突出顯示的行正在創(chuàng)建一個(gè)名為 authenticated 的新 ACL  ,倒數(shù)第三行行允許訪問經(jīng)過身份驗(yàn)證的用戶。

        重啟 Squid 服務(wù):

        sudo systemctl restart squid

        配置防火墻

        假設(shè)您正在使用 UFW 管理防火墻,則需要打開 Squid 端口。為此啟用 “Squid” 配置文件,其中包含默認(rèn) Squid 端口的規(guī)則。

        sudo ufw allow 'Squid'

        要驗(yàn)證狀態(tài)類型:

        sudo ufw status

        輸出將如下所示:

        Status: active    To                         Action      From  --                         ------      ----  22/tcp                     ALLOW       Anywhere  Squid                      ALLOW       Anywhere              22/tcp (v6)                ALLOW       Anywhere (v6)               Squid (v6)                 ALLOW       Anywhere (v6)  

        例如,如果 Squid 在另一個(gè)非默認(rèn)端口 8888 上運(yùn)行,則可以使用后面的命令允許該端口上的流量: sudo ufw allow 8888/tcp 。

        配置瀏覽器以使用代理

        現(xiàn)在您已經(jīng)設(shè)置了 Squid ,最后一步是配置您首選的瀏覽器以使用它。

        火狐

        對(duì)于 Windows , macOS 和 Linux ,以下步驟相同。

        1. 在右上角,點(diǎn)擊漢堡包圖標(biāo)?打開 Firefox 的菜單:
        2. 單擊⚙ 首選項(xiàng) 鏈接。
        3. 向下滾動(dòng)到該 網(wǎng)絡(luò)設(shè)置 部分,然后單擊 設(shè)置… 按鈕。
        4. 將打開一個(gè)新窗口。

          • 選擇 手動(dòng)代理配置 單選按鈕。
          • 在 HTTP 代理 字段輸入您的 Squid 服務(wù)器的 IP 地址, 在 端口 字段輸入 3128。
          • 選中 為所有協(xié)議使用相同代理服務(wù)器 復(fù)選框。
          • 單擊 確定 按鈕以保存設(shè)置。

          如何在 Ubuntu 18.04 上安裝和配置 Squid 代理

        此時(shí),您的 Firefox 已配置,您可以通過 Squid 代理瀏覽 Internet 。要驗(yàn)證它,打開 google.com ,鍵入“我的 IP 是什么”,你應(yīng)該看到你的 Squid 服務(wù)器 IP 地址。

        要恢復(fù)默認(rèn)設(shè)置,請(qǐng)轉(zhuǎn)到 Network Settings ,選擇 Use system proxy settings 單選按鈕并保存設(shè)置。

        還有幾個(gè)插件可以幫助您配置 Firefox 的代理設(shè)置,如 FoxyProxy 。

        谷歌 Chrome 瀏覽器

        Google Chrome 使用默認(rèn)的系統(tǒng)代理設(shè)置。您可以使用插件(如 SwitchyOmega) 或從命令行啟動(dòng) Chrome 網(wǎng)絡(luò)瀏覽器,而不是更改操作系統(tǒng)代理設(shè)置。

        要使用新配置文件啟動(dòng) Chrome 并連接到 Squid 服務(wù)器,請(qǐng)使用以下命令:

        Linux:

        /usr/bin/google-chrome       --user-data-dir="$HOME/proxy-profile"       --proxy-server="http://SQUID_IP:3128"

        蘋果系統(tǒng) :

        "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"       --user-data-dir="$HOME/proxy-profile"       --proxy-server="http://SQUID_IP:3128"

        Windows:

        "C:Program Files (x86)GoogleChromeApplicationchrome.exe" ^      --user-data-dir="%USERPROFILE%proxy-profile" ^      --proxy-server="http://SQUID_IP:3128"

        如果配置文件不存在,將自動(dòng)創(chuàng)建配置文件。這樣,您可以同時(shí)運(yùn)行多個(gè) Chrome 實(shí)例。

        要確認(rèn)代理服務(wù)器是否正常工作,請(qǐng)打開 google.com ,然后鍵入 “what is my ip” 。瀏覽器中顯示的 IP 應(yīng)該是服務(wù)器的 IP 地址。

        結(jié)論

        您已經(jīng)學(xué)習(xí)了如何在 Ubuntu 18.04 上安裝 squid 并配置瀏覽器以使用它。

        Squid 是最受歡迎的代理緩存服務(wù)器之一。它可以提高 Web 服務(wù)器的速度,并可以幫助您限制用戶訪問 Internet 。

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
        主站蜘蛛池模板: 国精品无码A区一区二区| 蜜国产精品jk白丝AV网站 | 久久99精品久久久久久hb无码| 91精品一区国产高清在线| 无码国内精品久久人妻麻豆按摩| 国产精品99精品久久免费| 亚洲精品成人久久久| 国产精品v欧美精品v日本精 | 国产成人精品一区在线| www.亚洲精品| 亚洲精品~无码抽插| 精品人妻少妇一区二区三区不卡| 国产精品视频网站你懂得| 欧美精品久久久久久久自慰| 日韩专区亚洲精品欧美专区| 国产欧美精品一区二区色综合| 国内精品久久九九国产精品| 国产精品亚洲日韩欧美色窝窝色欲| 亚洲精品动漫免费二区| 久久精品国产一区二区三区不卡 | 国产精品亚洲аv无码播放| 久久久久国产精品三级网| 国内精品99亚洲免费高清| 国产福利精品在线观看| 在线精品视频播放| 欧美视频精品一区二区三区| 2020国产精品| 2021国产成人精品国产| 久久国产乱子伦免费精品| 日韩精品一区二区三区色欲AV| 亚洲日韩精品射精日| 亚洲av午夜福利精品一区人妖| 中文字幕一区二区三区日韩精品| 乱人伦人妻精品一区二区| 九色精品视频在线观看| 国产综合色产在线精品| 免费精品精品国产欧美在线| 精品视频一区二区三区| 欧美激情精品久久久久久久| 欧美精品免费专区在线观看| 亚洲精品无码专区久久同性男|