Tenho brincado com alguns softwares de proxy de encaminhamento diferentes, principalmente CCProxy e Squid Proxy/Cache. O que tenho é um servidor dedicado com uma única NIC com vários IPs atribuídos a ele. Um IP é estático e os demais são dinâmicos. O IP estático atua como um endereço primário, que é como eu acesso meu servidor proxy, os outros são endereços IP dinâmicos para web scraping e outras tarefas. Criei um proxy no CCProxy e ele permite vincular um usuário a um endereço IP de saída específico, isso é muito útil para o que estou fazendo, permitindo-me atribuir diferentes tarefas a diferentes IPs.
Então, o que eu queria saber se isso era possível fazer no Squid Proxy?
Adoro como o Squid é personalizável, mas realmente poderia usar esse recurso.
Desde já agradeço, Joe
Responder1
A opção para fazer isso étcp_outgoing_address
:
Permite mapear solicitações para diferentes endereços IP de saída com base no nome de usuário ou endereço de origem do usuário que fez a solicitação.
"endereço IP de saída" realmente significa "IP de origem". Agora você pode escolher umacldistinguir seu usuário por qualquer meio disponível, IP do cliente ( acl ... src ...
),autenticação de proxy simples(auth_param
+basic_ncsa_auth
) etc
Exemplo adaptado da documentação, usando o IP de origem como seletor, onde o servidor squid estaria possuindo vários IPs na 192.0.2.0/24
LAN com seu IP primário 192.0.2.1
. Adicionando isso à amostra 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á clientes de allowed_clients
e fará com que eles usem IP de saída 192.0.2.10
, exceto para o cliente do 198.51.100.174
qual obterá 192.0.2.174
. Qualquer outro cliente configurado em outro lugar que não seja neste exemplo seria usado 192.0.2.5
e o IP primário do servidor nunca seria usado.