安卓系统

如何在Ubuntu 18.04上安装和配置鱿鱼代理

Ubuntu 14 Squid 部署

Ubuntu 14 Squid 部署

目录:

Anonim

Squid是功能齐全的缓存代理,支持流行的网络协议,例如HTTP,HTTPS,FTP等。 Squid主要用于通过缓存重复的请求,过滤Web流量和访问受地理限制的内容来提高Web服务器的性能。

本教程将引导您完成在Ubuntu 18.04上设置Squid代理以及配置Firefox和Google Chrome浏览器以使用它的过程。

在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…

配置鱿鱼

可以通过编辑 /etc/squid/squid.conf 文件来配置Squid。 您还可以将单独的文件与配置选项一起使用,可以使用“ include”指令将其包括在内。

配置文件包含描述每个配置选项功能的注释。

进行任何更改之前,最好备份原始配置文件:

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

要编辑文件,请在文本编辑器中将其打开:

sudo nano /etc/squid/squid.conf

默认情况下,Squid配置为侦听服务器上所有网络接口上的端口 3128

/etc/squid/squid.conf

# Squid normally listens to port 3128 http_port IP_ADDR:PORT

对于大多数用户,在所有接口和默认端口上运行Squid应该可以。

在Squid中,您可以使用访问控制列表(ACL)控制客户端如何访问Web资源。

默认情况下,Squid仅允许从本地主机访问。

如果将使用代理的所有客户端都具有静态IP地址,则可以创建一个ACL,其中将包括允许的IP。

与其在主配置文件中添加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可以使用不同的后端,包括对经过身份验证的用户进行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

让我们创建一个名为“ josh”的用户,其密码为“ Sz$Zdg69 ”:

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

josh:RrvgO7NxY86VM

现在已经创建了用户,下一步是启用HTTP基本身份验证并包含 htpasswd 文件。

打开主配置并添加以下内容:

/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 管理防火墙,则需要打开teg 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 该端口上的流量: sudo ufw allow 8888/tcp

配置浏览器以使用代理

现在已经设置了Squid,最后一步是配置您喜欢的浏览器以使用它。

火狐浏览器

对于Windows,macOS和Linux,以下步骤相同。

  1. 在右上角,单击汉堡包图标 打开Firefox的菜单:

    单击the ⚙ Preferences 链接。

    向下滚动到“ Network Settings 部分,然后单击“ Settings… 按钮。

    将打开一个新窗口。

    • 选择 Manual proxy configuration 单选按钮,在 HTTP Host 字段中输入您的Squid服务器IP地址,在 Port 字段中输入3128.选择 Use this proxy server for all protocols 复选框, OK 按钮以保存设置。

至此,您的Firefox已配置完毕,您可以通过Squid代理浏览Internet。 要进行验证,请打开 google.com ,输入“ what is my ip”是什么,您应该会看到自己的Squid服务器IP地址。

要恢复为默认设置,请转到“ Network Settings ,选择“ Use system proxy settings 单选按钮并保存设置。

有几个插件还可以帮助您配置Firefox的代理设置,例如FoxyProxy。

谷歌浏览器

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)\Google\Chrome\Application\chrome.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。

代理Ubuntu