Configurar a firewall em Linux com iptables

Saiba como proteger um servidor com iptables

Esta tradução foi automaticamente gerada pelo nosso parceiro SYSTRAN. Em certos casos, poderão ocorrer formulações imprecisas, como por exemplo nomes de botões ou detalhes técnicos. Recomendamos que consulte a versão inglesa ou francesa do manual, caso tenha alguma dúvida. Se nos quiser ajudar a melhorar esta tradução, clique em "Contribuir" nesta página.

Última atualização: 31/01/2022

Objetivo

O seu servidor dedicado está equipado com uma firewall. As firewalls criam uma barreira entre uma rede de confiança e uma rede não fiável. As firewalls funcionam definindo regras que regulem o tráfego autorizado e o que está bloqueado. A firewall comercial desenvolvida para os sistemas Linux é iptables.

Aprenda a proteger o seu servidor dedicado graças ao iptables.

A OVHcloud oferece-lhe serviços que são da sua responsabilidade. Uma vez que não temos acesso a estas máquinas, não podemos administrá-las nem fornecer-lhe assistência. O cliente é o único responsável pela gestão e pela segurança do serviço.

Este guia fornece as instruções necessárias para realizar as operações mais habituais. No entanto, se encontrar dificuldades ou tiver dúvidas quanto à administração, utilização ou segurança de um servidor, recomendamos que recorra a um prestador de serviços especializado. Para mais informações, aceda à secção “Quer saber mais?” deste manual.

Requisitos

  • Ter um servidor dedicado na sua conta OVHcloud
  • Dispor de um acesso administrador (root/sudo) ao seu servidor através de SSH

Instruções

Este guia indica os comandos para uma distribuição Ubuntu Server.

Manual para utilização geral. Poderá ter de adaptar alguns comandos consoante a distribuição e/ou o sistema operativo que utiliza. Poderá ser-lhe sugerida a utilização de ferramentas de terceiros. Em caso de dúvidas relacionadas com a sua utilização, consulte a documentação oficial.

Etapa 1: atualizar o sistema

Os programadores de sistemas operativos e de sistemas de distribuição propõem atualizações do software frequentes, muitas vezes por razões de segurança. Atualizar a sua distribuição e o seu sistema operativo é essencial para proteger o seu servidor.

Para mais informações, consulte o nosso manual sobre a segurança de um servidor dedicado.

Etapa 2: instalar a firewall iptables em Ubuntu

Existem duas versões diferentes de iptables para IPv4 e IPv6. As regras que estamos a cobrir neste tutorial Linux iptables dizem respeito ao IPv4. Para configurar iptables para IPv6, deve utilizar o utilitário iptables6. Estes dois protocolos diferentes não funcionam em conjunto e devem ser configurados de forma independente.

O iptables é instalado de forma padrão na maior parte dos sistemas Linux. Para confirmar que o iptables está instalado, utilize o seguinte comando:

sudo apt-get install iptables

O exemplo de saída em Ubuntu confirma que a última versão do iptables já está presente:

versão-iptables

Geralmente, um comando iptables é o seguinte:

sudo iptables [option] CHAIN_rule [-j target]

Eis uma lista de algumas opções iptables comuns:

  • -A —append: Adiciona uma regra a uma cadeia (no fim).
  • -C —check: Procura uma regra que corresponda às exigências da cadeia.
  • -D —delete: Eliminar as regras especificadas de uma cadeia.
  • -F —flush: Elimina todas as regras.
  • -I —insert: Adiciona uma regra a uma cadeia numa determinada posição.
  • -L —list: Indica todas as regras de um canal.
  • -N -new-chain: Crie uma nova cadeia.
  • -v —verbose: Afixar mais informações aquando da utilização de uma opção de lista.
  • -X —delete-chain: Eliminar a cadeia fornecida.

Etapa 3: verificar o estado atual dos itens

Para apresentar o conjunto das regras atuais no seu servidor, introduza o seguinte comando na janela do terminal:

sudo iptables -L

O sistema apresenta o estado das suas cadeias.
A saída irá listar três canais:

Check-Current-iptables

Etapa 4: autorizar o tráfego no localhost

Para autorizar o tráfego do seu próprio sistema (o localhost), adicione a cadeia de entrada ao introduzir o seguinte:

sudo iptables -A INPUT -i lo -j ACCEPT

Este comando configura a firewall para aceitar o tráfego para a interface localhost (lo) (-i). Agora, tudo o que vem do seu sistema passará pela sua firewall. Deve definir esta regra para que as aplicações possam comunicar com a interface localhost.

Etapa 5: autorizar o tráfego em portos específicos

Estas regras autorizam o tráfego nas diferentes portas que especifica através dos comandos indicados abaixo. Uma porta é um ponto de terminação de comunicação especificado para um tipo específico de dados.

