Repte 2.3:Configurar un proxy per la navegació web dels clients
Tenim un error a la nostra xarxa així que en comptes de posar el proxy a la xarxa del DMZ es va haver de posar a la xarxa de servidores, un cop això aclarit podem començar a fer la nostra tasca:
sudo apt update
sudo apt install squid Comencem com sempre, ja que és una màquina nova, un cop instal·lat ja podem començar amb la configuració des-dels arxius.
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.bak Pero abans farem una copia de seguretat, per si acas alguna configuracio pogui sortir malament.
Començarem des-de la creació de la blacklist:
sudo vim /etc/squid/blacklist.txt
.facebook.com
.tiktok.com
.youtube.com Ara ja podem continuar amb la creació de la configuració que farem servir:
sudo vim /etc/squid/squid.conf http_port 3128
acl localnet src 192.168.0.0/28
acl SSL_ports port 443
acl Safe_ports port 80 443 8080
acl CONNECT method CONNECT
acl blacklist_domains dstdomain "/etc/squid/blacklist.txt"
http_access deny blacklist_domains
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access deny all
access_log /var/log/squid/access.log squid Un cop això queda fet ja podem passar a guardar la configuració i fer una comprovació de què funciona bé:
sudo squid -k parse
sudo systemctl restart squid Hauries de veure una resposta com aquesta:
vagrant@debian:~$ sudo squid -k parse
sudo systemctl restart squid
2026/03/27 10:59:14| Startup: Initializing Authentication Schemes ...
2026/03/27 10:59:14| Startup: Initialized Authentication Scheme 'basic'
2026/03/27 10:59:14| Startup: Initialized Authentication Scheme 'digest'
2026/03/27 10:59:14| Startup: Initialized Authentication Scheme 'negotiate'
2026/03/27 10:59:14| Startup: Initialized Authentication Scheme 'ntlm'
2026/03/27 10:59:14| Startup: Initialized Authentication.
2026/03/27 10:59:14| Processing Configuration File: /etc/squid/squid.conf (depth 0)
2026/03/27 10:59:14| Processing: http_port 3128
2026/03/27 10:59:14| Processing: acl localnet src 192.168.0.128/27
2026/03/27 10:59:14| Processing: acl SSL_ports port 443
2026/03/27 10:59:14| Processing: acl Safe_ports port 80 443 8080
2026/03/27 10:59:14| Processing: acl CONNECT method CONNECT
2026/03/27 10:59:14| Processing: acl blacklist_domains dstdomain "/etc/squid/blacklist.txt"
2026/03/27 10:59:14| Processing: http_access deny blacklist_domains
2026/03/27 10:59:14| Processing: http_access deny !Safe_ports
2026/03/27 10:59:14| Processing: http_access deny CONNECT !SSL_ports
2026/03/27 10:59:14| Processing: http_access allow localnet
2026/03/27 10:59:14| Processing: http_access deny all
2026/03/27 10:59:14| Processing: access_log /var/log/squid/access.log squid
2026/03/27 10:59:14| Initializing https:// proxy context Un cop això queda comprovat ja podem passar a fer una comprovació bàsica des d’un client, veure si el proxy realment és funcional, ho farem des d’un client Rocky.
[vagrant@rocky-client ~]$ curl -I http://google.com
HTTP/1.1 301 Moved Permanently
Location: http://www.google.com/
Content-Type: text/html; charset=UTF-8
Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-Tdt7vP5cc7BvYphQSPDwhA' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
Reporting-Endpoints: default="//www.google.com/httpservice/retry/jserror?ei=RF3GabOhD6ubptQPnIjQ0Ak&cad=crash&error=Page%20Crash&jsel=1&bver=2410&dpf=FeUwMSjaU9UgJ5fwegG8UdDUkxP4QeMMHNfylhFYXDA"
Date: Fri, 27 Mar 2026 10:34:44 GMT
Expires: Sun, 26 Apr 2026 10:34:44 GMT
Cache-Control: public, max-age=2592000
Server: gws
Content-Length: 219
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
X-Cache: MISS from debian
X-Cache-Lookup: MISS from debian:3128
Via: 1.1 debian (squid/5.7)
Connection: keep-alive Com es pot veure pel resultat el nostre Rocky sí que està passant pel Proxy, que filtra correctament.