Criação Srcript FIREWALL [RESOLVIDO]

1. Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 11:19h

Bom dia galera da VOL, venho pedir ajuda a voces pelo problema que tenho enfrentado, criei um spript no "/etc/init.d" nomeado "firewall.sh", neste adicionei as seguintes regras:

############################## Limpar regras ##############################
iptables -F #Limpa todas as regras da tabela filter
iptables -X #Deleta todas as cadeias da tabela filter
iptables -Z #Zera o contador da tabela filter
iptables -t nat -F #Limpa todas as regras da tabela NAT
iptables -t nat -X #Deleta todas as cadeias da tabela NAT
iptables -t nat -Z #Zera os contadores da tabela NAT
iptables -t mangle -F #Limpa todas as regras da tabela mangle
iptables -t mangle -X #Deleta todas as cadeias da tabela mangle
############################## Nomencla as interfaces ##############################
WAN=eth0
LAN=eth1
RINTERNA=192.168.0.0/24
############################## Libera a transmissão de pacotes ##############################
echo "1" > /proc/sys/net/ipv4/ip_forward
############################## Define Entradas ##############################
$iptables -P INPUT DROP
$iptables -P OUTPUT ACCEPT
$iptables -P FORWARD ACCEPT
############################## Libera Terminal Server ##############################
iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
iptables -t nat -A PREROUTING -d 192.168.1.9 -p tcp -m tcp --dport 3389 -j --DNAT --to 189.72.172.35:3389
############################## Liberar servicos de entrada##############################
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
############################## Liberar ping para internet ##############################
iptables -A INPUT -p icmp --icmp-type 0 -s $RINTERNA -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -s $RINTERNA -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -i $WAN -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -i $WAN -j ACCEPT
############################## Direcionar para o SQUID ##############################
iptables -t nat -A PREROUTING -s 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128
############################## Masquerade ##############################
iptables -t nat -A POSTROUTING -o $WAN -j MASQUERADE

Não sei se estou fazendo algo errado, ou se tem que adicionar algo no inicio do script para que ele rode corretamente, mas quando executo este, ele me reporta o seguinte erro:

root@squid-VirtualBox:/etc/init.d# ./firewall.sh
: Arquivo ou diretório não encontradot/ipv4/ip_forward
iptables: Bad policy name. Run `dmesg' for more information.
iptables: Bad policy name. Run `dmesg' for more information.
iptables: Bad policy name. Run `dmesg' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.10: unknown option `--to'
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
"ptables v1.4.10: REDIRECT: Bad value for "--to-ports" option: "3128
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `MASQUERADE
Try `iptables -h' or 'iptables --help' for more information.
root@squid-VirtualBox:/etc/init.d#


O que acho estranho, é que que se executo cada regra separadamente, o iptables roda normalmente, liberando meus acessos e tal, alguem poderia me dar uma dica de oque estou fazendo errado?

Des de já, agradeço a atenção!

Bom dia a todos!


  


2. Re: Criação Srcript FIREWALL [RESOLVIDO]

Luiz Henrique Mazer Junior
mazer

(usa CentOS)

Enviado em 25/11/2011 - 11:46h

Utilize da seguinte forma

echo 1 > /proc/sys/net/ipv4/ip_forward

verifique a declaração de suas variáveis, porque pelo que pude ver, ou voce não tem elas declaradas ou estão declaradas de um jeito e sendo utilizadas de outro.


