Acl liberar url

1. Acl liberar url

Rildo Arquino da Silva
ido

(usa Ubuntu)

Enviado em 13/10/2012 - 20:29h

Preciso de uma regra que faça este endereço http://2xx.1xx.xxx.xxx:5080/PortalServidor/portal/servicosRH funcionar com o squid, pois quando desabilito o proxy consigo navegar normalmente.



  


2. Re: Acl liberar url

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 14/10/2012 - 15:11h

Neste caso é simples: basta bloquear o encaminhamento d pacotes da porta 5080. Uma sugestão: seu firewall tá fraco e é melhor bloquear suas saídas por padrão e liberar apenas o necessário, ok?


3. Re: Acl liberar url

Rildo Arquino da Silva
ido

(usa Ubuntu)

Enviado em 14/10/2012 - 20:38h

Aqui esta meu script de firewall, que regra deveria adicionar para negar o encaminhamento de pacotes:

# Autor: Rildo A. Silva
#Script de Firewall vs 1.0

# Limpando as regras
iptables -F
iptables -t filter -F
iptables -t nat -F
iptables -t mangle -F

# ligando proteção para SYN flood.
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

#Compartilha internet
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#iptables -t nat -A PREROUTING -s 192.168.154.0/23 -p tcp --dport 5080 -j REDIRECT --to-port 192.168.155.253:5080
iptables -t nat -A PREROUTING -p tcp -d 2xx.xx1.1xx.2xx --dport 1194 -j DNAT --to 192.168.154.3:1194
iptables -t nat -A PREROUTING -p udp -d 2xx.1xx.1xx.2xx --dport 1194 -j DNAT --to 192.168.154.3:1194
iptables -t nat -A PREROUTING -s 0/0 -p tcp -d 2xx.1xx.1xx.2xx --dport 5080 -j DNAT --to 192.168.155.254:5080


iptables -A INPUT -i tap+ -j ACCEPT
iptables -A FORWARD -i tap+ -j ACCEPT

#Port scanner
#iptables -t filter -A INPUT -i eth1 -m state --state new -j DROP
#iptables -t filter -A INPUT -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
#iptables -t filter -A FORWARD -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
#iptables -t filter -A FORWARD -o eth1 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A PREROUTING -s 192.168.154.0/23 -p tcp --dport 5080 -j REDIRECT --to-port 5080

#IPs livres sem proxy
iptables -A FORWARD -p tcp -s 192.168.154.3 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.204 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.49 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.155.93 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.14 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.155.254 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.48 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.164 --dport 80 -j ACCEPT
# Abre a portas tcp e udp
PORTAS_LIBERADAS="2022 2631 21 5787 1194 65000 443 8080 5080 80"
#ssh=2022
#http=80
#conectividade social=2631
#ftp=21
#ftpdatasus=5787
#vpn=1194

#IPs internos liberados totalmente
IPS_LIBERADO_INT="200.2xx.44.2xx 192.168.154.3 192.168.154.62 192.168.155.234 189.28.143.168 192.168.155.230 2xx.1xx.1xx.xxx 192.168.155.254"
#200.214.44.204=ipdatasus
#192.168.154.3=ipfolha
#192.168.154.62=ipdcar
#192.168.155.234=ipdcar

#IPs externos liberados
IPS_LIBERADO_EXT="200.214.44.204 189.28.143.164 200.201.174.204 200.201.174.207 189.28.143.168 xxx.xxx.xxx.xxx"
#200.214.44.204=ipdatasus
#200.201.174.204=ipconectividadesocial
#200.201.174.207=ipconectividadesocial

# Abre a porta 3128 tcp udp, para o uso do squid

iptables -A INPUT -p tcp --destination-port 3128 -j ACCEPT
iptables -A INPUT -p udp --destination-port 3128 -j ACCEPT

# Abre para a rede local
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --syn -s 192.168.154.0/255.255.254.0 -j ACCEPT

#Fecha a porta 80 para saída WEB (saída web via proxy porta:3128)
iptables -A FORWARD -p tcp -s 192.168.154.0/255.255.254.0 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.154.0/255.255.254.0 --dport 5080 -j ACCEPT
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT

# Criacao das regras com ips liberados (local)
###
if [ ! -z "$IPS_LIBERADO_INT" ]; then
for ip in $IPS_LIBERADO_INT
do
iptables -I FORWARD -s $ip -j ACCEPT


done
fi

###
# Criacao das regras com ips liberados (externo)
###
if [ ! -z "$IPS_LIBERADO_EXT" ]; then
for ip in $IPS_LIBERADO_EXT
do
iptables -I INPUT -s $ip -d 192.168.154.0/23 -j ACCEPT

done
fi

