Alguém poderia dar alguns passos simples com o exemplo de configuração, como configurar um firewall simples no Ubuntu (usando apenas o console)? Somente o acesso ssh, http e https deve ser permitido.
Alguém poderia dar alguns passos simples com o exemplo de configuração, como configurar um firewall simples no Ubuntu (usando apenas o console)? Somente o acesso ssh, http e https deve ser permitido.
Respostas:
sudo ufw padrão negar
sudo ufw permite http
sudo ufw permitir https
sudo ufw permitir ssh
sudo ufw enable
Use este script.
Apenas decida se você deseja permitir 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
Conforme observado nos comentários de outra resposta, você não deseja perder sua conexão antes de permitir a porta ssh. Na página do manual:
"GERENCIAMENTO REMOTO
Ao executar o ufw enable ou iniciar o ufw através do seu initscript, o ufw liberará suas cadeias. Isso é necessário para que o ufw possa manter um estado consistente, mas pode eliminar as conexões existentes (por exemplo, ssh). O ufw suporta a adição de regras antes de ativar o firewall, para que os administradores possam:
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 a ativação do firewall. Observe que quando o ufw for '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 ao executar esse script, mas, após executá-lo, você poderá efetuar login novamente pelo 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 .
As tabelas rápidas me ajudaram a aprender as regras do iptables. Basta executar o script e ele irá gerar um script iptables para você ... então você pode abri-lo e visualizar os comandos associados gerados pelas perguntas que você fez. É um ótimo recurso de aprendizado.
Infelizmente, não é mais mantido.
Eu realmente gosto de usar firehol ( pacote ).
Para criar regras de configuração que você deseja, você precisa editar o arquivo / etc / default / firehol e alterar START_FIREHOL = YES
E você gostaria que seu /etc/firehol/firehol.conf se parecesse com isso.
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 grandes coisas sobre o firehol é o comando 'try'. Você pode ajustar seu arquivo de configuração e fazer uma 'tentativa de incêndio', se estiver conectado via ssh, e algo sobre o que você alterou matou o acesso à sua rede, então o firehol reverterá as alterações. Para que as mudanças entrem em vigor, você deve dizer confirmar.
Eu preferiria Shorewall . É fácil de configurar, mas flexível ao mesmo tempo.
Talvez você deva dar uma olhada em http://iptables-tutorial.frozentux.net/iptables-tutorial.html . Além disso, você pode encontrar mais informações em lartc.org
sudo apt-get install firestarter
Em seguida, procure no menu Sistema-> Administração.