Como bloquear tentativas indesejadas de login SSH com PyFilter no Ubuntu 16.04

Como Bloquear Tentativas Indesejadas de Login SSH com PyFilter no Ubuntu 16.04

Introdução

O SSH (Secure Shell) é um protocolo de rede amplamente utilizado que permite que usuários se conectem com segurança a servidores remotos. No entanto, como qualquer outro serviço de rede, o SSH é vulnerável a ataques de força bruta, nos quais os invasores tentam repetidamente autenticar-se com diferentes combinações de nome de usuário e senha. Esses ataques podem sobrecarregar o servidor SSH, tornando-o lento ou até mesmo inacessível.

Para combater as tentativas indesejadas de login SSH, podemos usar uma ferramenta de filtragem como o PyFilter. O PyFilter é uma ferramenta poderosa de firewall baseada em Python que pode filtrar o tráfego de rede com base em regras personalizadas. Nesse artigo, mostraremos como instalar e configurar o PyFilter no Ubuntu 16.04 para bloquear tentativas indesejadas de login SSH.

Instalando o PyFilter

Antes de instalar o PyFilter, precisamos instalar o pacote Python-pip:


sudo apt-get update
sudo apt-get install python-pip

Em seguida, podemos instalar o PyFilter usando o pip:


sudo pip install pyfilter

Configurando o PyFilter

  Os melhores suportes para monitores de 2023

Agora que o PyFilter está instalado, precisamos criar um arquivo de configuração para especificar as regras de filtragem. Crie um novo arquivo chamado /etc/pyfilter.conf com o seguinte conteúdo:


[DEFAULT]
filter = pvfilter.filters.DropFilter()

[ssh]
accept = pvfilter.filters.AcceptFilter()
accept.tcp_dport = 22
accept.tcp_sport = [1024:65535]
accept.icmp_type = 8

deny = pvfilter.filters.RejectFilter()
deny.tcp_dport = 22
deny.tcp_sport = [1:1023, 65536:65535]
deny.icmp_type = 0
deny.icmp_code = 3

[dhcp]
accept = pvfilter.filters.AcceptFilter()
accept.udp_dport = 67
accept.udp_sport = 68

Explicando as Regras do PyFilter

Vamos explicar cada regra no arquivo de configuração:

* [DEFAULT] define o filtro padrão a ser aplicado a todo o tráfego.
* [ssh] define as regras para filtrar o tráfego SSH.
* accept permite conexões SSH originadas de portas de origem maiores que 1024.
* deny descarta todas as outras conexões SSH.
* [dhcp] define as regras para filtrar o tráfego DHCP.
* accept permite tráfego DHCP de porta UDP 68 para porta UDP 67.

Aplicando as Regras do PyFilter

Para aplicar as regras do PyFilter, precisamos recarregar o módulo do kernel do PyFilter:


sudo modprobe pyfilter

Verificando se o PyFilter está Funcionando

Podemos verificar se o PyFilter está funcionando executando o seguinte comando:


sudo pyfilter-show

Você deverá ver uma lista de regras, incluindo as que você definiu no arquivo de configuração.

Conclusão

Seguindo as etapas descritas neste artigo, você pode bloquear efetivamente as tentativas indesejadas de login SSH no Ubuntu 16.04 usando o PyFilter. O PyFilter é uma ferramenta poderosa e fácil de usar que pode ajudar a proteger seu servidor SSH contra ataques de força bruta.

Lembre-se de monitorar regularmente os logs do PyFilter para observar quaisquer atividades suspeitas e ajustar as regras conforme necessário. Com o PyFilter, você pode garantir a segurança do seu servidor SSH e evitar interrupções causadas por ataques de força bruta.

FAQs

1. O PyFilter pode bloquear outros tipos de tráfego além do SSH e DHCP?
Sim, o PyFilter pode ser usado para bloquear qualquer tipo de tráfego de rede configurando as regras de filtragem apropriadas.

2. Posso usar o PyFilter para permitir conexões SSH apenas de endereços IP específicos?
Sim, você pode adicionar uma regra de filtro para permitir conexões SSH apenas de endereços IP específicos na seção [ssh] do arquivo de configuração.

3. O PyFilter pode filtrar tráfego IPv6?
Sim, o PyFilter suporta filtragem de tráfego IPv6.

4. Como posso desabilitar o PyFilter?
Para desabilitar o PyFilter, execute o seguinte comando:


sudo rmmod pyfilter

5. Onde posso obter mais informações sobre o PyFilter?
Você pode obter mais informações sobre o PyFilter em sua página do GitHub.

6. O PyFilter é compatível com outras distribuições Linux além do Ubuntu?
Sim, o PyFilter é compatível com outras distribuições Linux, incluindo CentOS, Debian e Fedora.

7. O PyFilter é seguro de usar?
Sim, o PyFilter é considerado seguro de usar. No entanto, é importante revisar as regras de filtragem cuidadosamente antes de aplicá-las para garantir que o tráfego legítimo não seja bloqueado acidentalmente.

8. O PyFilter pode ser usado para fins além de bloquear tentativas indesejadas de login SSH?
Sim, o PyFilter pode ser usado para uma ampla gama de fins de filtragem de rede, como controle de largura de banda, monitoramento de tráfego e proteção contra ataques de negação de serviço (DoS).