Android

Como configurar um firewall com o ufw no ubuntu 18.04

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall rules with UFW

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall rules with UFW

Índice:

Anonim

Um firewall configurado corretamente é um dos aspectos mais importantes da segurança geral do sistema. Por padrão, o Ubuntu vem com uma ferramenta de configuração de firewall chamada UFW (Uncomplicated Firewall). O UFW é um front-end fácil de usar para gerenciar regras de firewall do iptables e seu principal objetivo é facilitar o gerenciamento do iptables ou, como o nome diz, não é complicado.

Pré-requisitos

Antes de começar com este tutorial, verifique se você está conectado ao servidor com uma conta de usuário com privilégios de sudo ou com o usuário root. A melhor prática é executar comandos administrativos como um usuário sudo em vez de root. Se você não possui um usuário sudo no seu sistema Ubuntu, pode criar um seguindo estas instruções.

Instale o UFW

O Firewall não complicado deve ser instalado por padrão no Ubuntu 18.04, mas se não estiver instalado no seu sistema, você poderá instalar o pacote digitando:

sudo apt install ufw

Verificar status do UFW

Após a conclusão da instalação, você pode verificar o status do UFW com o seguinte comando:

sudo ufw status verbose

O UFW está desativado por padrão. Se você nunca ativou o UFW antes, a saída será assim:

Status: inactive

Se o UFW estiver ativado, a saída será semelhante à seguinte:

Políticas padrão do UFW

Por padrão, o UFW bloqueará todas as conexões de entrada e permitirá todas as conexões de saída. Isso significa que qualquer pessoa que tente acessar seu servidor não poderá se conectar, a menos que você abra especificamente a porta, enquanto todos os aplicativos e serviços em execução no servidor poderão acessar o mundo externo.

As políticas padrão são definidas no arquivo /etc/default/ufw e podem ser alteradas usando o sudo ufw default comando.

As políticas de firewall são a base para a criação de regras mais detalhadas e definidas pelo usuário. Na maioria dos casos, as Políticas Padrão UFW iniciais são um bom ponto de partida.

Perfis de aplicativos

Ao instalar um pacote com o comando apt ele adicionará um perfil de aplicativo ao diretório /etc/ufw/applications.d . O perfil descreve o serviço e contém configurações de UFW.

Você pode listar todos os perfis de aplicativos disponíveis no seu servidor digitando:

sudo ufw app list

Dependendo dos pacotes instalados no seu sistema, a saída será semelhante à seguinte:

Available applications: Dovecot IMAP Dovecot POP3 Dovecot Secure IMAP Dovecot Secure POP3 Nginx Full Nginx HTTP Nginx HTTPS OpenSSH Postfix Postfix SMTPS Postfix Submission

Para encontrar mais informações sobre um perfil específico e regras incluídas, use o seguinte comando:

sudo ufw app info 'Nginx Full'

Profile: Nginx Full Title: Web Server (Nginx, HTTP + HTTPS) Description: Small, but very powerful and efficient web server Ports: 80, 443/tcp

Como você pode ver na saída acima, o perfil 'Nginx Full' abre as portas 80 e 443 .

Permitir conexões SSH

Antes de ativar o firewall UFW, precisamos adicionar uma regra que permita conexões SSH de entrada. Se você estiver se conectando ao servidor a partir de um local remoto, o que é quase sempre o caso, e você ativar o firewall UFW antes de permitir explicitamente as conexões SSH de entrada, você não poderá mais se conectar ao servidor Ubuntu.

Para configurar seu firewall UFW para permitir conexões SSH de entrada, digite o seguinte comando:

sudo ufw allow ssh

Rules updated Rules updated (v6)

Se você alterou a porta SSH para uma porta personalizada em vez da porta 22, será necessário abrir essa porta.

Por exemplo, se o seu daemon ssh escutar na porta 4422 , você poderá usar o seguinte comando para permitir conexões nessa porta:

sudo ufw allow 4422/tcp

Ativar UFW

Agora que o seu firewall UFW está configurado para permitir conexões SSH de entrada, podemos ativá-lo digitando:

sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup

Você será avisado de que a ativação do firewall pode interromper as conexões ssh existentes, basta digitar y e pressionar Enter .

Permitir conexões em outras portas

Dependendo dos aplicativos executados no servidor e de suas necessidades específicas, você também precisará permitir o acesso de entrada a algumas outras portas.

Abaixo, mostraremos alguns exemplos de como permitir conexões de entrada para alguns dos serviços mais comuns:

Porta aberta 80 - HTTP

As conexões HTTP podem ser permitidas com o seguinte comando:

sudo ufw allow

em vez de http, você pode usar o número da porta, 80:

sudo ufw allow 80/tcp

ou você pode usar o perfil do aplicativo, neste caso, 'Nginx

sudo ufw allow 'Nginx

Porta aberta 443 - HTTPS

As conexões HTTP podem ser permitidas com o seguinte comando:

sudo ufw allow

Para obter o mesmo perfil em vez do https você pode usar o número da porta 443 :

sudo ufw allow 443/tcp

ou você pode usar o perfil do aplicativo, 'Nginx

sudo ufw allow 'Nginx

Porta aberta 8080

sudo ufw allow 8080/tcp

Permitir intervalos de portas

Em vez de permitir o acesso a portas únicas, o UFW nos permite permitir o acesso a intervalos de portas. Ao permitir intervalos de portas com o UFW, você deve especificar o protocolo, tcp ou udp . Por exemplo, se você deseja permitir portas de 7100 a 7200 no tcp e no udp , execute o seguinte comando:

sudo ufw allow 7100:7200/tcp sudo ufw allow 7100:7200/udp

Permitir endereços IP específicos

Para permitir o acesso em todas as portas da sua máquina doméstica com o endereço IP 64.63.62.61, especifique from seguido pelo endereço IP que você deseja colocar na lista de permissões:

sudo ufw allow from 64.63.62.61

Permitir endereços IP específicos na porta específica

Para permitir o acesso a uma porta específica, digamos porta 22 da sua máquina de trabalho com endereço IP 64.63.62.61, use to any port seguida pelo número da porta:

sudo ufw allow from 64.63.62.61 to any port 22

Permitir sub-redes

O comando para permitir a conexão com uma sub-rede de endereços IP é o mesmo que ao usar um único endereço IP, a única diferença é que você precisa especificar a máscara de rede. Por exemplo, se você deseja permitir o acesso a endereços IP que variam de 192.168.1.1 a 192.168.1.254 até a porta 3360 (MySQL), você pode usar este comando:

sudo ufw allow from 192.168.1.0/24 to any port 3306

Permitir conexões com uma interface de rede específica

Para permitir o acesso a uma porta específica, digamos porta 3360, apenas para a interface de rede específica eth2 , é necessário especificar allow in on a allow in on e o nome da interface de rede:

sudo ufw allow in on eth2 to any port 3306

Negar conexões

A política padrão para todas as conexões de entrada está definida para deny e, se você não a tiver alterado, o UFW bloqueará todas as conexões de entrada, a menos que você abra a conexão especificamente.

Digamos que você abriu as portas 80 e 443 e seu servidor está sendo atacado pela rede 23.24.25.0/24 . Para negar todas as conexões de 23.24.25.0/24 você pode usar o seguinte comando:

sudo ufw deny from 23.24.25.0/24

sudo ufw deny from 23.24.25.0/24 to any port 80 sudo ufw deny from 23.24.25.0/24 to any port 443

Escrever regras de negação é o mesmo que escrever regras de permissão, você só precisa substituir allow por deny .

Excluir regras UFW

Existem duas maneiras diferentes de excluir regras do UFW, pelo número da regra e especificando a regra real.

Excluir regras do UFW por número de regra é mais fácil, especialmente se você é novo no UFW. Para excluir uma regra por um número de regra, primeiro você precisa encontrar o número da regra que deseja excluir, com o seguinte comando:

sudo ufw status numbered

Status: active To Action From -- ------ ---- 22/tcp ALLOW IN Anywhere 80/tcp ALLOW IN Anywhere 8080/tcp ALLOW IN Anywhere

Para excluir a regra número 3, a regra que permite conexões com a porta 8080, use o seguinte comando:

sudo ufw delete 3

O segundo método é excluir uma regra especificando a regra real; por exemplo, se você adicionou uma regra para abrir a porta 8069 pode excluí-la com:

sudo ufw delete allow 8069

Desativar UFW

Se, por qualquer motivo, você quiser parar o UFW e desativar todas as regras, pode usar:

sudo ufw disable

Posteriormente, se você deseja reativar o UTF e ativar todas as regras, digite:

sudo ufw enable

Redefinir UFW

A redefinição do UFW desativará o UFW e excluirá todas as regras ativas. Isso é útil se você deseja reverter todas as suas alterações e começar do zero.

Para redefinir o UFW, basta digitar o seguinte comando:

sudo ufw reset

Conclusão

Você aprendeu como instalar e configurar o firewall UFW no seu servidor Ubuntu 18.04. Certifique-se de permitir todas as conexões de entrada necessárias para o funcionamento adequado do seu sistema, enquanto limita todas as conexões desnecessárias.

ufw firewall iptables segurança do ubuntu