Como configurar o firewall simples no Ubuntu?

18

Alguém poderia dar alguns passos simples com o exemplo de configuração de como configurar o firewall simples no Ubuntu (usando apenas o console)? Somente acesso ssh, http e https deve ser permitido.

    
por klew 30.04.2009 / 13:16

9 respostas

20

sudo ufw default deny

sudo ufw permite http

sudo ufw permite https

sudo ufw permite ssh

sudo ufw enable

    
por 30.04.2009 / 13:23
14

Use este script.

Apenas decida se você deseja permitir o ICMP de entrada (ping) ou não.

# Clear any existing firewall stuff before we start
iptables --flush
iptables -t nat --flush
iptables -t mangle --flush

# As the default policies, drop all incoming traffic but allow all
# outgoing traffic.  This will allow us to make outgoing connections
# from any port, but will only allow incoming connections on the ports
# specified below.
iptables --policy INPUT DROP
iptables --policy OUTPUT ACCEPT

# Allow all incoming traffic if it is coming from the local loopback device
iptables -A INPUT -i lo -j ACCEPT

# Accept all incoming traffic associated with an established
# connection, or a "related" connection
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Allow incoming connections
# SSH
iptables -A INPUT -p tcp -i eth0 --dport 22 -m state --state NEW -j ACCEPT
# HTTP
iptables -A INPUT -p tcp -i eth0 --dport 80 -m state --state NEW -j ACCEPT
# HTTPS
iptables -A INPUT -p tcp -i eth0 --dport 443 -m state --state NEW -j ACCEPT

# Allow icmp input so that people can ping us
iptables -A INPUT -p icmp -j ACCEPT

# Reject all other incoming packets
iptables -A INPUT -j REJECT
    
por 30.04.2009 / 13:41
8

Como observado nos comentários para outra resposta, você não quer perder sua conexão antes de permitir a porta ssh. Na página do manual:

"GESTÃO REMOTA

Ao executar o ufw enable ou iniciar o ufw através de seu initscript, o ufw irá liberar suas cadeias. Isso é necessário para que o ufw possa manter um estado consistente, mas pode descartar as conexões existentes (por exemplo, ssh). O ufw suporta o acréscimo de regras antes de habilitar o firewall, para que os administradores possam fazer:

ufw allow proto tcp from any to any port 22

antes de executar o 'ufw enable'. As regras ainda serão liberadas, mas a porta ssh será aberta após ativar o firewall. Observe que, uma vez que o ufw esteja "ativado", o ufw não liberará as cadeias ao adicionar ou remover regras (mas ao modificar uma regra ou alterar a política padrão). "

Então, aqui está uma abordagem que usa um script para defini-lo. Você será desconectado quando executar este script, mas, depois de executá-lo, poderá efetuar login novamente por meio do ssh.

Coloque o seguinte em um script e chame-o de start-firewall.sh

#!/bin/sh
ufw allow ssh
ufw enable
ufw default deny
ufw allow http
ufw allow https

E então torne-o executável e execute-o fazendo

$ chmod + x start-firewall.sh
$ sudo ./start-firewall.sh

Para saber mais, leia a página de manual .

    
por 30.04.2009 / 15:40
2

Se você se familiarizar com o script iptables , terá controle total sobre todos os recursos do firewall. Não é nem de longe tão amigável quanto o Firestarter, mas isso pode ser feito no console com nano / vi editors. Confira este tutorial voltado para o Ubuntu.

    
por 30.04.2009 / 13:55
1

As Quicktables me ajudaram a aprender as regras do iptables. Apenas execute o script e ele irá gerar um script iptables para você ... então você pode abri-lo e ver os comandos associados gerados pelas perguntas que ele fez de você. É um ótimo recurso de aprendizado.

Infelizmente, não é mais mantido.

link

    
por 30.04.2009 / 15:43
1

Eu realmente gosto de usar o firehol ( pacote ).

Para criar regras de configuração, você precisa editar o arquivo / etc / default / firehol e alterar START_FIREHOL = YES

E você gostaria de fazer com que seu /etc/firehol/firehol.conf seja assim.

version 5

interface any IfAll
    client any AnyClient accept
    server "ssh http https" accept
    # Accept everything from trusted networks
    server anystateless AllInside accept src "10.3.27.0/24"

Uma das melhores coisas do firehol é o comando 'try'. Você pode ajustar seu arquivo de configuração e fazer um 'firehol try', se você estiver conectado via ssh, e algo sobre o que você mudou matou seu acesso à rede, então o firehol irá reverter as mudanças. Para que as alterações realmente entrem em vigor, você deve confirmar.

    
por 30.04.2009 / 20:46
1

Eu preferiria Shorewall . É fácil de configurar, mas flexível ao mesmo tempo.

    
por 01.05.2009 / 00:09
0

Talvez você deva dar uma olhada no link . Além disso, você pode encontrar mais informações sobre lartc.org

    
por 30.04.2009 / 13:23
-1

sudo apt-get install firestarter

Em seguida, consulte o menu Administração do Sistema> & gt ;.

    
por 30.04.2009 / 13:38