GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y configurar Squid Proxy en Ubuntu 20.04

Squid es un proxy de almacenamiento en caché para la Web que admite HTTP, HTTPS, FTP y más. Reduce el ancho de banda y mejora los tiempos de respuesta al almacenar en caché y reutilizar las páginas web solicitadas con frecuencia. Squid tiene amplios controles de acceso y es un excelente acelerador de servidores. Se ejecuta en la mayoría de los sistemas operativos disponibles.

El proxy inverso de Squids es un servicio que se encuentra entre Internet y el servidor web (generalmente dentro de una red privada) que redirige las solicitudes entrantes de los clientes a un servidor donde se almacenan los datos para facilitar su recuperación. Si el servidor de almacenamiento en caché (proxy) no tiene los datos almacenados en caché, reenvía la solicitud al servidor web donde se almacenan realmente los datos. Este tipo de almacenamiento en caché permite la recopilación de datos y la reproducción de los valores de datos originales almacenados en una ubicación diferente para facilitar el acceso.

Un proxy inverso generalmente proporciona una capa adicional de control para suavizar el flujo de tráfico de red entrante entre sus clientes y el servidor web.

Al seleccionar un sistema informático para usarlo como un servidor proxy de almacenamiento en caché Squid dedicado, muchos usuarios se aseguran de que esté configurado con una gran cantidad de memoria física (RAM), ya que Squid mantiene un caché en memoria para un mayor rendimiento.

Contenido relacionado:

  • Cómo instalar y configurar Squid Proxy en Debian 11

Requisitos

  • Un servidor Ubuntu 20.04 actualizado con al menos 1 GB de RAM
  • Acceso raíz al servidor o usuario con acceso sudo
  • Acceso a Internet desde el servidor

Tabla de contenido

  1. Asegurarse de que el servidor esté actualizado
  2. Instalando el servidor proxy squid
  3. Iniciando y habilitando el servicio squid
  4. Configuración de su navegador web
  5. Configurando calamar
  6. Uso de la lista de control de acceso (ACL) del proxy squid
  7. Uso de Squid para almacenar en caché páginas web

1. Asegurarse de que el servidor esté actualizado

Antes de continuar, asegurémonos de que nuestro servidor tenga paquetes actualizados. Usa este comando para lograrlo:

sudo apt update
sudo apt upgrade -y

2. Instalando el servidor proxy Squid

Los paquetes que proporcionan el servidor proxy squid están disponibles en los repositorios predeterminados de Ubuntu. Instálalo usando este comando:

sudo apt install -y squid

Confirme que el paquete se instaló como se esperaba

$ apt-cache policy squid
squid:
  Installed: 4.10-1ubuntu1.5
  Candidate: 4.10-1ubuntu1.5
  Version table:
 *** 4.10-1ubuntu1.5 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
        100 /var/lib/dpkg/status
     4.10-1ubuntu1 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal/main amd64 Packages

3. Iniciando y habilitando el servicio squid

El servidor proxy squid se iniciará de forma predeterminada en nuestro sistema Ubuntu. Para verificar el estado, emita este comando:

