sudo ufw default deny
sudo ufw permite http
sudo ufw permite https
sudo ufw permite ssh
sudo ufw enable
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.
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
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 .
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.
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.
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.
Eu preferiria Shorewall . É fácil de configurar, mas flexível ao mesmo tempo.
sudo apt-get install firestarter
Em seguida, consulte o menu Administração do Sistema> & gt ;.