Para autorizar o tráfego Web HTTP, introduza o seguinte comando:

sudo iptables -A INPUT -p tcp —dport 80 -j ACCEPT

Para autorizar apenas o tráfego SSH (Secure Shell) de entrada, introduza o seguinte:

sudo iptables -A INPUT -p tcp —dport 22 -j ACCEPT

Para autorizar o tráfego Internet HTTPS, introduza o seguinte comando:

sudo iptables -A INPUT -p tcp —dport 443 -j ACCEPT

As opções funcionam da seguinte forma:

  • -p: Verifique o protocolo especificado (tcp).
  • --dport: Especifica o porto de destino.
  • -j jump: Efetua a ação

Em caso de perda de acesso ao seu servidor, poderá sempre utilizar a ferramenta KVM/IPMI para aceder novamente e modificar a sua configuração ou eliminar as suas regras.

Para mais informações sobre o acesso a esta ferramenta, consulte este guia.

Etapa 6: controlar o tráfego por endereço IP

Utilize o seguinte comando para aceitar o tráfego a partir de um endereço IP específico.

sudo iptables -A INPUT -s o_seu_endereço_IP_a_autorizar -j ACCEPT

Substitua o endereço IP na encomenda pelo endereço IP que pretende autorizar.

Também pode bloquear o tráfego a partir de um endereço IP:

sudo iptables -A INPUT -s o_seu_endereço_IP_ao_bloquear -j DROP

Substitua o endereço IP na encomenda pelo endereço IP que pretende bloquear.

Pode rejeitar o tráfego a partir de um intervalo de endereços IP, com o seguinte comando:

sudo iptables -A INPUT -m iprange —selecione o seu_endereço_IP_inicio-o_o_endereço_IP_fin -j REJECT

As opções essenciais que utilizámos nos exemplos funcionam da seguinte forma:

  • -m: Corresponde à opção especificada.
  • -iprange: Indica ao sistema esperar um intervalo de endereços de IP em vez de um só.
  • —-src-range: Identifique o intervalo de endereços IP.

Etapa 7: eliminar o tráfego indesejável

Se definir regras de firewall iptables, deve impedir os acessos não autorizados eliminando todo o tráfego proveniente de outras portas:

sudo iptables -A INPUT -j DROP

A opção -A acrescenta uma nova regra à cadeia. Se uma ligação passa por portas diferentes das que definiu, ela será abandonada.

Atenção, se introduzir este comando antes de efetuar o passo 5, bloqueará todos os acessos, incluindo o que está em curso, e o acesso SSH. Isto é particularmente problemático numa máquina na qual se pode aceder remotamente.

Etapa 8: eliminar uma regra

Um método mais preciso consiste em eliminar o número de linha de uma regra.

sudo iptables -P INPUT DROP 

Em primeiro lugar, liste todas as regras e introduza o seguinte:

sudo iptables -L --line-numbers

line-numbers

Procure a linha da regra da firewall que deseja eliminar e execute este comando:

sudo iptables -D INPUT <Number>

Substitua o Number pelo número de linha de regra que pretende eliminar.

Etapa 9: registar as suas alterações

Ao reiniciar o sistema, o iptables não mantém as regras que criou. Cada vez que configura o iptables sob Linux, todas as modificações que efetuar aplicam-se apenas até ao próximo reboot.

Para registar as regras nos sistemas baseados em Ubuntu, introduza:

sudo -s iptables-save -c

Quando iniciar o seu sistema, iptables recarregará automaticamente as regras da firewall.

Pode desde já configurar regras de firewall iptables para o seu servidor Linux. Não hesite em experimentar, pois pode sempre eliminar as regras de que não precisa, esvaziar todas as regras e recomeçar.

Saiba mais

Fale com a nossa comunidade de utilizadores em https://community.ovh.com/en/.


Esta documentação foi-lhe útil?

Não hesite em propor-nos sugestões de melhoria para fazer evoluir este manual.

Imagens, conteúdo, estrutura... Não hesite em dizer-nos porquê para evoluirmos em conjunto!

Os seus pedidos de assistência não serão tratados através deste formulário. Para isso, utilize o formulário "Criar um ticket" .

Obrigado. A sua mensagem foi recebida com sucesso.


Estes manuais também podem ser úteis...

OVHcloud Community

Aceda ao seu espaço comunitário. Coloque as suas questões, procure informações e interaja com outros membros do OVHcloud Community.

Discuss with the OVHcloud community

Em conformidade com a alteração à Diretiva 2006/112/CE, os preços com IVA podem variar de acordo com o país de residência do cliente
(por defeito, os preços com IVA apresentados incluem o IVA português em vigor).