En este tutorial, le mostraremos cómo instalar Squid Proxy en CentOS 8. Para aquellos de ustedes que no lo sabían, Squid es un proxy de almacenamiento en caché para la Web compatible con HTTP, HTTPS, FTP y más. Varias organizaciones y proveedores de Internet utilizan Squid proxy para reducir el ancho de banda y aumentar el tiempo de respuesta.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré paso a paso la instalación de Squid en un servidor CentOS 8.
Requisitos previos
- Un servidor que ejecute uno de los siguientes sistemas operativos:CentOS 8.
- Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas.
- Un
non-root sudo user
o acceder alroot user
. Recomendamos actuar como unnon-root sudo user
, sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.
Instalar Squid Proxy en CentOS 8
Paso 1. Primero, comencemos asegurándonos de que su sistema esté actualizado.
sudo dnf update
Paso 2. Instalación de Squid Proxy en CentOS 8.
El proxy Squid está disponible en los repositorios predeterminados de CentOS 8 y se puede instalar ejecutando el comando:
sudo dnf install squid
Una vez finalizada la instalación, iníciela y habilítela en el inicio del sistema usando los siguientes comandos:
sudo systemctl enable --now squid
Paso 3. Configuración de Squid Proxy.
Antes de que pueda comenzar a personalizar la configuración de Squid para satisfacer sus necesidades, cree la copia de seguridad del archivo de configuración:
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.ori
Ahora abrimos el archivo de configuración principal de squid y agregamos/editamos lo siguiente:
nano /etc/squid/squid.conf
# Recommended minimum configuration: auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd acl ncsa_users proxy_auth REQUIRED http_access allow ncsa_users acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT http_access allow manager localhost http_access deny manager http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access deny all http_port 3128 hierarchy_stoplist cgi-bin ? coredump_dir /var/spool/squid cache deny all refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 icp_port 3130 forwarded_for off request_header_access Allow allow all request_header_access Authorization allow all request_header_access Proxy-Authorization allow all request_header_access Proxy-Authenticate allow all request_header_access Cache-Control allow all request_header_access Content-Encoding allow all request_header_access Content-Length allow all request_header_access Content-Type allow all request_header_access Date allow all request_header_access Expires allow all request_header_access Host allow all request_header_access If-Modified-Since allow all request_header_access Last-Modified allow all request_header_access Location allow all request_header_access Pragma allow all request_header_access Accept allow all request_header_access Accept-Charset allow all request_header_access Accept-Encoding allow all request_header_access Accept-Language allow all request_header_access Content-Language allow all request_header_access Mime-Version allow all request_header_access Retry-After allow all request_header_access Title allow all request_header_access Connection allow all request_header_access Proxy-Connection allow all request_header_access User-Agent allow all request_header_access Cookie allow all request_header_access All deny all visible_hostname idroot.us
Luego, cree nuestro archivo de autenticación que Squid puede usar para verificar las autenticaciones de los usuarios:
htpasswd -b /etc/squid/squid_passwd username password
Paso 4. Configure el cortafuegos para Squid.
Si un firewall está habilitado, permita el puerto Squid. Reemplace el puerto si ha cambiado el predeterminado:
firewall-cmd --add-port=3128/tcp --permanent firewall-cmd --reload
Finalmente, paso a paso la parte de configuración, ahora es el momento de probar la navegación señalando la IP de squid y el puerto predeterminado en el navegador del cliente. En su Firefox, configúrelo para conectarse a la red externa a través de su servidor Squid. Preferencias> General> Configuración de red> Configuración manual de proxy. Marque para Usar este servidor proxy para todos los protocolos.
¡Felicitaciones! Ha instalado squid con éxito. Gracias por usar este tutorial para instalar el proxy squid en el sistema CentOS 8. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial de squid.