3. Re: Criação Srcript FIREWALL [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 25/11/2011 - 11:56h

Vamos arrumar um pouco essa bagunça:


IPTABLES=`which iptables`
MODPROBE=`which modprobe`
############################## Carregando os módulos ########################
$MODPROBE ip_tables
$MODPROBE iptable_filter
$MODPROBE ipt_state
$MODPROBE ipt_LOG
############################## Limpar regras ##############################
$IPTABLES -F #Limpa todas as regras da tabela filter
$IPTABLES -X #Deleta todas as cadeias da tabela filter
$IPTABLES -Z #Zera o contador da tabela filter
$IPTABLES -t nat -F #Limpa todas as regras da tabela NAT
$IPTABLES -t nat -X #Deleta todas as cadeias da tabela NAT
$IPTABLES -t nat -Z #Zera os contadores da tabela NAT
$IPTABLES -t mangle -F #Limpa todas as regras da tabela mangle
$IPTABLES -t mangle -X #Deleta todas as cadeias da tabela mangle
############################## Nomencla as interfaces ##############################
WAN=eth0
LAN=eth1
RINTERNA=192.168.0.0/24
############################## Libera a transmissão de pacotes ##############################
echo 1 > /proc/sys/net/ipv4/ip_forward
############################## Masquerade ##############################
$IPTABLES -t nat -A POSTROUTING -o $WAN -j MASQUERADE
############################## Direcionar para o SQUID ##############################
$IPTABLES -t nat -A PREROUTING -s 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128
############################## Define Entradas ##############################
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
############################## Libera Terminal Server ##############################
$IPTABLES -A FORWARD -p tcp --dport 3389 -j ACCEPT
$IPTABLES -t nat -A PREROUTING -d 192.168.1.9 -p tcp -m tcp --dport 3389 -j --DNAT --to 189.72.172.35:3389
############################## Liberar servicos de entrada##############################
$IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$IPTABLES -A INPUT -i lo -j ACCEPT
############################## Liberar ping para internet ##############################
$IPTABLES -A INPUT -p icmp --icmp-type 0 -s $RINTERNA -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 8 -s $RINTERNA -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 0 -i $WAN -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 8 -i $WAN -j ACCEPT
############################## Direcionar para o SQUID ##############################
$IPTABLES -t nat -A PREROUTING -s 0/0 -p tcp --dport 80 -j REDIRECT --to-port 3128


Isso deve resolver.


4. Re: Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 11:57h

tentei tirando as "" e continua dando o caminho invalido, e as variaveis vou substituir pelo "eth0/1..." pra ver se retorna outro erro ou se persiste o mesmo

dps posto mais!


5. Re: Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 12:14h

Persiste o erro:

root@squid-VirtualBox:/etc/init.d# ./firewall.sh
not found.le ip_tables
not found.le iptable_filter
not found.le ipt_state
not found.le ipt_LOG
: Arquivo ou diretório não encontradot/ipv4/ip_forward
'ptables v1.4.10: Invalid target name `MASQUERADE
Try `iptables -h' or 'iptables --help' for more information.
"ptables v1.4.10: REDIRECT: Bad value for "--to-ports" option: "3128
Try `iptables -h' or 'iptables --help' for more information.
iptables: Bad policy name. Run `dmesg' for more information.
iptables: Bad policy name. Run `dmesg' for more information.
iptables: Bad policy name. Run `dmesg' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
iptables v1.4.10: unknown option `--to'
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
'ptables v1.4.10: Invalid target name `ACCEPT
Try `iptables -h' or 'iptables --help' for more information.
"ptables v1.4.10: REDIRECT: Bad value for "--to-ports" option: "3128
Try `iptables -h' or 'iptables --help' for more information.
root@squid-VirtualBox:/etc/init.d#


Na conf anterior comentei a declaração das variaveis, e substitui por "eth1, eth0 ..." mesmo assim, continuou retornando o mesmo erro!

=/

tenso!


6. Re: Criação Srcript FIREWALL [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 25/11/2011 - 13:28h

Seu sistema operacional não tem o iptables instalado então. Tente instalar outro S.O. pra tirar a dúvida. Com certeza vai dar certo.


7. Re: Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 14:10h

Saca soh:

root@squid-VirtualBox:/etc/init.d# apt-get install iptables
Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
iptables já é a versão mais nova.
0 pacotes atualizados, 0 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
root@squid-VirtualBox:/etc/init.d#


=/ serah que terei de trocar de SO?

=/

Dai eh triste hein! =D

Algum SO me aconselharia a usar pra facilitar as conf?

Vlw!


8. Re: Criação Srcript FIREWALL [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 25/11/2011 - 14:29h

Expressei-me mal. Não é q o iptables não esteja instalado, mas é q ele esteja incompleto. Vc pode tentar reinstalá-lo pra v se funciona. Ah! Quando vc executa linha por linha na shell, funciona?


9. Re: Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 14:50h

Jah tentei reinstalar, jah dei upgrade, e sim, quando digito 1 por 1, funciona!

=/

n entendo, sera que precisa declarar algo no inicio do script prele executar corretamente?

=/

tenso!


10. Re: Criação Srcript FIREWALL [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 25/11/2011 - 14:54h

Hum... vc não criou esse script em um editor d texto windows não, né?


11. Re: Criação Srcript FIREWALL [RESOLVIDO]

Anderson Fernando Dan
Fd NeW

(usa Fedora)

Enviado em 25/11/2011 - 14:55h

Sim, criei, EHhe, tem algo haver?

=D

Dessa nao sabia!

Oke acontece?


12. Re: Criação Srcript FIREWALL [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 25/11/2011 - 15:08h

Q [*****]... mas ok, dá pra salvar. Abra-o no editor vi e digite dentro do editor:


:set fileformat=unix
:x


Depois tente usar o seu script d novo. Ah! E nunca mais edite algo do linux no windows...

EDIT: Só explicando o fato. O Windows utiliza um caracter de quebra d linha diferente do unix (^M), por isso q dá o pau, pq o do unix é \n (se não me engano).



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts