script não funciona [RESOLVIDO]

13. Re: script não funciona [RESOLVIDO]

Stenio Ramos
sthenno

(usa Ubuntu)

Enviado em 14/12/2012 - 23:23h

executou normalmente aí?
porque aqui ainda deu esse erro:

./defense.sh: line 2: [: entrada: integer expression expected
./defense.sh: line 5: [: entrada: integer expression expected
./defense.sh: line 10: [: lp: integer expression expected
./defense.sh: line 18: [: aceitar: integer expression expected
./defense.sh: line 21: [: aceitar: integer expression expected
iptables v1.4.4: host/network `lp' not found
Try `iptables -h' or 'iptables --help' for more information.
ping: unknown host lp



  


14. Re: script não funciona [RESOLVIDO]

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 14/12/2012 - 23:30h

sthenno escreveu:

executou normalmente aí?
porque aqui ainda deu esse erro:

./defense.sh: line 2: [: entrada: integer expression expected
./defense.sh: line 5: [: entrada: integer expression expected
./defense.sh: line 10: [: lp: integer expression expected
./defense.sh: line 18: [: aceitar: integer expression expected
./defense.sh: line 21: [: aceitar: integer expression expected
iptables v1.4.4: host/network `lp' not found
Try `iptables -h' or 'iptables --help' for more information.
ping: unknown host lp


Tenta assim:
#!/bin/bash
if [ "$1" -eq "entrada" ]; then
ch="INPUT"
elif [ "$1" -eq "saida" ]; then
ch="OUTPUT"
else
fi

if [ "$2" -eq "lp" ]; then
ip=127.0.0.1
else
ip="$2"
fi


if [ "$3" -eq "aceitar" ]; then
op="ACCEPT"
elif [ "$3" -eq "derrubar" ]; then
op="DROP"
else
op="$3"
fi

# [tabela] [chain][ip] [opções]
iptables -t filter -A "$ch" -d "$ip" -j "$op"

ping "$ip"



15. Re: script não funciona [RESOLVIDO]

Stenio Ramos
sthenno

(usa Ubuntu)

Enviado em 15/12/2012 - 00:30h

deu esse outro erro:

./defense.sh: line 7: syntax error near unexpected token `fi'
./defense.sh: line 7: `fi'

mas é preciso o fi.


16. Re: script não funciona [RESOLVIDO]

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 15/12/2012 - 09:08h

sthenno escreveu:

deu esse outro erro:

./defense.sh: line 7: syntax error near unexpected token `fi'
./defense.sh: line 7: `fi'

mas é preciso o fi.


Faz assim então:
#!/bin/bash
if [ "$1" = "entrada" ]; then
ch="INPUT"
elif [ "$1" = "saida" ]; then
ch="OUTPUT"
else
ch="$1"
fi

if [ "$2" = "lp" ]; then
ip=127.0.0.1
else
ip="$2"
fi


if [ "$3" = "aceitar" ]; then
op="ACCEPT"
elif [ "$3" = "derrubar" ]; then
op="DROP"
else
op="$3"
fi

# [tabela] [chain][ip] [opções]
iptables -t filter -A $ch -d $ip -j $op
ping "$ip"



17. Re: script não funciona [RESOLVIDO]

Stenio Ramos
sthenno

(usa Ubuntu)

Enviado em 15/12/2012 - 12:18h

agora deu certo. vlw. :)
qual era o problema mesmo?
por que somente nos argumentos do comando iptables não se colocou aspas?

ah, quando eu mudo 'aceitar' para 'derrubar', se uso ping continua se conectando normalmente com localhost. Por quê?


18. Re: script não funciona [RESOLVIDO]

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 15/12/2012 - 16:27h

Se funcionou, marque como resolvido e indique a melhor resposta, se houver. Procedimento padrão no VOL ;-)



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts