Observação: para este tutorial, a interface de rede enp2s0 e o endereço IP 192.168.0.2/7 foram usados como exemplo, substitua-os pelos corretos.
Instalando o ufw:
Para instalar o ufw no Debian, execute:
apt instalar ufw
Para habilitar a execução do UFW:
ufw enable
Para desativar a execução do UFW:
ufw disable
Se você deseja realizar uma verificação rápida do status do seu firewall, execute:
ufw status
Onde:
Status: informa se o firewall está ativo.
Para: mostra a porta ou serviço
Açao: mostra a política
A partir de: mostra as possíveis fontes de tráfego.
Também podemos verificar o status do firewall com detalhes, executando:
ufw status verbose
Este segundo comando para ver o status do firewall também exibirá as políticas padrão e a direção do tráfego.
Além das telas informativas com “ufw status” ou “ufw status verbose”, podemos imprimir todas as regras numeradas se ajudar a gerenciá-las como você verá mais tarde. Para obter uma lista numerada de suas regras de firewall, execute:
ufw status numerado
Em qualquer estágio, podemos redefinir as configurações do UFW para a configuração padrão executando:
ufw reset
Ao redefinir as regras do ufw, ele solicitará confirmação. Aperte Y confirmar.
Breve introdução às políticas de Firewalls:
Com cada firewall, podemos determinar uma política padrão, redes confidenciais podem aplicar uma política restritiva que significa negar ou bloquear todo o tráfego, exceto o especificamente permitido. Em contraste com uma política restritiva, um firewall permissivo aceitará todo o tráfego, exceto o especificamente bloqueado.
Por exemplo, se temos um servidor web e não queremos que ele sirva mais do que um simples site, podemos aplicar uma política restritiva bloqueando todas as portas, exceto as portas 80 (http) e 443 (https), que seria uma política restritiva porque por padrão todas as portas são bloqueadas a menos que você desbloqueie uma específica. Um exemplo de firewall permissivo seria um servidor desprotegido no qual apenas bloqueamos a porta de login, por exemplo, 443 e 22 para servidores Plesk como apenas portas bloqueadas. Além disso, podemos usar o ufw para permitir ou negar o encaminhamento.
Aplicação de políticas restritivas e permissivas com ufw:
Para restringir todo o tráfego de entrada por padrão usando ufw run:
ufw padrão negar entrada
Para fazer o oposto, permitindo que todo o tráfego de entrada seja executado:
ufw padrão permitir entrada
Para bloquear todo o tráfego de saída de nossa rede, a sintaxe é semelhante, para fazê-lo, execute:
Para permitir todo o tráfego de saída, nós apenas substituímos “negar" para "permitir”, Para permitir o tráfego de saída executado incondicionalmente:
Também podemos permitir ou negar tráfego para interfaces de rede específicas, mantendo regras diferentes para cada interface, para bloquear todo o tráfego de entrada da minha placa Ethernet que eu executaria:
ufw negar em enp2s0
Onde:
ufw= chama o programa
negar= define a política
dentro= tráfego de entrada
enp2s0= minha interface ethernet
Agora, vou aplicar uma política restritiva padrão para o tráfego de entrada e, em seguida, permitir apenas as portas 80 e 22:
ufw padrão negar entradaufw allow 22
ufw permitir http
Onde:
O primeiro comando bloqueia todo o tráfego de entrada, enquanto o segundo permite conexões de entrada para a porta 22 e o terceiro comando permite conexões de entrada para a porta 80. Observe que ufw nos permite chamar o serviço por sua porta ou nome de serviço padrão. Podemos aceitar ou negar conexões para a porta 22 ou ssh, porta 80 ou http.
O comando "ufw status prolixo”Mostrará o resultado:
Todo o tráfego de entrada é negado enquanto os dois serviços (22 e http) permitidos estão disponíveis.
Se quisermos remover uma regra específica, podemos fazê-lo com o parâmetro “excluir”. Para remover nossa última regra que permite o tráfego de entrada para a porta http, execute:
ufw excluir permitir http
Vamos verificar se os serviços http continuam disponíveis ou bloqueados executando ufw status verbose:
A porta 80 não aparece mais como exceção, sendo a porta 22 a única.
Você também pode excluir uma regra apenas invocando seu ID numérico fornecido pelo comando “ufw status numerado”Mencionado antes, neste caso, removerei o NEGAR política sobre o tráfego de entrada para a placa Ethernet enp2s0:
ufw delete 1
Ele vai pedir confirmação e irá prosseguir se for confirmado.
Além de NEGAR podemos usar o parâmetro REJEITAR que informará ao outro lado que a conexão foi recusada, para REJEITAR conexões para ssh, podemos executar:
ufw rejeitar 22
Então, se alguém tentar acessar nossa porta 22 será avisado que a conexão foi recusada conforme imagem abaixo.
Em qualquer estágio, podemos verificar as regras adicionadas sobre a configuração padrão executando:
ufw show adicionado
Podemos negar todas as conexões e, ao mesmo tempo, permitir endereços IP específicos. No exemplo a seguir, rejeitarei todas as conexões para a porta 22, exceto para o IP 192.168.0.2 que será o único capaz de se conectar:
ufw negar 22ufw permitir de 192.168.0.2
Agora, se verificarmos o status do ufw, você verá que todo o tráfego de entrada para a porta 22 foi negado (regra 1) enquanto permitido para o IP especificado (regra 2)
Podemos limitar as tentativas de login para evitar ataques de força bruta, definindo um limite de execução:
ufw limit ssh
Para terminar este tutorial e aprender a apreciar a generosidade do ufw, vamos lembrar a maneira como poderíamos negar todo o tráfego, exceto para um único IP usando iptables:
iptables -A SAÍDA -d 192.168.0.2 -j ACEITAR
iptables -P INPUT DROP
iptables -P OUTPUT DROP
O mesmo pode ser feito com apenas 3 linhas mais curtas e simples usando ufw:
ufw padrão negar entradaufw padrão negar saída
ufw permitir de 192.168.0.2
Espero que você tenha achado esta introdução ao ufw útil. Antes de qualquer consulta sobre UFW ou qualquer questão relacionada ao Linux, não hesite em nos contatar através de nosso canal de suporte em https: // support.linuxhint.com.
Artigos relacionados
Iptables para iniciantes
Configurar Snort IDS e criar regras