## Criacao das regras para as portas liberadas
###
if [ ! -z "$PORTAS_LIBERADAS" ]; then
for porta in $PORTAS_LIBERADAS
do
iptables -A INPUT -p tcp --destination-port $porta -j ACCEPT
iptables -A INPUT -p udp --destination-port $porta -j ACCEPT

done
fi
# Fecha o resto
iptables -A INPUT -p tcp --syn -j DROP


# Ativando a regra
iptables -t filter -P FORWARD ACCEPT


parar(){

echo "Regras de firewall e compartilhamento desativados"
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -A INPUT -p tcp --syn -s 192.168.154.0/255.255.254.0 -j REJECT
}

iniciar(){

echo "Regras de firewall e compartilhamento ativadas"
/sbin/firewall
}

case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar;;
*)echo "Use os paramentros start ou stop"
esac



4. Re: Acl liberar url

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 15/10/2012 - 11:29h

Tá faltando algumas políticas ae:


iptables -P FORWARD DROP
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT


Assim só será liberado aquela regra q explicitamente está como ACCEPT, caso contrário tudo estará bloqueado. Do jeito q estão suas regras, não faz sentido vc aceitar aquilo q já está aceito, por isso q a porta 5080 passa livremente pelo seu firewall.


5. Acl url

Rildo Arquino da Silva
ido

(usa Ubuntu)

Enviado em 15/10/2012 - 12:53h

Vou reformular o script e adicionar as regras que você falou para corrigir o problema, meu script realmente tá bagunçado. Mas como faço para fazer a url que citei funcionar com o proxy configurado no microcomputador pois só consigo acessar o endereço quando desativo as configurações de proxy, a regra que adicionei no script:
iptables -t nat -A PREROUTING -p tcp -d 200.141.164.218 --dport 5080 -j DNAT --to 192.168.155.254:5080
faz com que os acessos através da url sejam direcinados para o ip interno da minha rede que esta rodando o tomcat, o fato é que quando acesso este endereço de fora da minha rede como de casa por exemplo a url funciona, quando acesso de dentro da minha rede sem a configuração de proxy no browser também funciona, quando acesso com a configuração de proxy ativada o squid bloqueia.




6. Re: Acl liberar url

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 15/10/2012 - 12:56h

Então tem alguma regra no seu squid q tá bloqueando. Poste o conteúdo do squid.conf ae.


7. squid.conf

Rildo Arquino da Silva
ido

(usa Ubuntu)

Enviado em 15/10/2012 - 13:56h

#CONFIGURAÇÃO DO SQUID
#RILDO A. SILVA
#---------------------------------------------
# INFORMA O CAMINHO DO PROGRAMA DE AUTENTICAÇÃO E O ARQUIVO DE LOGINS E SENHAS
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd

# PADRÃO
auth_param basic children 5

# DEFINE O TIMEOUT DE LOGON NO PROXY
auth_param basic credentialsttl 1 hour

# DEFINE O TEXTO QUE APARECERÁ NA CAIXA DE LOGIN
auth_param basic realm Digite seu Login e Sua Senha

# DESATIVA A VERIFICAÇÃO DE LETRAS MAIÚSCULAS E MINÚSCULAS
auth_param basic casesensitive off

######REGRAS PADRÕES SQUID#####################
http_port 3128
visible_hostname ARMAGEDON

#ATIVA A LINGUAGEM DAS PÁGINAS DE ERRO PARA PORTUGUÊS
error_directory /usr/share/squid/errors/Portuguese/

## Tamanho e diretório do cache ##
cache_dir ufs /var/spool/squid 2000 16 256

############Logs do Squid######################
access_log /var/log/squid/access.log squid
cache_log /var/log/squid/cache.log squid

############Configuração do cache##################
############tamanho do cache coloque o melhor pra seu uso #
cache_mem 512 MB

############ tamanho maximo de arquivos na memoria ####
maximum_object_size_in_memory 128 KB

############ tamanho maximo do arquivo no cache #######
maximum_object_size 300 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95

################acl#########################################
acl manager proto cache_object
acl Safe_ports port 5080
acl dominios_liberados dstdomain "/etc/squid/listas/dominios_liberados"
http_access allow dominios_liberados

# PEDE A AUTENTICAÇÃO NO PROXY
acl autenticados proxy_auth REQUIRED

# Usuarios com acesso livre
acl acesso_livre proxy_auth "/etc/squid/listas/usr_livre"
http_access allow acesso_livre

# Usuarios com acesso somente aos sites liberados

acl acesso_bloqueado proxy_auth "/etc/squid/listas/usr_bloqueado"
acl url_liberado url_regex -i "/etc/squid/listas/url_liberado"

http_access allow url_liberado
http_access deny acesso_bloqueado !url_liberado

#CAMINHO DO ARQUIVO DE SITES BLOQUEADOS
acl proibir_sites dstdomain "/etc/squid/listas/sitebloqueado"
http_access deny proibir_sites

