Você deve redefinir ufw
para os padrões e começar de novo:
sudo ufw reset
Isso desativará ufw
e redefinirá ufw
para os padrões de instalação, o que significa
- deny all incoming and
- allow all outgoing connections.
Em seguida, basta adicionar algumas regras para permitir conexões de entrada para os aplicativos que você deseja usar:
sudo ufw allow ssh sudo allow http
Agora você pode ativar ufw
sudo ufw enable
Agora, o ufw
está em execução e configurado para negar todas as conexões de entrada, exceto as conexões com as portas necessárias para ssh
e http
. As conexões de saída são sempre permitidas e isso é normalmente desejado.
Você não precisa adicionar uma deny
-rule para conexões de entrada, como em sua configuração:
deny in on enp6s0 from any port 30:65535 proto tcp'
Esta regra é desnecessária, as conexões de entrada são negadas por padrão.
Se você deseja configurar as conexões de saída mais restritivas, é possível adicionar deny
-rules em vez de usar as conexões de saída como deny
. Isso mantém as regras mais simples, principalmente se desejar que conexões de saída sejam permitidas. Deny
-rules para conexões de saída teria que ser projetado com cuidado.
sudo ufw deny out 6773
por exemplo, negaria todas as conexões de saída na porta 6773, qualquer aplicativo que precisasse usar essa porta não seria mais capaz de funcionar corretamente.
Interfaces
Usar mais de uma interface torna as coisas um pouco mais complicadas. Os padrões (deny in, allow out) aplicam-se a todas as interfaces, também as regras que não especificam uma interface serão aplicadas a todas as interfaces. Você quer que suas interfaces se comportem de maneira diferente, então você precisa adicionar regras para cada interface.
As regras na seção acima precisam ser adaptadas para corresponder à sua interface externa (as regras da sua pergunta são assim).
As conexões de saída são permitidas por padrão em todas as interfaces, mas não nas conexões de entrada, portanto, você só precisa adicionar uma allow in
-rule para cada interface interna:
sudo allow in on "interface" from any
Ordem das Regras
Outra coisa importante é a ordem das regras. Quando um pacote chega na interface, ufw
verifica as regras, uma por uma. Sempre que uma regra corresponder à regra, ela será aplicada e o pacote negado, rejeitado ou permitido. O resto das regras que não foram verificadas neste momento não são usadas então. No seu caso, não vejo muita relevância da ordem das regras, mas sempre temos que lembrar que a ordem das regras pode ser importante.