Erro Iptables - syntax error

1. Erro Iptables - syntax error

Robson de Oliveira Melo
Robson_LEM

(usa Debian)

Enviado em 08/02/2010 - 10:20h

Bom Dia pessoal, é a primeira vez que estou configurando um firewall, gostaria de obter ajuda, Agradeço desde já.

Dei permissão de execução: cmod +c /etc/init.d/firewall
Quando o executo: /etc/init.d/firewall
Aparece o seguinte erro:
/etc/init.d/firewall: line 79: syntax error: unexpected end of file

O estranho é que o script so contém 78 Linhas! Se alguem poder me ajudar Obrigado

#!/bin/sh

#Rede Interna=eth0
#Internet=eth1

iniciar(){

# Carrega Modulos
modprobe ip_tables
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_nat_ftp
modprobe ipt_REJECT
modprobe ipt_MASQUERADE
# Aceita Pacotes Não Bloqueados
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Define Pasta da Lista de MACS
MACLIST='/etc/squid3/tabela'

# Define Variaveis
for i in `cat $MACLIST`; do
IPSOURCE=`echo $i | cut -d ';' -f 1`
MACSOURCE=`echo $i | cut -d ';' -f 2`

# Diretivas de Bloqueio IP/MAC
iptables -t filter -A FORWARD -d 0/0 -s $IPSOURCE -m mac --mac-source $MACSOURCE -j ACCEPT
iptables -t filter -A FORWARD -d $IPSOURCE -s 0/0 -j ACCEPT
iptables -t filter -A INPUT -s $IPSOURCE -d 0/0 -m mac --mac-source $MACSOURCE -j ACCEPT
iptables -t nat -A POSTROUTING -s $IPSOURCE -o eth2 -j MASQUERADE
done

# Compartilha a Conexão
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "Compartilhamento e Firewall..................[ OK ] ATIVADO"

# Bloqueia Acesso
iptables -P INPUT DROP
iptables -P FORWARD DROP

# Ativa Proxy Transparente:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
echo "Proxy Transparente...........................[ OK ] ATIVADO"

MSNLIST='/etc/squid3/msn_bloqueado'

for IP in `cat $MSNLIST`;do
IPS=`echo $IP`
iptables -I FORWARD -s $IPS -p tcp --dport 1863 -j REJECT
#iptables -I FORWARD -s $IPS -p tcp --dport 443 -j REJECT

done

iptables -A INPUT -p udp --dport 0:1023 -j DROP
iptables -A INPUT -i lo -j ACCEPT
}
parar(){
# Zera Regras e Desativa Compartilhamento e Firewall
iptables -F
iptables -X
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
echo 0 > /proc/sys/net/ipv4/ip_forward
echo "Compartilhamento e Firewall..................[ OK ] DESATIVADO"
echo "Proxy Transparente...........................[ OK ] DESATIVADO"
}

case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "Use os parâmetros start,stop ou restart"
esacs


  


2. Re: Erro Iptables - syntax error

Rafael Arcanjo
ST. RaLF

(usa Arch Linux)

Enviado em 08/02/2010 - 10:50h

Troca a palavra esacs por esac. Na última linha.


3. Re: Erro Iptables - syntax error

Wesley da Silva Vital
wvital

(usa Debian)

Enviado em 08/02/2010 - 12:26h

Bom dia!!

Verificar se os arquivos estão criados;
Sintaxe do for fechar corretamente;
Mudar o fechamento da função iniciar para linha abaixo.

Até,
Wesley Vital
LPIC-1


4. Bom Dia

Robson de Oliveira Melo
robson_lem

(usa Debian)

Enviado em 08/02/2010 - 12:42h

Problema Resolvido! Obrigado Wesley

Os arquivos não estão criados em /etc/init.d/squid3/
foram corrigidos erros de sintaxe e fechamento de função







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts