Abrir uma porta com firewalld não parece funcionar

4

Eu configurei o sshd para viver em uma porta diferente. Eu abri essa porta usando o firewalld:

$ sudo firewall-cmd --zone=public --add-port=22000/tcp --permanent    

As regras de listagem mostram que a porta 22000 está aberta:

$ sudo firewall-cmd --permanent --zone=public --list-all
public (default)
  interfaces:
  sources:
  services: dhcpv6-client ssh
  ports: 22000/tcp 
  masquerade: no
  forward-ports: 
  icmp-blocks:
  rich rules:

No entanto, não consigo fazer login de um host remoto para a porta 22000. Se eu usar o iptables, ele funcionará:

$ sudo iptables -I INPUT -p tcp --dport 22000 -j ACCEPT

Agora posso fazer o login. Mas como posso abrir a porta com o Firewalld ?

Edit: conforme solicitado:

 $ sudo firewall-cmd --get-default-zone
 public

E:

 $ firewall-cmd --get-active-zones
 public
  interfaces: eth0 eth1
mikemaccana
fonte
2
Sua publiczona não é atribuída a nenhuma interface e, portanto, não é efetiva, afaik. Qual é a saída de sudo firewall-cmd --get-default-zone?
Jakuje
Obrigado @Jakuje! Saída é public.
mikemaccana
1
Talvez mais útil seria firewall-cmd --get-active-zonescom a explicação que é a interface de rede que você está falando.
Jakuje
Parece que em algum estado não consistente .. no entanto, quando você começa a jogar com ambos iptablese firewalld, geralmente, pára de funcionar. Isso é provavelmente tudo o que posso dizer sobre isso.
Jakuje
@mikemaccana Você tem os dois firewallde está iptablescorrendo ao mesmo tempo? O firewall está funcionando? Tente remover iptablese iptables-servicerecarregar firewallde ver
trocadilho

Respostas:

5

Veja os documentos do firewalld :

A opção permanente - permanente pode ser usada para definir opções permanentemente. Essas alterações não são efetivadas imediatamente, somente após o reinício / recarregamento do serviço ou reinicialização do sistema. Sem a opção --permanent, uma alteração será apenas parte da configuração do tempo de execução.

Ao usar a --permanentopção, você deve recarregar a configuração firewall-cmd --reload
Isto ocorre porque a --permanentopção grava as alterações na configuração salva, não na configuração em execução.

Sergei B.
fonte
Obrigado! Você poderia adicionar um link para os documentos relevantes?
mikemaccana
Certo. firewalld.org/documentation/man-pages/firewall-cmd The permanent option --permanent can be used to set options permanently. These changes are not effective immediately, only after service restart/reload or system reboot. Without the --permanent option, a change will only be part of the runtime configuration.
Sergei B.