Liberar acesso à sites (SCRIPT IPTABLES)

1. Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 14:42h

Boa tarde pessoal,
Um ex funcionario da empresa aonde trabalho acabou saindo da empresa e com isso eu não entendi muito bom o script que ele fez, ate porque sou iniciante.

A questão é, preciso liberar o site em questão ( https://atendimentovirtual.sistemas.cesan.com.br:8443/AtendimentoVirtual/FaturaConsultaForm.jsp )

cujo o ip dele é ( 200.216.216.47 )


Tentei colocar no script a seguinte regra:


$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.47 -p tcp -j ACCEPT

e também:

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.47 -p tcp --dport 8773 -j ACCEPT

Ambas não deram certo.


Se abaixo o script iptables para melhor entender a situação:


IPTABLES=/sbin/iptables
IP6TABLES=/sbin/ip6tables
MODPROBE=/sbin/modprobe

IF_LOOPBACK="lo"

IF_INT="eth1"
IP_INT="10.1.1.250"

IF_EXT="eth0"
IP_EXT="XXX.XX.XX.XXX"

#IF_DMZ="eth"
#IP_DMZ=""

NET_INT="10.1.1.0/24"


### flush existing rules and set chain policy setting to DROP
echo "[+] Flushing iptables rules..."
$IPTABLES -F
$IPTABLES -F -t nat
$IPTABLES -F -t mangle
$IPTABLES -X
$IPTABLES -X -t nat
$IPTABLES -X -t mangle

### this policy does not handle IPv4 traffic except to drop it.
#
echo "[+] Disabling IPv4 traffic..."
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

### this policy does not handle IPv6 traffic except to drop it.
#
echo "[+] Disabling IPv6 traffic..."
$IP6TABLES -P INPUT DROP
$IP6TABLES -P OUTPUT DROP
$IP6TABLES -P FORWARD DROP

### load connection-tracking modules
#
echo "[+] Loading modules..."
$MODPROBE ip_conntrack
$MODPROBE iptable_nat
$MODPROBE ip_conntrack_ftp
$MODPROBE ip_nat_ftp
$MODPROBE ip_tables
$MODPROBE ipt_LOG
$MODPROBE ipt_REJECT
$MODPROBE ipt_MASQUERADE
$MODPROBE ipt_state
$MODPROBE ipt_multiport
$MODPROBE iptable_mangle
$MODPROBE ipt_limit
$MODPROBE xt_limit
$MODPROBE ipt_mark
$MODPROBE ipt_MARK
$MODPROBE ipt_string
$MODPROBE ip_gre
$MODPROBE ip_nat_pptp
$MODPROBE tun


###### INPUT chain ######
#########################
#
echo "[+] Setting up INPUT chain..."

### [++] state tracking rules
$IPTABLES -A INPUT -m state --state INVALID -j DROP
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

### [++] ACCEPT rules

### [+++] ssh
$IPTABLES -A INPUT -p tcp -i $IF_INT -s $NET_INT --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX/27 --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX --dport 22 -j ACCEPT
$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX --dport 22 -j ACCEPT

### [+++] pptp
$IPTABLES -A INPUT -i $IF_EXT -p tcp --dport 1723 -j ACCEPT
$IPTABLES -A INPUT -i $IF_EXT -p 47 -j ACCEPT

### [+++] dns
$IPTABLES -A INPUT -i $IF_INT -s $NET_INT -p udp --dport 53 -j ACCEPT

### [++] squid proxy
$IPTABLES -A INPUT -i $IF_INT -p tcp --dport 3128 -s $NET_INT -j ACCEPT

### [++] icmp
$IPTABLES -A INPUT -i $IF_INT -p icmp -s $NET_INT -j ACCEPT

### [++] anti-spoofing rules
$IPTABLES -A INPUT -s 10.0.0.0/8 -i $IF_EXT -j DROP
$IPTABLES -A INPUT -s 127.0.0.0/8 -i $IF_EXT -j DROP
$IPTABLES -A INPUT -s 172.16.0.0/12 -i $IF_EXT -j DROP
$IPTABLES -A INPUT -s 192.168.1.0/16 -i $IF_EXT -j DROP


### [++] state tracking rules
$IPTABLES -A OUTPUT -m state --state INVALID -j DROP
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

### [++] ACCEPT rules for allowing connections out

### [+++] pptp
$IPTABLES -A OUTPUT -o $IF_EXT -p tcp --dport 1723 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p 47 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p udp --dport 53 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p tcp --dport 80 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p tcp --dport 21 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p tcp --dport 20 -j ACCEPT
$IPTABLES -A OUTPUT -o $IF_EXT -p udp --dport 20 -j ACCEPT

$IPTABLES -A OUTPUT -o $IF_EXT -j ACCEPT

### [++] state tracking rules
$IPTABLES -A FORWARD -m state --state INVALID -j DROP
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT


A parte aonde estou adicionado as regras


##################################################################################
# acesso USUARIOS internet pela rede interna
#$IPTABLES -A FORWARD -i $IF_INT -s $NET_INT -o $IF_EXT -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -j LOG

# acesso cesan.com.br
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.18 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.47 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.45 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.43 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 201.77.202.37 -p tcp -j ACCEPT

#acesso www.dataprev.gov.br
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.152.32.178 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.152.40.93 -p tcp -j ACCEPT

# acesso www.previdencia.gov.br
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.152.40.50 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.152.32.144 -p tcp -j ACCEPT
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.47 -p tcp -j ACCEPT

#sindec
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 201.62.35.202 -p tcp --dport 444 -j ACCEPT



############################################################################################



#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

# acesso APs internet

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX-j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

#
$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -p udp --dport 53 -j ACCEPT

### [++] MASQUERADE
$IPTABLES -t nat -A POSTROUTING -s $NET_INT -o $IF_EXT -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o $IF_EXT -j MASQUERADE

exit




Agradeço pelo ajuda!


  


2. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 15:01h

Tenta assim:

$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.0/25 -p tcp --dport 0:0 -j ACCEPT

ou assim

$IPTABLES -I FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.0/25 -p tcp --dport 0:0 -j ACCEPT


3. Re: Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 15:14h

Fiz os testes com as regras e nenhuma delas deu certo.
O site não acessa.

Agradeço pela ajuda!


4. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 15:20h

xstocler escreveu:

Fiz os testes com as regras e nenhuma delas deu certo.
O site não acessa.

Agradeço pela ajuda!


tenta ir neste link aqui:

https://atendimentovirtual.sistemas.cesan.com.br:8443/AtendimentoVirtual/FaturaConsultaForm.jsp

quando tento acessar o site sem a :8443 atrás ele não abre!

PS: copie tudo e cole no navegador


5. Re: Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 15:30h

Com a porta ou sem, não consigo acessar!


Na verdade eu acesso o site http://www.cesan.com.br/?page_id=1165
que abre uma frame apontada pelo link que passei acima.


6. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 15:34h

tenta adicionar a porta então

$IPTABLES -A INPUT -p tcp -i $IF_EXT -s XXX.XX.XX.XXX --dport 8443 -j ACCEPT

onde xxx.xx.xx.xxx é o seu ip local, da máquina que você esta usando para acessar o terminal


7. Re: Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 15:41h

Coloquei a seguinte regra:


$IPTABLES -A INPUT -p tcp -i $IF_EXT -s 10.1.1.75 --dport 8443 -j ACCEPT



Continuo sem acessar!



8. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 16:39h

estranho... tem algo mais bloqueando ai (usa squid?), você esta digitando essas regras no servidor ou uma máquina comum? como é a arquitetura da rede?

EX:.

roteador < máquina < modem


9. Re: Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 16:47h

Funcionar da seguinte forma.
Existe algumas maquinas que tem acesso direto ao proxy 10.1.1.250:3128.

Esses usuários tem acesso liberado.

Os demais utiliza uma outra proxy e em alguns sites ele passa pelo proxy 10.1.1.250:3128.
Existe uma regra GPO para essa passagem de proxy.


::: Topologia

Sinal internet > Router > switch > (1) AP's para internet wifi
(2) Firewall (10.1.1.250)



Squid.conf


#Paginas em portugues de erro
error_directory /usr/share/squid/errors/pt-br

#Configuração de entrada
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl rede-local src 10.1.1.0/24
#Portas permitidas
acl Portas_permitidas port 443 80 21 22 70 210 280 488 591 777 5938
acl CONNECT method CONNECTi


# Regras pessonalizadas
acl macs_liberados arp "/etc/squid/macs-liberados"

http_access allow manager localhost
http_access deny manager

#Bloqueando todas as outras portas
http_access deny !Portas_permitidas
http_access deny CONNECT !Portas_permitidas

#Finalizações
http_access deny !macs_liberados
http_access allow rede-local
http_access allow localhost
http_access deny all

#Porta proxy
#http_port 3128 transparent
http_port 3128
visible_hostname XXXXXXX.com.br

# Uncomment and adjust the following to add a disk cache directory.
#cache_dir ufs /var/spool/squid 100 16 256

# Leave coredumps in the first cache dir
coredump_dir /var/spool/squid

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
~
~



10. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 16:54h

tente adicionar a porta 8443 aqui:

acl Portas_permitidas port 443 80 21 22 70 210 280 488 591 777 5938 8443


11. Re: Liberar acesso à sites (SCRIPT IPTABLES)

xstocler
xstocler

(usa Outra)

Enviado em 30/09/2013 - 17:20h

perfeito.

Foi adicionado..

Foi dado restart no service squid.

testei com as regras:


$IPTABLES -A FORWARD -i $IF_INT -o $IF_EXT -d 200.216.216.47 -p tcp -j ACCEPT


ou


$IPTABLES -A INPUT -p tcp -i $IF_EXT -s 10.1.1.75 --dport 8443 -j ACCEPT


10.1.1.75 = IP Local da minha maquina


Não carregou a página!


12. Re: Liberar acesso à sites (SCRIPT IPTABLES)

Pedro
px

(usa Debian)

Enviado em 30/09/2013 - 17:43h

hum... estranho... tem mais alguma coisa bloqueando a net ai? tente colocar seu ip na acl dos ips liberados em ultimo caso...



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts