站長資訊網
        最全最豐富的資訊網站

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

        Squid 是一個功能齊全的緩存代理,支持流行的網絡協議,如 HTTP , HTTPS , FTP 等。 Squid 主要用于通過緩存重復請求,過濾 Web 流量和訪問地理限制內容來提高 Web 服務器的性能。

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

        在 Ubuntu 上安裝 Squid

        Squid 包包含在默認的 Ubuntu 18.04 存儲庫中。要安裝它,請使用 sudo 用戶運行以下命令:

        sudo apt update  sudo apt install squid

        安裝完成后, Squid 服務將自動啟動。

        要驗證安裝是否成功并且 Squid 服務是否正在運行,請鍵入以下命令以打印服務狀態:

        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  。您還可以使用帶有配置選項的分隔文件,可以使用 “include” 指令包含這些選項。

        配置文件包含描述每個配置選項的注釋。

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

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

        要編輯文件,請在文本編輯器中將其打開:

        sudo nano /etc/squid/squid.conf

        默認情況下, Squid 配置為偵聽服務器上所有網絡接口上的 3128 端口。

        如果要更改端口并設置偵聽接口,請找到以 http_port 開頭的行,并指定接口 IP 地址和新端口。如果沒有指定網絡接口, Squid 將監聽所有網絡接口。

        /etc/squid/squid.conf 中

        # Squid normally listens to port 3128 http_port IP_ADDR:PORT

        在所有接口和默認端口上運行 Squid 應該適合大多數用戶。

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

        將指令設置為 off 將告訴 Squid 不要在 HTTP 請求中轉發附加客戶端的 IP 地址。

        /etc/squid/squid.conf 中

        #Default: # forwarded_for on

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

        默認情況下, Squid 只允許從 localhost 訪問。

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

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

        /etc/squid/allowed_ips.txt

        192.168.33.1  # All other allowed IPs

        完成后,打開主配置文件并創建一個名為 allowed_ips (第一個突出顯示的行) 的新 ACL ,并允許使用該 http_access 指令(第二個突出顯示的行)訪問該 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 規則的順序很重要。請務必先添加該行 http_access deny all 。

        該 http_access 指令的工作方式與防火墻規則類似。 Squid 從上到下讀取規則,當規則匹配時,不處理下面的規則。

        每當您更改配置文件時,都需要重新啟動 Squid 服務才能使更改生效:

        sudo systemctl restart squid

        Squid身份驗證

        Squid 可以對經過身份驗證的用戶使用不同的后端,包括 Samba , LDAP 和 HTTP 基本身份驗證。

        在本教程中,我們將配置 Squid 以使用基本身份驗證。它是 HTTP 協議中內置的簡單身份驗證方法。

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

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

        讓我們創建一個名為 “john” 的用戶,密碼為 Sz$Zdg69:

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

        josh:RrvgO7NxY86VM

        現在創建了用戶,下一步是配置 Squid 以啟用 HTTP 基本身份驗證并使用該文件。

        打開主配置并添加以下內容:

        /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

        前三個突出顯示的行正在創建一個名為 authenticated 的新 ACL  ,倒數第三行行允許訪問經過身份驗證的用戶。

        重啟 Squid 服務:

        sudo systemctl restart squid

        配置防火墻

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

        sudo ufw allow 'Squid'

        要驗證狀態類型:

        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 在另一個非默認端口 8888 上運行,則可以使用后面的命令允許該端口上的流量: sudo ufw allow 8888/tcp 。

        配置瀏覽器以使用代理

        現在您已經設置了 Squid ,最后一步是配置您首選的瀏覽器以使用它。

        火狐

        對于 Windows , macOS 和 Linux ,以下步驟相同。

        1. 在右上角,點擊漢堡包圖標?打開 Firefox 的菜單:
        2. 單擊⚙ 首選項 鏈接。
        3. 向下滾動到該 網絡設置 部分,然后單擊 設置… 按鈕。
        4. 將打開一個新窗口。

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

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

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

        要恢復默認設置,請轉到 Network Settings ,選擇 Use system proxy settings 單選按鈕并保存設置。

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

        谷歌 Chrome 瀏覽器

        Google Chrome 使用默認的系統代理設置。您可以使用插件(如 SwitchyOmega) 或從命令行啟動 Chrome 網絡瀏覽器,而不是更改操作系統代理設置。

        要使用新配置文件啟動 Chrome 并連接到 Squid 服務器,請使用以下命令:

        Linux:

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

        蘋果系統 :

        "/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"

        如果配置文件不存在,將自動創建配置文件。這樣,您可以同時運行多個 Chrome 實例。

        要確認代理服務器是否正常工作,請打開 google.com ,然后鍵入 “what is my ip” 。瀏覽器中顯示的 IP 應該是服務器的 IP 地址。

        結論

        您已經學習了如何在 Ubuntu 18.04 上安裝 squid 并配置瀏覽器以使用它。

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

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产欧美日韩精品专区| 精品99又大又爽又硬少妇毛片 | 99久久国产热无码精品免费久久久久 | 99re只有精品8中文| 热re99久久精品国99热| 免费精品精品国产欧美在线欧美高清免费一级在线 | 国产精品一久久香蕉国产线看| 精品人妻少妇一区二区三区在线| 成人精品综合免费视频| 无码人妻精品一区二区三区夜夜嗨| 精品国产不卡一区二区三区| 一区二区三区精品| 91精品国产综合久久精品| 久久九九精品99国产精品| 真实国产乱子伦精品视频| 久久精品综合一区二区三区| 成人一区二区三区精品| 久久99精品国产| 国产精品分类视频分类一区| 精品日韩亚洲AV无码一区二区三区| 中文字幕无码精品亚洲资源网久久| 欧美精品高清在线xxxx| 久久99亚洲综合精品首页| 国产欧美日韩精品专区| 国产乱子伦精品免费视频| 99久re热视频这里只有精品6| 四虎永久在线精品884aa下载| 精品一区二区久久| 国产精品污视频| 国产精品亚洲午夜一区二区三区| 99久久精品费精品国产一区二区| 国产a精品视频| 精品国精品国产| 久久这里只精品国产99热| 久久精品国产免费一区| 一区二区三区日韩精品| 最新国产の精品合集| 国产成人精品久久亚洲高清不卡 | 91精品国产福利在线观看| 9999国产精品欧美久久久久久| 国产精品永久免费|