He estado jugando con algunas piezas diferentes de software de proxy directo, principalmente CCProxy y Squid Proxy/Cache. Lo que tengo es un servidor dedicado con una única NIC con varias IP asignadas. Una IP es estática y el resto son dinámicas. La IP estática actúa como una dirección principal, que es la forma en que accedo a mi servidor proxy, las otras son direcciones IP dinámicas para web scraping y otras tareas. He creado un proxy en CCProxy y te permite vincular un usuario a una dirección IP saliente específica, esto es realmente útil para lo que estoy haciendo, permitiéndome asignar diferentes tareas a diferentes IP.
Entonces, ¿me preguntaba si esto era posible hacer en Squid Proxy?
Me encanta lo personalizable que es Squid, pero realmente me vendría bien esta función.
Gracias de antemano joe
Respuesta1
La opción para hacer esto estcp_outgoing_address
:
Le permite asignar solicitudes a diferentes direcciones IP salientes según el nombre de usuario o la dirección de origen del usuario que realiza la solicitud.
"Dirección IP saliente" realmente significa "IP de origen". Ahora puedes elegir unacclpara distinguir a su usuario por cualquier medio disponible, la IP del cliente ( acl ... src ...
),autenticación de proxy simple(auth_param
+basic_ncsa_auth
) etc.
Ejemplo adaptado de la documentación, utilizando la IP de origen como selector, donde el servidor squid poseería varias IP en la 192.0.2.0/24
LAN con su IP principal 192.0.2.1
. Agregando esto a la muestra típica squid.conf
:
acl allowed_clients src 198.51.100.0/24
http_access allow allowed_clients
acl dedicated_client1 src 198.51.100.174
tcp_outgoing_address 192.0.2.174 dedicated_client1
tcp_outgoing_address 192.0.2.10 allowed_clients
tcp_outgoing_address 192.0.2.5
permitirá a los clientes de allowed_clients
y les hará usar IP saliente 192.0.2.10
, excepto el cliente del 198.51.100.174
que obtendrá 192.0.2.174
. Cualquier otro cliente configurado en otro lugar distinto de este ejemplo lo usaría 192.0.2.5
y nunca se usará la IP principal del servidor.