Como redefinir o iptables do Ubuntu 12.04 para o padrão sem se bloquear?

28

Alguém poderia gentilmente fornecer os comandos para redefinir completamente o iptables (firewall) do Ubuntu 12.04 para a configuração padrão de "fábrica"? Pelo que entendi, fazer isso errado faria com que um fosse bloqueado para fora da caixa do linux?

Texugo de mel
fonte

Respostas:

37

Defina a política padrão nas tabelas de ip como ACEITAR:

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

Em seguida, libere as regras:

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD

Observe que isso não afetará tabelas alternativas, tabelas NAT, tabelas de roteamento PRE / POST, etc.

Wing Tang Wong
fonte
1
Obrigado @Wing Tang Wong. As opções acima retornarão completamente o firewall ao estado padrão do Ubuntu? E se eu acidentalmente alterei as outras tabelas? Como faço para retornar todas as tabelas ao padrão? Obrigado!
Honey Badger
Você pode usar o iptables-save e o iptables-restore. Basicamente, despeje sua configuração do iptables em um arquivo. Verifique se os três principais são ACCEPT padrão e exclua os outros tipos de tabela do arquivo de despejo. Em seguida, importe-o novamente para o sistema em execução com iptables-restore. Isso deve levá-lo a um estado limpo. Isso pressupõe que você não pode ou não deseja reiniciar a caixa.
Wing Tang Wong
1
Peguei vocês. Pergunta: e se eu reiniciar a caixa? O que vai acontecer? Obrigado!
Honey Badger
Se você desabilitar todas as regras do iptable que iniciariam em uma reinicialização, as regras padrão para uma caixa recém-inicializada serão padronizadas apenas para as três tabelas no modo ACEITAR. As outras mesas desapareceriam. Supondo que as regras com as quais você estava lidando antes fossem feitas manualmente, uma reinicialização as limparia. No entanto, se eles aparecerem dessa maneira, será necessário localizar e desativar / comentar / remover as regras que estão sendo instaladas na inicialização.
Wing Tang Wong
A solução dada só funcionaria se você não instalou os iptables persistentes Se você fez, você precisa fazer o comand folowing:sudo apt-get remove iptables-persistent
IsraGab
16

Isso parece estar ok. Http://insanelabs.com/linux/linux-reset-iptables-firewall-rules/

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Aravinda
fonte
1
Cara, você não sabe o quanto sou grato por você postar !!!! Depois de várias horas de depuração dolorosa, finalmente mudei o iptables para o padrão e agora o meu problema foi corrigido! Meu problema era que eu tinha o servidor nodejs que funcionava bem no localhost: 80 e também o myip: 80, mas também tinha mais um servidor nodejs que funcionava no localhost: 4000, mas não funcionava no myip: 4000 e fiquei muito frustrado porque isso aconteceu após a instalação do servidor de correio no meu raspberri pi e isso aconteceu de repente. Mais uma vez cara, você tem uma cerveja minha! Obrigado!
Combine
3

A resposta de Wing estará em seu socorro quando as coisas derem errado iptables. Se você deseja redefinir tudo, incluindo tabelas alternativas, NAT, PRE/POST ROUTING, usar este script:

#!/bin/sh
#
# rc.flush-iptables - Resets iptables to default values.
#
# Copyright (C) 2001 Oskar Andreasson <bluefluxATkoffeinDOTnet>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program or from the site that you downloaded it
# from; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA
#
# Configurations
#
IPTABLES="/sbin/iptables"
#
# reset the default policies in the filter table.
#
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
#
# reset the default policies in the nat table.
#
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT
#
# reset the default policies in the mangle table.
#
$IPTABLES -t mangle -P PREROUTING ACCEPT
$IPTABLES -t mangle -P POSTROUTING ACCEPT
$IPTABLES -t mangle -P INPUT ACCEPT
$IPTABLES -t mangle -P OUTPUT ACCEPT
$IPTABLES -t mangle -P FORWARD ACCEPT
#
# flush all the rules in the filter and nat tables.
#
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
#
# erase all chains that's not default in filter and nat table.
#
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X

Fonte: Compartilhamento de conexão com a Internet - Ajuda do Ubuntu

Sahil Arora
fonte