$ sudo systemctl status squid
● squid.service - Squid Web Proxy Server
     Loaded: loaded (/lib/systemd/system/squid.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-01-03 06:44:10 UTC; 15s ago
       Docs: man:squid(8)
    Process: 48771 ExecStartPre=/usr/sbin/squid --foreground -z (code=exited, status=0/SUCCESS)
    Process: 48774 ExecStart=/usr/sbin/squid -sYC (code=exited, status=0/SUCCESS)
   Main PID: 48776 (squid)
      Tasks: 4 (limit: 4631)
     Memory: 15.5M
     CGroup: /system.slice/squid.service
             ├─48776 /usr/sbin/squid -sYC
             ├─48778 (squid-1) --kid squid-1 -sYC
             ├─48779 (logfile-daemon) /var/log/squid/access.log
             └─48780 (pinger)

Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Max Swap size: 0 KB
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Using Least Load store dir selection
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Set Current Directory to /var/spool/squid
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Finished loading MIME types and icons.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: HTCP Disabled.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Pinger socket opened on FD 14
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Squid plugin modules loaded: 0
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Adaptation support is off.
Jan 03 06:44:10 ubuntusrv.citizix.com squid[48778]: Accepting HTTP Socket connections at local=[::]:3128 remote=[::] FD 12 flags=9
Jan 03 06:44:11 ubuntusrv.citizix.com squid[48778]: storeLateRelease: released 0 objects

Podemos confirmar que el servicio se está ejecutando desde el comando anterior. Para asegurarse de que el servicio se inicia en el arranque, use el comando habilitar:

sudo systemctl enable squid

4. Configuración para su navegador web

Antes de realizar cualquier cambio en el archivo de configuración de squid, debe cambiar algunas configuraciones en su navegador web. Entonces, abra su navegador web y abra "configuración de red", luego proceda a "configuración de proxy". Haga clic en la configuración de "proxy manual", luego escriba la IP_Address  de su servidor proxy squid en la barra de proxy HTTPnúmero de puerto  (de forma predeterminada, el puerto proxy de squid es 3128). Ahora, el proxy de squid pasará por su IP_Address. Puede verificarlo escribiendo cualquier URL en su navegador web; te dará un error diciendo acceso denegado, y para permitir el acceso, tenemos que hacer cambios en el archivo de configuración de squid.

5. Configurando Squid

El archivo de configuración predeterminado de Squid se encuentra en /etc/squid/ directorio, y el archivo de configuración principal se llama squid.conf . Este archivo contiene la mayor parte de las directivas de configuración que se pueden modificar para cambiar el comportamiento de Squid. Las líneas que comienzan con un # , están comentados o no son leídos por el archivo. Estos comentarios se proporcionan para explicar qué significan los valores de configuración relacionados.

Para editar el archivo de configuración, comencemos por hacer una copia de seguridad del archivo original, en caso de que necesitemos revertir los cambios si algo sale mal o usarlo para comparar las configuraciones del nuevo archivo.

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.bak

Ahora que se ha realizado una copia como archivo de respaldo, podemos realizar cambios en el archivo "squid.conf".

Para abrir el archivo "squid.conf" en vim, escriba este comando:

sudo vim /etc/squid/squid.conf

Ir a la línea

http_access deny all

Cámbialo por:

http_access allow all

Deberá reiniciar el servidor proxy de squid para que se apliquen los cambios. Usa este comando:

sudo systemctl restart squid

Ahora, vuelva a revisar su navegador web, escriba cualquier URL y debería estar funcionando.

6. Uso del proxy squid ACL (Lista de control de acceso)

También podemos usar Squid para controlar el acceso a diferentes sitios web (tráfico web) permitiéndolos o bloqueándolos. Para hacerlo, vaya a la línea acl CONNECT method CONNECT .

Y debajo de esta línea, escriba la ACL (lista de control de acceso) para bloquear los sitios web que desee.

acl block_websites dstdomain .facebook.com .youtube.com .instagram.com

Luego niega la declaración.

http_access deny block_websites

Guarde los cambios y para verificar si sus sitios web bloqueados están bloqueados o no, reinicie su servicio de squid y verifique la URL en su navegador web.

También puede impedir que un usuario descargue archivos específicos, como archivos de audio y video, usando ACL .

acl  media_files  urlpath_regex -i  \.(mp3|mp4|FLV|AVI|MKV)

Evitará que el usuario descargue archivos de audio o video con extensiones como mp3, mp4, FLV, etc. Agregue cualquier extensión de archivo que desee evitar que se descargue. Ahora, debajo de esta línea, escriba la declaración de denegación.

http_access deny media_files

Entonces se bloqueará la descarga de los archivos multimedia.

7. Uso de Squid para almacenar en caché las páginas web

Los servidores proxy también se utilizan para aumentar el rendimiento de la red al cargar la página web más rápido al almacenar en caché los datos del sitio web. También puede cambiar la ubicación del directorio donde se deben almacenar los datos almacenados en caché. Además, también puede cambiar el tamaño del archivo de caché y no. de directorios en los que se guardarían los datos.

Para hacer cambios, abre squid.conf archivo y vaya a la siguiente línea:

#chache_dir ufs /opt/squid/var/cache/squid 100 16 256

Esta línea se comentará de forma predeterminada, por lo tanto, elimine el comentario de esta línea eliminando el # firmar.

En la línea anterior, hay una frase "100 16 256 ”. Los 100 muestra el tamaño del archivo de caché y puede cambiarlo a cualquier tamaño, como 300. 16 muestra el número de directorios en los que se guarda el archivo de caché. 256  muestra el nro. de subdirectorios.

chache_dir ufs /opt/squid/var/cache/squid 300 20 260

También puede cambiar el tamaño del archivo de caché agregando la siguiente línea en el archivo "squid.conf":

cache_mem 300 MB

Si desea cambiar la ruta del directorio de archivos de caché, cree una nueva estructura de directorios con este comando:

sudo mkdir -p /path/where/you/want/to/place/file

Para cambiar la propiedad del directorio de caché a squid proxy, debe ejecutar este comando:

sudo chown -R proxy:proxy /path/where/you/want/to/place/file

Ahora, detenga el servicio de squid usando este comando:

sudo systemctl stop squid

Y luego ejecute el comando con este comando para hacer que los directorios de caché que faltan en el nuevo directorio de caché:

sudo squid -z

Ahora, inicie el servicio de squid nuevamente usando el siguiente comando:

sudo systemctl start squid

Conclusión

Hemos logrado instalar y configurar el servidor proxy squid en esta guía. Squid proxy es una herramienta muy buena que puede ser utilizada en organizaciones o por pequeños proveedores de servicios de Internet para controlar el tráfico web y el acceso a Internet. Aumenta la velocidad de navegación web y proporciona mecanismos de seguridad para el tráfico web.


Ubuntu
  1. Cómo configurar e instalar Squid Proxy Server en Ubuntu 18.04

  2. Cómo instalar y configurar un servidor NFS en Ubuntu 20.04

  3. Cómo instalar y configurar el servidor DHCP en Ubuntu 20.04

  4. Cómo instalar y configurar el servidor Redis en Ubuntu

  5. Cómo instalar y configurar Squid Proxy en Debian 11

Cómo instalar y configurar Squid Proxy en Ubuntu, Linux Mint

Cómo configurar Squid Proxy Server en Ubuntu 20.04 LTS

Cómo instalar y configurar el servidor LAMP en Ubuntu

Cómo instalar y configurar el servidor OpenLDAP en Ubuntu 16.04

Cómo instalar y configurar VNC en Ubuntu Server 20.04

Cómo instalar el servidor proxy Squid en Ubuntu 18.04