Gostaria de implementar a autenticação baseada em IP nos meus servidores proxy. Considere um usuário do meu serviço chamado user1
. Aqui está o que meu ACL parece atualmente para isso:
acl user11 proxy_auth [-i] user11
acl user12 proxy_auth [-i] user12
acl user13 proxy_auth [-i] user13
com uma atribuição de endereço IP de saída correspondente:
tcp_outgoing_address 175.25.11.25 user11
tcp_outgoing_address 175.25.11.26 user12
tcp_outgoing_address 175.25.11.27 user13
Dessa forma, user1
pode usar vários endereços IP de saída adicionando um número ao nome de usuário ao autenticar.
Eu quero que user1
tenha acesso a muitos endereços IP de saída, mas use autenticação baseada em IP. Pelo que entendi, eu faria autenticação baseada em IP assim:
acl user11 10.0.0.1
acl user12 10.0.0.1
acl user13 10.0.0.1
Mas isso não funcionará porque o usuário não tem como usar / especificar um endereço IP de saída diferente. Isso deve significar que eu tenho que usar uma porta diferente para cada endereço IP de saída.
Suponha que o IP principal do meu servidor seja 175.25.11.1
(ao qual o usuário se conectará) e eu queria que cada porta à qual eles se conectassem tenha um endereço IP de saída diferente. Vamos supor também que o IP do usuário é 10.0.0.1
e queremos usar a autenticação baseada em IP. Do jeito que eu entendo, é assim que eu faria isso:
http_port 175.25.11.1:3128 name=3128
http_port 175.25.11.1:3129 name=3129
http_port 175.25.11.1:3130 name=3130
acl user13128 myportname 3128 src 10.0.0.1 http_access allow user13128 tcp_outgoing_address 175.25.11.25 user13128
acl user13129 myportname 3129 src 10.0.0.1 http_access allow user13129 tcp_outgoing_address 175.25.11.26 user13129
acl user13130 myportname 3130 src 10.0.0.1 http_access allow user13130 tcp_outgoing_address 175.25.11.27 user13130
Por favor corrija-me se estiver errado. Minha pergunta é, posso configurar a autenticação baseada em IP para que eu possa alterá-la em 1 lugar no meu squid.conf
. Dessa forma, se o usuário alterar seu IP, não preciso reescrever uma lista enorme de ACL. Considere que esse servidor tem 10.000 endereços IP vinculados a ele. Posso usar algum tipo de curinga que diz:
acl user1* src 10.0.0.1 http_access allow
Por favor, corrija qualquer erro que eu possa ter aqui. Esta é minha primeira tentativa de autenticação baseada em IP.