Se você já tentou configurar seu Squid como proxy transparente e com autenticação ao mesmo tempo e nunca conseguiu, chegou a solução! NatACL, um pequeno software, porém muito útil, que faz ambos funcionarem ao mesmo tempo no Squid e que ainda trafega os dados com criptografia SSL, aumentando a segurança na autenticação.
Se você quiser trocar a tela de login, que por sinal é feia pra caramba :D, basta trocar os arquivos /var/NatACL/html/login.html e /var/NatACL/html/main.html.
Se você quiser usar outro método se autenticação, coloque o módulo no diretório /var/NatACL/modules/auth e configure o arquivo de configuração.
Quem sabe você pode usar o LDAP.
Conclusão
Com esse artigo espero ter contribuído para as pessoas que tem dúvidas sobre como fazer autenticação com proxy transparente. Um ponto forte desse programa é a parte de segurança, que vem com criptografia SSL, por isso não vai ser qualquer sniffer que vai derrubar seu sistema de autenticação.
[1] Comentário enviado por erhnamdjinm em 18/09/2006 - 09:00h
Estive procurando na internet mais informações sobre o NatACL, mas não achei nada falando sobre proxy transparente para https. O NatACL faz proxy transparente para páginas https???
[3] Comentário enviado por tatototino em 18/09/2006 - 10:07h
Esqueci de explicar como colocar o squid como proxy transparente, para isso adicione essas linhas no seu arquivo de configuração do Squid "squid.conf":
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
[6] Comentário enviado por herloncamargo em 18/09/2006 - 21:17h
Gostaria de saber dos colegas que já usaram o NatACL duas coisas:
1 - quantas máquinas vocês já colocaram simultaneamente sob o NatACL? Quando eu coloco umas 4 ou 5 o processador do roteador vai a 100 %. É um Pentium III 800 MHz com 1 GB de ram.
[7] Comentário enviado por tatototino em 19/09/2006 - 07:38h
Estranho!
Pois ele só é usado quando alguem tenta acessar a porta 80 sem ter sido autentificado, caso haja a autentificação ele libera a conexão depois disso ele não influi mas em nada.
Será que não é problema no seu servidor proxy, ou no próprio roteador?
Também pode o caso de você não desabilita a Opção de DNS do NatACL, toda a requisição que te m como destino a porta 53, irá para o seu roteador.
[8] Comentário enviado por pcnmota em 19/09/2006 - 09:41h
Caro Tatotino,
Configurei aqui o NatACL normalmente sem maiores problemas, mas ao quando tento acessar ele nao me mostra nem a tela de login. O q pode estar errado?, segue abaixo meu NatACL.conf, lembrando q ja desabilitei o firewall:
# LAN_INTERFACE
# Set the network who will have access to this program
# LAN_INTERFACE [interface] [network/class]
# If you have only one lan interface, you may remove one line.
LAN_INTERFACE eth1 192.168.10.0
# WAN_INTERFACE
# Set the output internet address
# WAN_INTERFACE [interface] [local address]
WAN_INTERFACE eth1 192.168.10.1
# NAT_TYPE
# Configure the type of your network nat/firewall
# You can create you own type, just add the respective configuration to the RULE section.
# Default existing configuration:
#IPTABLES_NAT
#IPTABLES_PROXY
#IPFW_NAT
#IPFW_PROXY
NAT_TYPE: IPTABLES_PROXY
#define if you will allow simultaneous users at the same tame
SIMULTANEOUS_LOGON: NO
#If you use Freebsd and IPFW/NATD You must set the NATD port
#NATD_PORT: 31000
#If you use Proxy instead NAT, you must define the PROXY PORT
PROXY_PORT: 301
# MODULE CONFIGURATION
#************************************************************************
# AUTH_UNIX
# Set the expire time and expire method for users using the unix password
# Args: EXPIRE_TIME <Time to live in seconds>
# EXPIRE_PING
# EXPIRE_PINGTIME <Time to live in seconds>
# EXPIRE_POPUP
#
# Ex;
# AUTH_UNIX TYPE EXPIRE_TIME 3600
# or
# AUTH_UNIX TYPE EXPIRE_POPUP
# or
# AUTH_UNIX TYPE EXPIRE_PING
# or both ( ping + time )
# AUTH_UNIX TYPE EXPIRE_PINGTIME 3600
# WARNING: If you use Expire_POPUP, make sure that you have an anti-popup browser disabled.
#AUTH_UNIX TYPE EXPIRE_TIME 3600
#
# AUTH_MYSQL
# Set the configuration to the mysql database
# Args: Mysql_Host Mysql_db Mysql_user Mysql_password
# Ex. AUTH_MYSQL 127.0.0.1 NatACL User "password"
AUTH_MYSQL 127.0.0.1 NatACL root senha
# RULE SECTION
#************************************************************************
# You dont have to alter this part, unless you know what are you doing.
# You can have multiples configuration, even if you dont have a specific firewall. It will not matter.
# Set the NAT_TYPE to your specific rule.
# START RULE - Is executed only once, when NatACL is run.
# INIT RULE - Is executed one time for each LAN_INTERFACE, when NatACL is run.
# GRANT RULE - Is executed when a user logon.
# REVOKE RULE - Is executed when a user expires.
# Rules for Freebsd IPFW_NAT
#IPFW_NAT START "ipfw del 8"
#IPFW_NAT START "ipfw del 9"
#IPFW_NAT START "ipfw del 10"
#IPFW_NAT INIT "ipfw add 10 fwd 127.0.0.1,5121 tcp from [LAN_INTERFACE] to any 80"
#IPFW_NAT INIT "ipfw add 10 fwd 127.0.0.1,5122 tcp from [LAN_INTERFACE] to any 5122"
#IPFW_NAT GRANT "ipfw add 8 divert [NATD_PORT] ip from [CLIENT_ADDRESS] to any out xmit [WAN_INTERFACE] "
#IPFW_NAT GRANT "ipfw add 9 skipto 11 all from [CLIENT_ADDRESS] to any"
#IPFW_NAT REVOKE "ipfw del 8 divert [NATD_PORT] ip from [CLIENT_ADDRESS] to any out xmit [WAN_INTERFACE] "
#IPFW_NAT REVOKE "ipfw del 9 skipto 11 all from [CLIENT_ADDRESS] to any"
# Rules for Freebsd IPFW_PROXY - PROXY PORT
#IPFW_PROXY START "ipfw del 8"
#IPFW_PROXY START "ipfw del 9"
#IPFW_PROXY START "ipfw del 10"
#IPFW_PROXY INIT "ipfw add 10 fwd 127.0.0.1,5121 tcp from [LAN_INTERFACE] to any 80"
#IPFW_PROXY INIT "ipfw add 10 fwd 127.0.0.1,5122 tcp from [LAN_INTERFACE] to any 5122"
#IPFW_PROXY GRANT "ipfw add 8 fwd 127.0.0.1:[PROXY_PORT] tcp from [CLIENT_ADDRESS] to any 80"
#IPFW_PROXY GRANT "ipfw add 9 skipto 11 all from [CLIENT_ADDRESS] to any"
#IPFW_PROXY REVOKE "ipfw del 8 fwd 127.0.0.1:[PROXY_PORT] tcp from [CLIENT_ADDRESS] to any 80"
#IPFW_PROXY REVOKE "ipfw del 9 skipto 11 all from [CLIENT_ADDRESS] to any"
Lembrando q meu squid roda na porta 301 e tentei usando regra de redirecionamento e sem ela tambem e nada..
[10] Comentário enviado por pcnmota em 19/09/2006 - 11:26h
Amigo, eu vou tentar o lance da LAN_INTERFACE, mas so para exclarecer no AUTH_MYSQL 127.0.0.1 NatACL root senha, eu coloquei assim so pra exemplo no meu arquivo aqui esta com a senha .
[11] Comentário enviado por tianguapontocom em 21/09/2006 - 03:57h
meu fire tem muita coisa, e nao queria deixar ele de mao, teria como eu usar esse sistema sem deixar de usar meu fire?
como posso fazer isso?
desde ja grato
[12] Comentário enviado por tatototino em 21/09/2006 - 06:36h
Tem que saber se seu firewall vai bloquear o NatACL, se seu firewall não ter nehuma regra bloqueando o NatACL irá funcionar perfeitamente, se houver alguma regra bloqueando é só arrumar a regra para aceitar o NatACL que só usa uma porta para gerenciar, a porta do seu servidor proxy e a porta 80 para liberar a conexão!
[14] Comentário enviado por leo_mineiro em 21/09/2006 - 17:48h
Boa tarde pessoal
Por favor, alguém sabe como faço para deslogar uma seção iniciada com o NatACL?
Pra ser mais claro: segui o tutorial e funcionou bem (parabéns ao tatototino), o problema é que uma vez autenticado, só faz logout assim que reinicio o servidor.
Eu gostaria de saber, por favor, se alguém já teve esse problema e se tem como resolver. Seria legal se ficasse como a atenticação do nsca_auth, que ao fechar o navegador, expira a seção.
[15] Comentário enviado por tatototino em 21/09/2006 - 21:08h
Tem vários métodos de expiração de sessão, não vou ficar falando como funciona cada um deles, vou deixar o link para vocês saberem melhor os métodos, o link é esse:
[18] Comentário enviado por tatototino em 22/09/2006 - 12:37h
tianguapontocom não entendi muito bem como funciona seu firewall, mas o NatACL não vai mudar a porta do seu NAT nem o IP nem o endereço MAC da sua placa de rede, vou explicar resumidamente como ele funciona aqui, para você enteder seu funcionamento para implementar ele a sua rede.
1- Caso você não tenha se autenticado ainda, ele vai redirecionar a conexão dos seus clientes de redes para a porta do NatACL;
2- Se seu login e senha estiver correto ele vai liberar a conexão para a porta do seu NAT( a porta 80);
3- Quando expirar a sessão ele vai tirar a regra que ele fez para bloquear a conexão.
Por isso ele não vai mudar nada no seu firewall, ele só vai adicionar mais algumas regras.
[19] Comentário enviado por h_pesserl em 22/09/2006 - 16:46h
Gostaria de saber se tem como usar este squid + proxy transparente + autenticação em conjunto com o meu pdc Windows. Na verdade o que quero saber é se posso usar minha autenticação do windows para autenticar ja no squid, sem ter que ficar digitando usuario e senha toda vez, ou seja, quando me logo no terminal com a minha senha do PDC windows no dominio, se ele ja pode se logar no squid tambem. acho que e isso. muito obrigado
[24] Comentário enviado por tatototino em 03/10/2006 - 19:07h
O NatACL dá suporte ao *BSDs!
Para configurar o NatACL no *BSD basta editar o arquivo de configuração do NatACL, para usar o firewall do *BSD que geralmente é o IPFW:
src/modules/auth_unix/main.c:11:20: shadow.h: No such file or directory
src/modules/auth_unix/main.c: In function `run_module':
src/modules/auth_unix/main.c:50: warning: assignment makes pointer from integer without a cast
src/modules/auth_unix/main.c:53: error: dereferencing pointer to incomplete type
src/modules/auth_unix/main.c:55: error: dereferencing pointer to incomplete type
O próprio dono do projeto um Brasileiro chamado Fabio Yasusi comenta sobre o tutorial e da nova versão do NatACL com controle por mac, dhcp e outas melhorias.
[31] Comentário enviado por jacksonsantos em 14/11/2006 - 13:52h
Artigo muito bom, porém tenho certas dúvidas
Configurei tudo como especificado, mas quando tento acessar digitando login e senha, ele me responde com Invalid Password. Onde está op problema ?
Como posso implementar outro meio de autenticação ?
O squid vai identificar os logins autenticados pelo NatACL ?
Realmente preciso desta solução funcionando,
Atenciosamente,
Jackson
[32] Comentário enviado por tatototino em 15/11/2006 - 13:08h
Caro cleison, usei essa versão do NatACL por causa de dependencias da nova versão do NatACL, outro motivo é que a nova versão usa um gerenciador de banco de dados (SQLite) que não é muito utilizado.
Jacksonsantos,todas as suas perguntas poderão ser respondidas lendo a documentação do programa, deixei o link no artigo.
Desculpe por não ter ajudar agora, pois não estou com ele intalado no momento. Mesmo assim vou tentar ajuda-lo!
A primeira pergunta, você pode verificar a senha no MySQL. Verificar se o Daemon do NatACL está rodando, pode fazer isso usando qualquer scaneador.
A segunda pergunta, Há 3 métodos de autenticação, pelo MySQL, pelo usuários do sistema, você pode conferir tudo isso na documentação.
A terceira pergunta já expliquei acima como o NatACL funciona.
[33] Comentário enviado por aazevedo1984 em 19/11/2006 - 08:36h
Posso estar enganado, mas não me parece uma boa idéia ter a senha do root colocada em um arquivo texto desta forma sem criptografia, isso vai contra toda a idéia de segurança do arquivo shadow, ad ídeia é boa, mas precisa melhorar um pouco...
[34] Comentário enviado por tatototino em 19/11/2006 - 14:13h
# aqui você especifica o usuário e a senha para acessar o mysql
AUTH_MYSQL 127.0.0.1 NatACL root <senha>
Aqui você define a senha do MySQL, coloquei o usuário root por que é o meu administrador do MySQL, não tem nada ver com o usuários do sistema.
Mas mesmo assim, no MySQL você pode criar um usuário só para administrar a tabela que o NatACL usa.
Mas não entendi muito bem o que você quiz dizer com isso "idéia de segurança do arquivo shadow", que eu saiba com um simples programa dá para decifrar todo esse arquivo.
[35] Comentário enviado por amendes em 23/11/2006 - 13:36h
O usuário e senha do NATACL pode ser transferido automaticamente para o Squid? Estou perguntando, pois atualmente tenho um servidor squid rodando com autenticação, mas de forma precária.
[37] Comentário enviado por pmsinfo em 28/11/2006 - 08:49h
Bom dia,
Estou com problemas no NatACL, consegui estatar o mesmo, inclusive funciona o iptables dele interno, mas quando uso o equipamento externo para conexao ele nao me joga na pagina de login. Preciso de alguma configuracao no apache para que a tela apareca automaticamente? como por exemplo, necessito configurar a porta 51.. que ele usa para ler o diretorio de autenticacao? Quando digito no browser do equipamento da rede o ip do servidor ele me joga dentro da autenticacao, gostaria de saber o que preciso fazer para a autenticacao funcionar pois mesmo colocando o ip gera erro de cgi. O que necessito configurar no apache para que esta solucao funcione, pois mesmo com erro de cgi, apos logar ele liber o uso.
Carlos Ribeiro
pmsinfo@sacranet.com.br
[38] Comentário enviado por tatototino em 30/11/2006 - 03:18h
Caro pmsinfo, vou começar esclarecendo uma coisa, o NatACL não usa nehum servidor Web, então descate a configuração do Apache para resolver seu problema. Você deve ter feito alguma coisa errada na configuração do NatACL, verifique se seu MySQL está rondando perfeitamente, você pode usar algumas ferramentas para você resolver seu problema como o netcat "nc" para ver se está recebendo pacotes nas portas do daemons utilizados nesse processo de autentificação.
[39] Comentário enviado por pmsinfo em 30/11/2006 - 17:26h
O mysql esta funcional inclusive com o phpmyadmin funcionando, acrescentando e removendo usuarios. O problema é que não esta ocorrendo redirecionamento dos equipamentos da rede para o natacl que inclusive esta no ar, verificado pelo comando ps -aux. Gostaria de informações sobre possíveis modificações para o firewall que inclusive não adicionei nenhuma regra e o problema continua.
Obrigado pela ajuda,
Carlos Ribeiro
pmsinfo@sacranet.com.br
[40] Comentário enviado por tatototino em 01/12/2006 - 03:25h
Verifique as variávieis e as regras de iptables no arquivo de configuração do NatACL, caso consiga resolver poste aqui, para ajudar os outros que talvez terão os mesmo erros que você.
Obrigado!
[43] Comentário enviado por tatototino em 12/12/2006 - 00:25h
Coloquei as depedências no artigo. Pelo erro que está acontecendo, não está localizando a header "mysql.h", verifique se seu sistema tem essa header, se você tem o MySQL instalado deve estar no diretório "include" que é definida na instalação do MySQL.
[44] Comentário enviado por jacksonsan em 16/12/2006 - 01:40h
Caro tatototino,
Estou usando o slack11, o mysql5, o ultimo squid e apache2
Quando compilo o NatACL ele dá um erro que não encontrou o mysqlclient
Já tentei de tudo e pesquisei na internet, mas sem sucesso.
Você poderia me ajudar a resolver esse problema ?
[45] Comentário enviado por tatototino em 16/12/2006 - 07:07h
O "libmysqlclient.so" é uma biblioteca do MySQL, ele age na conexão com MySQL Server, é a principal biblioteca do MySQL cliente.
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Para os que teve o problema de encontrar a biblioteca "libmysqlclient.so":
#find /usr/ -name libmysql*
/usr/share/mysql/lib/mysql/libmysqlclient.a
/usr/share/mysql/lib/mysql/libmysqlclient.la
/usr/share/mysql/lib/mysql/libmysqlclient.so
/usr/share/mysql/lib/mysql/libmysqlclient.so.15
/usr/share/mysql/lib/mysql/libmysqlclient.so.15.0.0
----------------------------------------------------------------------------------------------------------------------------------------------------------------
O "mysql.h" é um header mais usado pelo MySQL em seu código, é preciso ter ele para que o MySQL funcione perfeitamente. Pois seus executáveis precisam dele.
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Para os que teve esse para encontrar boblioteca "mysql.h":
A maioira dos erros aqui não é relacionado ao programa principal do Artigo, é mais dos requerimentos dele como o MySQL que não abordei sua instalação e configuração.
[47] Comentário enviado por jacksonsan em 18/12/2006 - 23:14h
caro tatototino,
quando ao erro do mysql consegui resolver graças a sua dica. Instalei o mysql do pacote original do mysql e deu certo.
Mas agora outros erros ocorrem.
1)Não direciona para a página de login
2) Quando acesso http://192.168.0.1/ aparece a tela para aceitar o certificado
3)Ponho o login e a senha e aí aparece o erro:
while trying to retriev the url: http://192.168.0.1:3128
4)A conexão do meu servidor cai
Está assim o NatACL.conf
LAN_INTERFACE eth1 192.168.0.0/24
WAN_INTERFACE eth1 192.168.0.1
NAT_TYPE: IPTABLES_PROXY
SIMULTANEOUS_LOGON: NO
PROXY_PORT: 3128
AUTH_UNIX TYPE EXPIRE_POPUP # tentei com EXPIRE_PING_TIME também
O NatACL.log está assim:
[Mon Dec 18 22:04:30] [IPTABLES_PROXY] Init
[Mon Dec 18 22:04:30] [IPTABLES_PROXY] Added interface [eth1]
[Mon Dec 18 22:04:30] [IPTABLES_PROXY] Added interface [eth1]
[Mon Dec 18 22:04:30] [IPTABLES_PROXY] /sbin/iptables -t nat -I PREROUTING -i eth1 -p tcp -s 192.168.0.0/24 -d 0/0 --dport 80 -j DNAT --to-destination 192.168.0.1:5121
[Mon Dec 18 22:04:30] [IPTABLES_PROXY] /sbin/iptables -t nat -I POSTROUTING -p udp --dport 53 -j SNAT --to-source 192.168.0.1
[Mon Dec 18 22:05:13] [AUTH] [ 192.168.0.30] [ fabio] User Logged
[Mon Dec 18 22:05:13] [GRANT] Added granted rule to [192.168.0.30]
[Mon Dec 18 22:05:13] [NatACL] GRANT: fabio 1166490313 1 0 192.168.0.30
E o arquivo messages está assim
Dec 18 21:56:15 hotel dhcpd: DHCPREQUEST for 192.168.0.30 from 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 21:56:15 hotel dhcpd: DHCPACK on 192.168.0.30 to 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:01:15 hotel dhcpd: DHCPREQUEST for 192.168.0.30 from 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:01:15 hotel dhcpd: DHCPACK on 192.168.0.30 to 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:06:15 hotel dhcpd: DHCPREQUEST for 192.168.0.30 from 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:06:15 hotel dhcpd: DHCPACK on 192.168.0.30 to 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:11:15 hotel dhcpd: DHCPREQUEST for 192.168.0.30 from 00:13:46:65:d1:0a (fortaleza) via eth1
Dec 18 22:11:15 hotel dhcpd: DHCPACK on 192.168.0.30 to 00:13:46:65:d1:0a (fortaleza) via eth1
Colega, você poderia me dar mais uma dica de como resolver esse problema ?
[49] Comentário enviado por tatototino em 19/12/2006 - 03:38h
Pelo erro que deu deve ser erro na configuração do Squid, porta "3128". O erro está dizendo que não é possível acessar a porta do Squid.
Verifique suas configurações do Squid, veja se você colocou o Squid como proxy transparente. Esse erro não é de fato do NatACL, pois está logando o usuário e está liberando a porta do Squid para ser usada, que está dando erro ao ser acessada.
[50] Comentário enviado por tatototino em 19/12/2006 - 04:57h
Olá lavoie, o seu erro deve se o fato de não encontra essa header "ssl.h", verifique se você tem o pacote "OpenSSL" instalado, ou procure essa header com o comando find.
[52] Comentário enviado por lavoie em 20/12/2006 - 18:20h
entaum consegui !! instalar ufa !! porem
nao abre tela de login, na verdade quando chamo o NatACL ele bloquei a conexão da internet com o servidor.
Se alguem pude ajudar, nao abre a tela de autenticação , tem que alterar alguma coisa dentro do squid.conf ?
Quando acesso o browser do cliente digito: http://192.168.0.1
Aí aparece a tela de login
digito fabio e senha teste
Aí aparece no browser http://192.68.0.1:3128 dizendo qu não pode acessar a página
e no console do meu servidor aparece:
Missing [AUTH_UNIX] in /usr/local/etc/NatACL.conf
[57] Comentário enviado por tatototino em 22/12/2006 - 01:31h
jacksonsan, coloque aqui o erros que aparece na página.
Tente colocar outro site como "www.google.com.br", talvez seja que seu servidor não tem um Servidor Web rodando. Caso aconteça o mesmo erro poste aqui os erros que aparecem no browser.
[60] Comentário enviado por lavoie em 23/12/2006 - 19:59h
puts , to quase lá , aparece a tela de login so que não navega, nao aparece mensagem de erro, nao consigo mais conectar na net nem no servidor, acho que agora deve ser alguma coisa com as regras do iptables no arquivo de configuração NatACL.conf. vou postar meu arquivo , da uma olhada please.
# LAN_INTERFACE
# Set the network who will have access to this program
# LAN_INTERFACE [interface] [network/class]
# If you have only one lan interface, you may remove one line.
LAN_INTERFACE eth1 192.168.0.0/24
# WAN_INTERFACE
# Set the output internet address
# WAN_INTERFACE [interface] [local address]
WAN_INTERFACE eth1 192.168.0.1
# NAT_TYPE
# Configure the type of your network nat/firewall
# You can create you own type, just add the respective configuration to the RULE section.
# Default existing configuration:
#IPTABLES_NAT
#IPTABLES_PROXY
#IPFW_NAT
#IPFW_PROXY
NAT_TYPE: IPTABLES_NAT
#define if you will allow simultaneous users at the same tame
SIMULTANEOUS_LOGON: NO
#If you use Freebsd and IPFW/NATD You must set the NATD port
NATD_PORT: 31000
#If you use Proxy instead NAT, you must define the PROXY PORT
PROXY_PORT: 3128
# AUTH_UNIX
# Set the expire time and expire method for users using the unix password
# Args: EXPIRE_TIME <Time to live in seconds>
# EXPIRE_PING
# EXPIRE_PINGTIME <Time to live in seconds>
# EXPIRE_POPUP
#
# Ex;
# Ex;
# AUTH_UNIX TYPE EXPIRE_TIME 3600
# or
# AUTH_UNIX TYPE EXPIRE_POPUP
# or
# AUTH_UNIX TYPE EXPIRE_PING
# or both ( ping + time )
# AUTH_UNIX TYPE EXPIRE_PINGTIME 3600
# WARNING: If you use Expire_POPUP, make sure that you have an anti-popup browser disabled.
AUTH_UNIX TYPE EXPIRE_TIME 3600
#
# AUTH_MYSQL
# Set the configuration to the mysql database
# Args: Mysql_Host Mysql_db Mysql_user Mysql_password
# Ex. AUTH_MYSQL 127.0.0.1 NatACL User "password"
AUTH_MYSQL localhost NatACL root teste
# RULE SECTION
#************************************************************************
# You dont have to alter this part, unless you know what are you doing.
# You can have multiples configuration, even if you dont have a specific firewall. It will not matter.
# Set the NAT_TYPE to your specific rule.
# START RULE - Is executed only once, when NatACL is run.
# INIT RULE - Is executed one time for each LAN_INTERFACE, when NatACL is run.# GRANT RULE - Is executed when a user logon.
# REVOKE RULE - Is executed when a user expires.
[65] Comentário enviado por tatototino em 27/12/2006 - 00:35h
Dá sim, mas é preciso que você saiba um pouco da linguagem PHP.
Faça o PHP interligar ao MySQL, buscando as informações do banco de dados do NatACL e alterando-a.
Além disso você pode colocar vários argumentos na tabela do NatACL, como o nome completo do usuário, endereço, etc, para implemetar seu sistema.
2.cache.log
2006/12/27 20:52:59| The request GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'redelocal'
2006/12/27 20:52:59| The request GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'redelocal'
2006/12/27 20:52:59| WARNING: Forwarding loop detected for:
Client: 192.168.0.1 http_port: 192.168.0.1:3128
GET http://192.168.0.1:3128/ HTTP/1.0
Host: 192.168.0.1:3128
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pt-BR; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: pt-br,pt;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Via: 1.1 hotel:3128 (squid/2.6.STABLE4)
X-Forwarded-For: 192.168.0.30
Cache-Control: max-age=136800
Connection: keep-alive
2006/12/27 20:52:59| The reply for GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'redelocal'
2006/12/27 20:52:59| The reply for GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'all'
NatACL.log
[Wed Dec 27 20:52:59] [AUTH] [ 192.168.0.30] [ fabio] User Logged
[Wed Dec 27 20:52:59] [GRANT] Added granted rule to [192.168.0.30]
[Wed Dec 27 20:52:59] [NatACL] GRANT: fabio 1167263579 1 0 192.168.0.30
Colega, como já deve ter percebido, não sou especialista em linux. Estou meio frustrado poreque alguns colegas estão conseguindo e eu ainda nada.
Será que com esses arquivos, a gente poderia achar a solução do meu problema
[69] Comentário enviado por marceloespindola em 28/12/2006 - 21:24h
pessoal estou tentando instalar o NatAcl e está apresentando o seguinte erro
shownet-serveproxy:~/NatACL.20050311# make
cc build_make.c -o .fastmake/build_fast_make.bin
./.fastmake/build_fast_make.bin
Searching Library: [ xml2] NOT FOUND
Missing library: xml2
Exiting
make: ** [all] Erro 255
shownet-serveproxy:~/NatACL.20050311#
já tentei procurar o que é e não encontrei o pacote que ele necessita
[70] Comentário enviado por jacksonsan em 28/12/2006 - 22:07h
Caro tatototino, a seu pedido aí vai os arquivos de configuração
Ainda não aparece a tela de login automaticamente e quando acesso o ip do servidor para autenticar e entro com o login e senha, ele retorna a página "Access Denied http://192.168.0.1:3128"
2006/12/28 21:03:24| The reply for GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'redelocal'
2006/12/28 21:03:24| The reply for GET http://192.168.0.1:3128/ is ALLOWED, because it matched 'all'
4. access.log
1167350604.660 0 192.168.0.1 TCP_DENIED/403 1352 GET http://192.168.0.1:3128/ - NONE/- text/html
1167350604.661 25 192.168.0.30 TCP_MISS/403 1414 GET http://192.168.0.1:3128/ - DIRECT/192.168.0.1 text/html
5. NatACl.log
[Thu Dec 28 21:03:24] [AUTH] [ 192.168.0.30] [ fabio] User Logged
[Thu Dec 28 21:03:24] [GRANT] Added granted rule to [192.168.0.30]
[Thu Dec 28 21:03:24] [NatACL] GRANT: fabio 1167350604 1 0 192.168.0.30
[74] Comentário enviado por marceloespindola em 29/12/2006 - 18:35h
encontrei algumas das dependências do natacl e elas são as seguintes
libxml12-dev
libssl14-dev
libmysqlclient14-dev
a primeira tem que baixar neste link: ftp://xmlsoft.org/libxml2/libxml2-2.6.26.tar.gz como sugeriu o nosso amigo tatotino
a última podemos instalar atraves do comando apt-get install libmysqlclient14-dev
mas até agora não pode encontrar o segundo pacote, alguém pode me ajudar na empreitada?
3. cache.log
2006/12/30 11:54:23| Accepting ICP messages at 0.0.0.0, port 3130, FD 10.
2006/12/30 11:54:23| Accepting SNMP messages on port 3401, FD 11.
2006/12/30 11:54:23| Pinger socket opened on FD 12
2006/12/30 11:54:23| Loaded Icons.
2006/12/30 11:54:23| eventCleanup
2006/12/30 11:54:23| Ready to serve requests.
2006/12/30 11:54:23| storeLateRelease: released 0 objects
2006/12/30 11:56:31| WARNING: transparent proxying not supported
2006/12/30 11:56:31| The request GET http://192.168.0.1/ is ALLOWED, because it matched 'redelocal'
2006/12/30 11:56:31| Failed to select source for 'http://192.168.0.1/'
2006/12/30 11:56:31| always_direct = 0
2006/12/30 11:56:31| never_direct = 0
2006/12/30 11:56:31| timedout = 0
2006/12/30 11:56:31| The reply for GET http://192.168.0.1/ is ALLOWED, because it matched 'all'
[80] Comentário enviado por jacksonsan em 31/12/2006 - 01:57h
caro tatototino,
instalei o squid 2.5 e resolvi um pequeno problema de bios., ehehheh. Consegui fazer a captura da tela de login e navegar no meu cliente. Mais tarde testarei mais. Valeu pelas dicas e paciência.
Mas deixo aqui uma pergunta:
Tem como gerar relatório pelo sarg com o nome do usuário ?
Tem como armazenar em banco de dados o tempo que o usuário passou logado ?
[83] Comentário enviado por jacksonsan em 02/01/2007 - 12:05h
Caro tatototino,
Estava testando o NatACL e percebi alguns problemas de robustez, como:
Enquanto o usuário se logar, antes de autenticar ele clica em cancelar, aí quando tenta novamente não consegue mais. Isso realmente acontece, e se acontece como resolver ?
[86] Comentário enviado por jacksonsan em 04/01/2007 - 15:49h
tatototino
Estou usando a versão NatACL.20050311.tar.gz.
Lah no arquivo de configuração o método de expiração é aplicado quando uso AUTH_UNIX EXPIRE_TYPE 3600, por exemplo.
Quando uso AUTH_MYSQL, como faço ?
Uso uma linha com EXPIRE_TYPE [tipo] ...
Percebe-se que ao invés do usuário constar no log, aparece a entrada "NONE", o que, para mim, indicaria que o NatACL, por algum motivo não esta verificando / lendo o usuário no arquivo da autenticação.
Pergunto: Já vivenciou alguma coisa parecida? Tens idéia de como resolver?
[92] Comentário enviado por lavoie em 16/01/2007 - 21:59h
quando logo , somente consigo dar logout reiniciando o NatACL, posso desligar o micro que ele continua com acesso.
quando vou verificar o log aparece " [ERROR] [EXPIRE] [ user]Invalid expire method"
pelo que pude perceber eh quando realizo o acesso pelo mysql " AUTH_MYSQL localhost NatACL root llllolo ", se eu comento essa linha nao aparece o erro,
[94] Comentário enviado por tatototino em 17/01/2007 - 00:17h
jacksonsan, esqueci de te falar uma coisa :P
Os tipos de expiração de conta com a autentificação feita no MySQL são definidas no banco de dados do NatACL na tabela users, no campo expire_type, segue as opções:
[95] Comentário enviado por lavoie em 17/01/2007 - 14:13h
opa deu quase certo com essa dica ai em cima , agora esta aparecendo a seguinte mensagem :
"iptables: Bad rule (does a matching rule exist in that chain?)"
[99] Comentário enviado por lavoie em 18/01/2007 - 13:23h
entaum tatototino, como as regras redirecionam a porta 80 para a porta 5122 as outras portas ficam livres de autenticação, mas vou mudar as regras,
valeu !
[100] Comentário enviado por jacksonsan em 20/01/2007 - 12:36h
caro tatototino,
eu denovo
Quando executo o natacl e tento conectar no cliente ele não conecta, responde página não encontrada.
Então, faço o seguinte: executo o compartilhamento de conexão e o proxy transparente e tento conectar no meu cliente e funciona. Depois disso, executo o natacl e vou tentar conectar novamente no meu cliente, aí pede a página de login e funciona. Esquisito esse funcionamento. Fechei o browser do cliente e aparentemente a sessão expirou, então não consegui mais conectar no cliente e nem no servidor. O que ocorreu ?
A configuração do natacl está assim
[103] Comentário enviado por lavoie em 22/01/2007 - 14:56h
fala Tatotoino.
cara sei que vc nao eh o meu suporte, mas se vc ou alguem puder ajudar,
o que eu preciso eh o seguinte , somente apos a autenticação que o usuario tera acesso a internet, messenger, outlook, emule, kazaa , antivirus .... enfim.
seria como se fosse aquela autenticação que o IG faz .
[104] Comentário enviado por jacksonsan em 23/01/2007 - 09:53h
caro tatototino,
O popup funcionou, legal. Mas o funcionamento continua estraho.
1.A tela de captura de login só funciona se eu fizer uma conexão antes usando proxy transparente, sem ativar o natacl.
2.Depois que eu ativo o natacl aí a tela de captura funciona.
3.Está aparecendo no console a seguinte mensagem: "iptables: no target/chain/match by that name", o que isso significa ?
4.Pus expiração por popup, fechei o popup mas não expirou
[105] Comentário enviado por exercitobr em 23/01/2007 - 11:21h
Moçada... segui o tutorial... resolvi todas as dependencias, mas qd executo o comando: "NatACL &" ele retorna a seguinte mensagem: " bind:Address already in use" e qd vou nas máquinas clientes navega normalmente sem pedir login e senha, Oque significa essa mensagem e como resolvo?
[106] Comentário enviado por tatototino em 25/01/2007 - 01:43h
lavoie, como eu te falei. Adicione as portas desses serviços nas regras de iptables no arquivo de configuração do NatACL. Não sei se vai dar certo porque nunca tentei mas na minha humilde opinião, acho que dá para fazer isso :).
Qunado acaba meus downloads vou tentar fazer isso também :P.
[107] Comentário enviado por tatototino em 25/01/2007 - 02:13h
jacksonsan, tem alguma coisa errada na sua configuração, verifique a regra "IPTABLES_PROXY GRANT" e veja se está tudo certo com ela. Veja se nos logs do NatACL aparece alguma coisa. Defina melhor "conexão antes usando proxy transparente"?
As duas últimas perguntas estão relacionada, o seguinte erro:
iptables: no target/chain/match by that name
Está dizendo que não tem nehuma regra para deletar com as informações que você definiu no arquivo de configuração do NatACL quando a sessão acaba. Por isso que a expiração não termina porque essa regra é responsável pelo fechamento da sessão.
Solução:
Troque a seguinte linha no seu arquivo de configuração do NatACL "/usr/local/etc/NatACL.conf":
[108] Comentário enviado por tatototino em 25/01/2007 - 02:38h
exercitobr, o erro "bind:Address already in use" (saída de erro "stderr" do comando bind) está dizendo que a porta já está em uso (bons tempos de programação :P).
Verifique se o NatACL já está sendo executado com o comando:
ps auxw | grep -i natacl
Verifique se as portas usadas pelo NatACL estão abertas:
netstat -an | grep -i "listen"
Veja se a porta 5121 e 5122 estão abertas.
Só para confirmar se as portas estão mesmo abertas ou fechadas:
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2007-01-25 09:15 BRST
Interesting ports on localhost (127.0.0.1):
PORT STATE SERVICE
5121/tcp open unknown
5122/tcp open unknown
[113] Comentário enviado por exercitobr em 26/01/2007 - 08:34h
Tatototino, agora que está funcionando, gostaria de postar duas dúvidas com vc. A primeira, é possivel gerar relatórios de acesso com o sarg, utilizando o natacl, caso negativo, há outra forma de exbir um relatório com os acessos dos usuários autenticados pelo NatACL?
segundo: como insiro novos usuários?
[116] Comentário enviado por tatototino em 31/01/2007 - 16:01h
exercitobr, nunca implementei o sarg com o NatACL, mas para criar usuários você pode criar uma página em PHP adicionando os dados nas tabelas do NatACL.
[119] Comentário enviado por aps167 em 01/03/2007 - 14:18h
Amigão Tenho dúvidas
Trabalho em uma empresa que usa VOIP, os equipamentos usam as portas 5060 TCP e 5004 UDP e a interfaçe WEB do equipamento responde na porta 80, então quando quero configura-lo digito o http://192.168.0.200 e acesso o equipamento.
Duvidas:
1 - já que estou usando proxy como faço para que seja liberado a internet para os voips, como faço para que eles ignore o proxy?
2 - Como faço para acessar a interface web, já que estou redirecionando todo o trafico da 80 para 3128?
[121] Comentário enviado por brunoalmeidam em 31/03/2007 - 20:06h
Ola amigos, eu possuo 3 links de 4 megas e queria saber como e faco para utilizar o NatAcl com esses 3 links, os 3 sao links adsl autenticado no modem route onde
eth0 = 192.168.254.1 4 megas
eth1 = 192.168.254.2 4 megas
eth2 = 192.168.254.3 4 megas
eth3 = é a porta de saida para os meus clientes
se alguem puder por gentileza me informar como fazer ficarei muito agradecido
[122] Comentário enviado por hookdigao em 17/04/2007 - 15:37h
Tatototino, parabens pelo artigo, deu tudo certo no meu, só umas headers que ficaram faltando mas eu dei um jeito nisso, mas estou com uma duvida. Voce conseguiu fazer aparecer o usuario nos relatorios do sarg usando o natacl? no meu so aparece o ip da maquina, tem como fazer isso?
[123] Comentário enviado por vladijr em 17/04/2007 - 20:23h
tatotino muito bom o seu artigo mas estou com um problema instalei o natacl sem nenhum erro ja configurei o squid mas quando digito o comando NatACL & ele me retorna comando não encontrado o q pode estar ocorrendo?
[124] Comentário enviado por hookdigao em 18/04/2007 - 08:22h
Vladijr é bem provavel que tenha dado um erro la no começo, comigo aconteceu a mesma coisa, estava faltando a header pcap.h, mas mesmo faltando essa header a instalaçao é completada, instale a libpcap-dev e depois make novamente e tente denovo
[125] Comentário enviado por vladijr em 18/04/2007 - 09:22h
consegui fazer a instalação agora quando eu abro o navegador do cliente ele não pede nem usuario nem senha e aparece um erro (111) connection refused o q pode estar acontecendo o NatACL ta rodando e o proxy tambem
[126] Comentário enviado por hookdigao em 18/04/2007 - 11:15h
deve ser alguma coisa com o banco, ve se o mysql ta rodando, tenta acessar a o DB NatACL manualmente pelo mysql, se prefirir instale o phpmyadim e acesse o banco pelo browser
[129] Comentário enviado por maxwsilva em 19/04/2007 - 23:45h
tatototino, muito bom seu artigo, fiz a configuracao e ficou muito bom, parabens!
Meu unico problema agora eh que ele tah deixando mais de um usuario entrar com o memo login, mesmo com o parametro SIMULTANEOUS_LOGON: NO
Jah testei todos os modos do AUTH_UNIX TYPE EXPIRE_TIME
Como resolvo isso ? Segue abaixo o meu NatACL.conf:
# LAN_INTERFACE
# Set the network who will have access to this program
# LAN_INTERFACE [interface] [network/class]
# If you have only one lan interface, you may remove one line.
LAN_INTERFACE eth1 192.168.2.0/24
# WAN_INTERFACE
# Set the output internet address
# WAN_INTERFACE [interface] [local address]
WAN_INTERFACE eth2 192.168.254.1
# NAT_TYPE
# Configure the type of your network nat/firewall
# You can create you own type, just add the respective configuration to the RULE section.
# Default existing configuration:
#IPTABLES_NAT
#IPTABLES_PROXY
#IPFW_NAT
#IPFW_PROXY
NAT_TYPE: IPTABLES_PROXY
#define if you will allow simultaneous users at the same tame
SIMULTANEOUS_LOGON: NO
#If you use Freebsd and IPFW/NATD You must set the NATD port
#NATD_PORT: 31000
#If you use Proxy instead NAT, you must define the PROXY PORT
PROXY_PORT: 3128
# AUTH_UNIX
# Set the expire time and expire method for users using the unix password
# Args: EXPIRE_TIME <Time to live in seconds>
# EXPIRE_PING
# EXPIRE_PINGTIME <Time to live in seconds>
# WARNING: If you use Expire_POPUP, make sure that you have an anti-popup browser disabled.
AUTH_UNIX TYPE EXPIRE_PINGTIME 600
#
# AUTH_MYSQL
# Set the configuration to the mysql database
# Args: Mysql_Host Mysql_db Mysql_user Mysql_password
# Ex. AUTH_MYSQL 127.0.0.1 NatACL User "password"
AUTH_MYSQL 127.0.0.1 NatACL root senha
# RULE SECTION
#************************************************************************
# You dont have to alter this part, unless you know what are you doing.
# You can have multiples configuration, even if you dont have a specific firewall. It will not matter.
# Set the NAT_TYPE to your specific rule.
# START RULE - Is executed only once, when NatACL is run.
# INIT RULE - Is executed one time for each LAN_INTERFACE, when NatACL is run.
# GRANT RULE - Is executed when a user logon.
# REVOKE RULE - Is executed when a user expires.
# Rules for Freebsd IPFW_NAT
#IPFW_NAT START "ipfw del 8"
#IPFW_NAT START "ipfw del 9"
#IPFW_NAT START "ipfw del 10"
#IPFW_NAT INIT "ipfw add 10 fwd 127.0.0.1,5121 tcp from [LAN_INTERFACE] to any 80"
#IPFW_NAT INIT "ipfw add 10 fwd 127.0.0.1,5122 tcp from [LAN_INTERFACE] to any 5122"
#IPFW_NAT GRANT "ipfw add 8 divert [NATD_PORT] ip from [CLIENT_ADDRESS] to any out xmit [WAN_INTERFACE] "
#IPFW_NAT GRANT "ipfw add 9 skipto 11 all from [CLIENT_ADDRESS] to any"
#IPFW_NAT REVOKE "ipfw del 8 divert [NATD_PORT] ip from [CLIENT_ADDRESS] to any out xmit [WAN_INTERFACE] "
#IPFW_NAT REVOKE "ipfw del 9 skipto 11 all from [CLIENT_ADDRESS] to any"
# Rules for Freebsd IPFW_PROXY - PROXY PORT
#IPFW_PROXY START "ipfw del 8"
#IPFW_PROXY START "ipfw del 9"
#IPFW_PROXY START "ipfw del 10"
#IPFW_PROXY INIT "ipfw add 10 fwd 127.0.0.1,5121 tcp from [LAN_INTERFACE] to any 80"
#IPFW_PROXY INIT "ipfw add 10 fwd 127.0.0.1,5122 tcp from [LAN_INTERFACE] to any 5122"
#IPFW_PROXY GRANT "ipfw add 8 fwd 127.0.0.1:[PROXY_PORT] tcp from [CLIENT_ADDRESS] to any 80"
#IPFW_PROXY GRANT "ipfw add 9 skipto 11 all from [CLIENT_ADDRESS] to any"
#IPFW_PROXY REVOKE "ipfw del 8 fwd 127.0.0.1:[PROXY_PORT] tcp from [CLIENT_ADDRESS] to any 80"
#IPFW_PROXY REVOKE "ipfw del 9 skipto 11 all from [CLIENT_ADDRESS] to any"
[131] Comentário enviado por maxwsilva em 06/05/2007 - 12:08h
Resolvi o problema da autenticação simultânea:
1) A chave ssl tava com erro (cert_server.pem), usei a padrão ao invés de usar a gerada pelo make.
2) Usei este método de expiração no NatACL.conf: AUTH_UNIX TYPE EXPIRE_PINGTIME 600 # (dez minutos sem ping, cai fora)
[134] Comentário enviado por marceloleite em 03/07/2007 - 13:01h
Olá Amigos.
Sou novato em Linux, estou tentando fazer funcionar o NatAcl mas estou tendo um pouco de dificuldades, por falta de conhecimento da minha parte.
Estou usando o Kubunto e instalei quase todas as bibliotecas que o natacl foi me pedindo. Porem falta alguma que eu não consigo descobrir.
Se puderem ajudar, segue o erro de instalação logo abaixo.
Obrigado.
root@proxy-plithy:/home/admin/NatACL.3.0.Beta15# make
cc build_make.c -o .fastmake/build_fast_make.bin
./.fastmake/build_fast_make.bin
Searching Library: [ xml2] FOUND: /usr/lib
Searching Include: [ iconv.h] FOUND: /usr/include
Searching Include: [ libxml/xmlversion.h] FOUND: /usr/include/libxml2
./install.bin make.xml build
Building project: NatACL
- Build Program: NatACL_config -----------------
[System Include path: src/includes]
[System Include path: src/common]
[System Include path: /usr/local/include]
[System Include path: /usr/include]
[System library path: /usr/local/lib]
[System library path: /usr/lib]
Build NatACL_config.c OK - NOT CHANGED
Build ../common/db.c OK - NOT CHANGED
Build ../common/conversion.c OK - NOT CHANGED
Build ../common/socket_tools.c
src/NatACL_config/../common/socket_tools.c:34:25: error: openssl/ssl.h: No such file or directory
In file included from src/NatACL_config/../common/socket_tools.c:36:
src/NatACL_config/../common/../common/socket_tools.h:23: error: syntax error before 'SSL'
cc1: warnings being treated as errors
src/NatACL_config/../common/../common/socket_tools.h:23: warning: no semicolon at end of struct or union
src/NatACL_config/../common/../common/socket_tools.h:25: error: syntax error before 'SSL'
src/NatACL_config/../common/../common/socket_tools.h:31: error: syntax error before 'SSL'
src/NatACL_config/../common/../common/socket_tools.h:33: error: syntax error before 'SSL'
src/NatACL_config/../common/socket_tools.c:39: error: syntax error before 'SSL'
src/NatACL_config/../common/socket_tools.c: In function 'sock_buf_init':
src/NatACL_config/../common/socket_tools.c:43: error: invalid application of 'sizeof' to incomplete type 'struct s_buf_hdr'
src/NatACL_config/../common/socket_tools.c:48: error: invalid application of 'sizeof' to incomplete type 'struct s_buf_hdr'
src/NatACL_config/../common/socket_tools.c:50: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:50: error: 'fd' undeclared (first use in this function)
src/NatACL_config/../common/socket_tools.c:50: error: (Each undeclared identifier is reported only once
src/NatACL_config/../common/socket_tools.c:50: error: for each function it appears in.)
src/NatACL_config/../common/socket_tools.c:52: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:52: error: 'ssl_client' undeclared (first use in this function)
src/NatACL_config/../common/socket_tools.c: In function 'sock_buf_read':
src/NatACL_config/../common/socket_tools.c:71: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:72: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:75: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:75: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:75: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:77: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:77: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:78: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:80: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:81: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:82: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:84: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:84: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:84: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:88: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:89: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:90: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:90: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:91: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:91: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:91: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:92: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:92: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:93: error: dereferencing pointer to incomplete type
src/NatACL_config/../common/socket_tools.c:95: error: dereferencing pointer to inc
[136] Comentário enviado por marceloleite em 04/07/2007 - 19:08h
Opá blz.
Obrigado pela dica.
Mas o pior é que o Openssl já está instalado. Nesse caso vou ver se existe alguma atualização.
No caso do iptc, eu não consigo acha esse pacote somente como iptc, existe iptc com um monte de combinação, só não tem ele sozinho. Ou o pacote que tenho que instalar é iptc+alguma_coisa.
Vlw.
[138] Comentário enviado por iosimura em 06/08/2007 - 16:48h
Comentário enviado por tatototino em 19/12/2006 - 04:57h:
Olá lavoie, o seu erro deve se o fato de não encontra essa header "ssl.h", verifique se você tem o pacote "OpenSSL" instalado, ou procure essa header com o comando find.
[141] Comentário enviado por cheopsmalta em 08/08/2007 - 22:54h
Pessoal consegui resolver o problema acima do comand not found, agora estou com outro problema, quando executo o programa ele apresenta as seguintes mensagens de erro.
Bad argument `:5121'
Try `iptables -h' or 'iptables --help' for more information.
Starting Daemon
[143] Comentário enviado por fenix_se em 09/11/2007 - 18:42h
Olá !
há dias venho tentando rodar o rapaz em um fedora 4 e sem sucesso. Voce poderia me dizer o que sgnifica a mensagem UNKNOWN DATA quando starto o NatACL ? Ele roda mas esta mensagem fica constante na tela uma abaixo da outra sem parar.
desta forma:
[root@ns1 etc]#NatACL (enter)
UNKNOWN DATA
UNKNOWN DATA
UNKNOWN DATA
[144] Comentário enviado por reginaldoluiz em 20/12/2007 - 09:58h
Olá galera td bem?
Estou usando o Debian 4r, meu NatACL está funcionando com expiração por POP UP, porém quando eu fecho a POP UP dá o seguinte erro:
iptables: no chain/target/match by that name.
E depois que fecho a pop up, o certo seria o micro não acessar mais a net, pois a regra que concede a conexão é removida, através de [REVOKE] remove granted rule to... Correto? Mas isso não acontece, o micro continua acessando normalmente a net.
Olhei no NatACL.conf, não achei nenhum erro nas regras, procurei em vários lugares e não consegui solucionar, não sei mais o que faço, se alguém puder me ajudar agradeço muito.
Valeu!
[145] Comentário enviado por tatototino em 28/12/2007 - 21:26h
iptables: no target/chain/match by that name
Está dizendo que não tem nehuma regra para deletar com as informações que você definiu no arquivo de configuração do NatACL quando a sessão acaba. Por isso que a expiração não termina porque essa regra é responsável pelo fechamento da sessão.
Solução:
Troque a seguinte linha no seu arquivo de configuração do NatACL "/usr/local/etc/NatACL.conf":
[146] Comentário enviado por reginaldoluiz em 02/01/2008 - 16:42h
Muito obrigado pelo esclarecimento tatotino, deu certinho...
Mas andei reparando que as vezes alguns sites, como o gmail e o yahoo as vezes não entram, quando ocorre isso eu rodo o script de bootmisc.sh do Debian que é onde estam minhas regras do iptables que compartilham a Internet, depois de rodar esse script o gmail e o yahoo entram, mas depois de um tempo deixam de entrar novamente e tenho que rodar o script denovo, sendo que este script está colocado para iniciar automaticamente, já viu algo parecido acontecer?
As regras que estão no script sao as seguintes:
(eth1: placa de rede com IP fixo ligada ao modem do speedy bussiness.)
(eth0: placa de rede com IP fixo ligado ao switch da LAN.)
[148] Comentário enviado por reginaldoluiz em 18/01/2008 - 08:29h
Agora estou com o mesmo problema do fenix_se, UNKNOWN DATA!
Estava rodando tudo certinho, mas de repente começou a aparecer UNKNOWN DATA várias vezes na tela, quando abro o navegador, fico esperando e esperando e ele não redireciona pro NatACL nem faz nada, e aparece essa mensagem ai no shell do linux.
Fiz testes no MySQL, no Squid, no NatACL, está tudo rodando certinho, mas parou de redirecionar e acessar a net e aparece essa mensagem UNKNOWN DATA, alguém sabe o que significa isso??? Estou precisando urgente!
Obrigado.
[149] Comentário enviado por reginaldoluiz em 29/01/2008 - 10:36h
Alguém sabe de algum analisador de relatórios (tipo o SARG) que eu possa usar juntamente com essa solução de Squid+NatACL+MySQL aqui, que me mostre os relatórios com os nomes de usuários e não por IP?????
Já tentei o SARG e o MySAR, não consegui com nenhum dos dois!
Obrigado.
[150] Comentário enviado por reginaldoluiz em 22/02/2008 - 14:51h
O galera será que ninguém mais lê esse tutorial???
Estou precisando de ajuda com o NatACL, implementei esta solução de acordo com o tutorial e o servidor está instável.
Todos os dias, pelo menos uma vez no dia quando o usuário vai logar, digita usuario, senha e clica em submit, ele nao é redirecionado pra Net, permanece na mesma página de autenticação do NatACL, reinicio os serviços, reinicio o servidor e volta tudo ao normal, mas depois de um tempo, nem reiniciando o servidor 200 vezes não volta ao normal, ele simplesmente não sai da tela de autenticação, daí ele fica desligado durante um tempo e depois eu ligo ele e volta tudo ao normal.
O estranho é que nos logs nao aparece nenhum erro, os servicos estão todos rodando corretamente, suspeitei de problemas nos access points, mas todos estão operando normalmente também, pensei no hardware da máquina, mas está normal também.
Alguém já passou por situação semelhante ou sabe me esclarecer isso????
Obrigado!
[154] Comentário enviado por brunokino em 19/04/2008 - 17:24h
Caro tatototino,
eu estou usando atualmente a autenticação por ncsa_auth. e não é compativel com proxy transparente. achei o NatACL a solução ideial, mas o que eu queria saber é o seguinte.
Tem como eu criar ACL por usuário dentro do squid usando os usuário do NatACL?
[158] Comentário enviado por shirleymsa em 22/02/2009 - 23:31h
Quando tento executar o comando NatACL & aprensenta a seguinte mensagem:
-bash: NatACL: command not found
Já vi aqui nos comentários alguns com o mesmo problema porém a solução não postaram, apenas disseram que conseguiram resover. peço que me ajudem. Obrigada!
[159] Comentário enviado por j.gimenes em 17/03/2009 - 20:57h
Boa noite All.
Resolvi testar o NatACL hoje, instalei no Debian Lenny autenticando no MySQL e quase tudo funcionou perfeitamente, porem quando quanto tento acessar a Internet com um usuário que não está está cadastrado no banco o seguinte erro é exbido:
Missing [AUTH_UNIX] in /usr/local/etc/NatACL.conf
Após o erro é necessário iniciar o NatACL novamente.
Alguem aqui tem alguma ídeia de como corrigir este problema?
Tentei tambem instalar a versão 3.0 - beta 15, porem sem sucesso !!!
[160] Comentário enviado por j.gimenes em 17/03/2009 - 21:57h
Resolvi o problema citato acima (Missing [AUTH_UNIX] in /usr/local/etc/NatACL.conf) retirando o comentário da linha "AUTH_UNIX TYPE EXPIRE_PINGTIME 3600" do arquivo /etc/NatACL.
Mantive a autenticação no MySQL com sucesso.
[162] Comentário enviado por eleandrofox em 01/05/2009 - 18:31h
Socorro fiz tudo que o tuto manda mas num consegui fazer rodar ele num carrega o login, onde posso ter errado? O Mysqle ta importado olhei pelo phpmyadmin, conferi os dados de acesso ip e tal e nada.
Se algume puder ma ajudar uso o UBUTU meu msn eleandro@foxsolucoes.com.br, desde ja agradeço
cc1: warnings being treated as errors
src/NatACL_config/NatACL_config.c: In function ‘get_natacl_dhcp_pid’:
src/NatACL_config/NatACL_config.c:57: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
src/NatACL_config/NatACL_config.c: In function ‘get_natacl_web_pid’:
src/NatACL_config/NatACL_config.c:73: error: ignoring return value of ‘fread’, declared with attribute warn_unused_result
[164] Comentário enviado por alexalves100 em 28/07/2009 - 13:25h
ola pessoal, eu segui o tutorial e isntalei tudo ok, mas não sei como criar os usuários e grupos no natacl, se alguém puder em ajudar, e dar uma dica ou indicar algun tópico, ficarei feliz....
[173] Comentário enviado por MiquieasReale em 05/04/2010 - 13:26h
Boa tarde, gostei do artigo, só tenho uma duvida, hoje tenho regras no meu squid.conf com grupos de usuario que tem acesso a internet com nivel diferente, e utilzo metodo de autenticação children 5 este NatACL vai respeitar as regras existentes ou terei que fazer chamadas especificas para os usuarios do mysql?
[174] Comentário enviado por luivilella em 26/04/2010 - 13:19h
tatototino, parebens pelo artigo nota 10. porem esto com problemas aqui:
ServerDebian:/# NatACL &
[1] 2802
ServerDebian:/# bind: Address already in use
Starting Nmap 4.62 ( http://nmap.org ) at 2010-04-26 10:18 BRT
Interesting ports on localhost (127.0.0.1):
PORT STATE SERVICE
5121/tcp open unknown
5122/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 0.108 seconds
[176] Comentário enviado por otaviorme em 12/07/2010 - 21:12h
Segui seu artigo está tudo funcionando no entanto se eu criar um usuário esse mesmo usuário pode logar em quantas maquinas quizer e ficar navegando eu gostaria que ao se logar em outra máquina derrubasse a sesão aberta em outro terminal. É possível?
[180] Comentário enviado por robsonsbrasil em 17/02/2012 - 08:21h
Estou com problema com o IPTC (NOT FOUND), estou passando pelo mesmo problema. Gostaria de saber se você solucionou o mesmo e como fez isso. Onde consigo esse pacote para debia squeeze
Se possível mande seus contatos.
Obrigado.
[181] Comentário enviado por mthlima em 09/10/2012 - 12:57h
Olá amigos!
Consegui instalar corretamente o NatACL.
Quando ele está parado o Squid funciona corretamente, todo os bloqueios etc..
Uma vez q eu inicio o serviço, as regras do Squid se perdem ou nenhuma das regras funciona, todos os acessos são permitidos inclusive os sites que deveriam ser negados.