#CAMINHO DO ARQUIVO DE PALAVRAS BLOQUEADAS
acl palavrabloq url_regex -i "/etc/squid/listas/palavrabloq"
http_access deny palavrabloq

#IP DA REDE E MÁSCARA DA REDE INTERNA
acl permitir src 192.168.154.0/23
acl all src 192.168.154.0/23

http_access allow autenticados permitir
http_access deny all





8. Re: Acl liberar url

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 15/10/2012 - 14:17h

Kd a regra d liberar as portas pelo squid? Vc só colocou a acl Safe_ports e ainda colocou apenas a porta 5080. Faça assim:


acl Safe_ports port 5080
http_access deny !Safe_ports



9. Re: Acl liberar url

Rildo Arquino da Silva
ido

(usa Ubuntu)

Enviado em 23/10/2012 - 11:17h

Desculpe a demora em responder, tive que me afastar do trabalho! Fiz a liberação das portas no squid e mesmo assim não funcionou, segue o conf:

#CONFIGURAÇÃO DO SQUID
#RILDO A. SILVA
#---------------------------------------------
# INFORMA O CAMINHO DO PROGRAMA DE AUTENTICAÇÃO E O ARQUIVO DE LOGINS E SENHAS
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd

# PADRÃO
auth_param basic children 5

# DEFINE O TIMEOUT DE LOGON NO PROXY
auth_param basic credentialsttl 1 hour

# DEFINE O TEXTO QUE APARECERÁ NA CAIXA DE LOGIN
auth_param basic realm Digite seu Login e Sua Senha

# DESATIVA A VERIFICAÇÃO DE LETRAS MAIÚSCULAS E MINÚSCULAS
auth_param basic casesensitive off

######REGRAS PADRÕES SQUID#####################
http_port 3128
visible_hostname ARMAGEDON

#ATIVA A LINGUAGEM DAS PÁGINAS DE ERRO PARA PORTUGUÊS
error_directory /usr/share/squid/errors/Portuguese/

## Tamanho e diretório do cache ##
cache_dir ufs /var/spool/squid 2000 16 256

############Logs do Squid######################
access_log /var/log/squid/access.log squid
cache_log /var/log/squid/cache.log squid

############Configuração do cache##################
############tamanho do cache coloque o melhor pra seu uso #
cache_mem 512 MB

############ tamanho maximo de arquivos na memoria ####
maximum_object_size_in_memory 128 KB

############ tamanho maximo do arquivo no cache #######
maximum_object_size 300 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95

################acl#########################################
acl manager proto cache_object
acl Safe_ports port 5080
acl Safe_ports port 80
acl Safe_ports port 8080
acl Safe_ports port 443
acl Safe_ports port 65000
acl Safe_ports port 1194
acl Safe_ports port 5787
acl Safe_ports port 21
acl Safe_ports port 2631
acl Safe_ports port 3128
acl Safe_ports port 211
acl Safe_ports port 1433
http_access deny !Safe_ports
acl dominios_liberados dstdomain "/etc/squid/listas/dominios_liberados"
http_access allow dominios_liberados

# PEDE A AUTENTICAÇÃO NO PROXY
acl autenticados proxy_auth REQUIRED

# Usuarios com acesso livre
acl acesso_livre proxy_auth "/etc/squid/listas/usr_livre"
http_access allow acesso_livre

# Usuarios com acesso somente aos sites liberados

acl acesso_bloqueado proxy_auth "/etc/squid/listas/usr_bloqueado"
acl url_liberado url_regex -i "/etc/squid/listas/url_liberado"

http_access allow url_liberado
http_access deny acesso_bloqueado !url_liberado

#CAMINHO DO ARQUIVO DE SITES BLOQUEADOS
acl proibir_sites dstdomain "/etc/squid/listas/sitebloqueado"
http_access deny proibir_sites

#CAMINHO DO ARQUIVO DE PALAVRAS BLOQUEADAS
acl palavrabloq url_regex -i "/etc/squid/listas/palavrabloq"
http_access deny palavrabloq

#IP DA REDE E MÁSCARA DA REDE INTERNA
acl permitir src 192.168.154.0/23
acl all src 192.168.154.0/23

http_access allow autenticados permitir
http_access deny all

O interessante é que no firewall mesmo com a configuração de proxy desmarcada do browser, não consigo acessar a url http://20x.1xx.1xx.xxx:5080/PortalServidor.
Lembrando que no firewall possuo uma regra que redireciona os acessos destinados a o endereço do firewall na porta 5080 para outra máquina em minha rede:
iptables -t nat -A PREROUTING -p tcp -d 2xx.1xx.1xx.2xx --dport 5080 -j DNAT --to 192.168.155.254:5080










Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts