Fórum Ubuntu Linux - PT
Área para Iniciantes => Iniciantes => Tópico iniciado por: marcelo.oliveira em 04 de Novembro de 2006, 00:40
-
A versão do ubuntu que uso é a 6.06 e gostaria de fazer com que a regra iptables a seguir (script) , fosse carregado na inicialização do ubuntu:
#!/bin/bash
#---------------------------------------------------------------------
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
# Porta 6801 : Bittorrent
iptables -A INPUT -p tcp --destination-port 6801 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 6801 -j ACCEPT
# Porta 4662 : aMule (e correlatos) - INPUT tcp
# Porta 4665 : aMule (e correlatos) - OUTPUT udp
# Porta 4672 : aMule (e correlatos) - Porta Auxiliar
iptables -A INPUT -p tcp --destination-port 4662 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 4665 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 4672 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 4672 -j ACCEPT
iptables -A INPUT -j DROP
Como fazer isso (carregamento do script na inicialização do ubuntu) ?
Desde já agradeço
Marcelo
-
no kde lembro que havia uma pasta que tudo que tivesse nela,era executado na inicialização. mas era na inicialização do kde e não do linux.
do gnome eu ja não sei
uma pergunta: pensei que o iptables fosse precisso gravar uma vez,que carregava ele sempre. pelomenos era assim quando eu usava o editor de iptables (guarddog),tem certeza que precissa executar esse comando sempre?
T+
-
Uplink
Se você usar um firewall gráfico , tipo firestarter ou guarddog , ele automaticamente salva suas regras iptables. Agora , estou fazendo "naunha" , criei um script com minhas regras e gostaria que essas regras fossem carregadas ao se iniciar o Ubuntu.
Obrigado.
-
marcelo.oliveira ,
existem algumas formas de se fazer isso, mais ao meu ver a mais simples é vc inserir suas regras no arquivo /etc/rc.local ou mesmo criar um arquivo separado, dar permissões de execução ao mesmo e então chama-lo no rc.local.
T+
Arlei
-
marcelo.oliveira eu também trabalhando em algo semelhante, estou fazendo um front-end gráfico usando o Xdialog, mas ainda estou estudando as regras do iptables, seria pedir mto para vc colocar ao lado da regra o que ela faz?
sobre tua pergunta:
copie o script para a pasta /etc/init.d: sudo cp scritp-firewall /etc/init.d/script-firewall
torne-o executável: sudo chmod +x /etc/init.d/script-firewall
crie um link simbólico para o rc: sudo ln -sf /etc/init.d/script-firewall /etc/rc2.d/S98script-firewall
espero ter ajudado e boa sorte!
-
marcelo.oliveira ,
existem algumas formas de se fazer isso, mais ao meu ver a mais simples é vc inserir suas regras no arquivo /etc/rc.local ou mesmo criar um arquivo separado, dar permissões de execução ao mesmo e então chama-lo no rc.local.
T+
Arlei
Arlei
Meu arquivo rc.local está da forma a seguir:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
exit 0
Aonde copiar a regra ?
-
marcelo.oliveira eu também trabalhando em algo semelhante, estou fazendo um front-end gráfico usando o Xdialog, mas ainda estou estudando as regras do iptables, seria pedir mto para vc colocar ao lado da regra o que ela faz?
sobre tua pergunta:
copie o script para a pasta /etc/init.d: sudo cp scritp-firewall /etc/init.d/script-firewall
torne-o executável: sudo chmod +x /etc/init.d/script-firewall
crie um link simbólico para o rc: sudo ln -sf /etc/init.d/script-firewall /etc/rc2.d/S98script-firewall
espero ter ajudado e boa sorte!
Caro
Já fiz esse procedimento e meu PC travou , tive que instalar novamente. Tenho receio de tentar novamente.
-
Bom, aqui funcionou certinho, o nome do meu script é firewall:
eduardo@eduardo:/etc/init.d$ ls -la | grep firewall
-rws--x--x 1 root root 2172 2006-11-04 11:52 firewall
eduardo@eduardo:/etc/init.d$
eduardo@eduardo:/etc/rc2.d$ ls -la | grep S98firewall
lrwxrwxrwx 1 root root 20 2006-11-04 11:43 S98firewall -> /etc/init.d/firewall
eduardo@eduardo:/etc/rc2.d$
nos testes iniciais estou bloqueando o acesso ao orkut:
eduardo@eduardo:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere 72.14.209.87
DROP all -- anywhere 72.14.209.85
DROP all -- anywhere 72.14.209.86
eduardo@eduardo:~$
só para constar: uso ubuntu 6.06 e meu pc é um desktop, não um servidor e o acesso a internet é via virtua, nao tenho rede local, ou seja, um computador usado em casa.
-
Bom, aqui funcionou certinho, o nome do meu script é firewall:
eduardo@eduardo:/etc/init.d$ ls -la | grep firewall
-rws--x--x 1 root root 2172 2006-11-04 11:52 firewall
eduardo@eduardo:/etc/init.d$
eduardo@eduardo:/etc/rc2.d$ ls -la | grep S98firewall
lrwxrwxrwx 1 root root 20 2006-11-04 11:43 S98firewall -> /etc/init.d/firewall
eduardo@eduardo:/etc/rc2.d$
nos testes iniciais estou bloqueando o acesso ao orkut:
eduardo@eduardo:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere 72.14.209.87
DROP all -- anywhere 72.14.209.85
DROP all -- anywhere 72.14.209.86
eduardo@eduardo:~$
só para constar: uso ubuntu 6.06 e meu pc é um desktop, não um servidor e o acesso a internet é via virtua, nao tenho rede local, ou seja, um computador usado em casa.
Cara, como mencionei , fiz isso é meu PC travou. Existe alguma forma no Linux tipo restauração do sistema , como no Windows ?
-
Pois é marcelo.oliveira como disse ainda estou desenvolvendo esse meu front-end. Não conheço nenhum método de ponto de restauração como no windows, esse método de inicialização é usado inclusive nesse tópico sobre softmodens http://ubuntuforum-pt.org/index.php?topic=4204.0 (http://ubuntuforum-pt.org/index.php?topic=4204.0) (só ilustração! não tem relação como esse tópico)
Acho que infelizmente não posso mais te ajudar, boa sorte
-
marcelo.oliveira ,
existem algumas formas de se fazer isso, mais ao meu ver a mais simples é vc inserir suas regras no arquivo /etc/rc.local ou mesmo criar um arquivo separado, dar permissões de execução ao mesmo e então chama-lo no rc.local.
T+
Arlei
Arlei
Meu arquivo rc.local está da forma a seguir:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
exit 0
Aonde copiar a regra ?
Basta vc colocar as suas regras do iptables ou a chamada ao seu arquivo de script que irá conter as regras antes da linha exit 0.
Cara, como mencionei , fiz isso é meu PC travou. Existe alguma forma no Linux tipo restauração do sistema , como no Windows ?
Inicializa sua maquina em modo de recuperação (recovery mode no menu do Grub) e edite ou delete os arquivos necessários. Vc pode fazer isso tbem inicializando por um LiveCD qquer e montar a partição onde teu o Ubuntu instalado para então fazer as edições necessárias.
T+
Arlei
-
Caro Arlei
Meu arquivo rc.local ficaria assim :
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
# Porta 6801 : Bittorrent
iptables -A INPUT -p tcp --destination-port 6801 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 6801 -j ACCEPT
# Porta 4662 : aMule (e correlatos) - INPUT tcp
# Porta 4665 : aMule (e correlatos) - OUTPUT udp
# Porta 4672 : aMule (e correlatos) - Porta Auxiliar
iptables -A INPUT -p tcp --destination-port 4662 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 4665 -j ACCEPT
iptables -A OUTPUT -p udp --destination-port 4672 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 4672 -j ACCEPT
iptables -A INPUT -j DROP
exit 0
Desde já agradeço.
Marcelo
-
Sim Marcelo,
a meu ver isso deverá funcionar, mais vc terá que testar para ver o resultado. Vc tbem pode colocar suas regras em um aquivo com permissão de execução no diretório /usr/bin por exemplo e chamar o mesmo no seu rc.local.
T+
Arlei
-
Arlei
Vou tentar. Agora em resposta anterior você disse:
"... Vc pode fazer isso tbem inicializando por um LiveCD qquer e montar a partição onde teu o Ubuntu instalado para então fazer as edições necessárias."
Como sou novo no Linux , como posso montar a partição do Linux ?
Desculpe o incomodo.
Marcelo
-
"... Vc pode fazer isso tbem inicializando por um LiveCD qquer e montar a partição onde teu o Ubuntu instalado para então fazer as edições necessárias."
Marcelo,
para montar partições no Linux se usa o comando mount, e para desmontar o umount. Mais o melhor é vc ler informações a respeito do assunto, porque alguem simplesmente lhe passar um comando e vc seguir o mesmo e funcionar, não ira lhe ajudar muito no sentido de entender o que realmente o comando fez e o porque fez.
Portanto, aconselho vc a dar uma lida no link abaixo, que fala sobre esse assunto. Mais esse guia, que é o chamado FocaLinux é muito bom e bastante explicativo (eu mesmo sempre que necessito recorro a ele para esclarecer alguma dúvida) e uma leitura bastante aconselhavel para ampliar seu conhecimento sobre esse poderoso SO.
http://www.guiafoca.org/guia/intermediario/ch-disc.htm#s-disc-pontomontagem
T+
Arlei
-
"... Vc pode fazer isso tbem inicializando por um LiveCD qquer e montar a partição onde teu o Ubuntu instalado para então fazer as edições necessárias."
Marcelo,
para montar partições no Linux se usa o comando mount, e para desmontar o umount. Mais o melhor é vc ler informações a respeito do assunto, porque alguem simplesmente lhe passar um comando e vc seguir o mesmo e funcionar, não ira lhe ajudar muito no sentido de entender o que realmente o comando fez e o porque fez.
Portanto, aconselho vc a dar uma lida no link abaixo, que fala sobre esse assunto. Mais esse guia, que é o chamado FocaLinux é muito bom e bastante explicativo (eu mesmo sempre que necessito recorro a ele para esclarecer alguma dúvida) e uma leitura bastante aconselhavel para ampliar seu conhecimento sobre esse poderoso SO.
http://www.guiafoca.org/guia/intermediario/ch-disc.htm#s-disc-pontomontagem
T+
Arlei
Obrigado Arlei
Marcelo