ファイアウォールでポートを開いてもうまくいかないようです

ファイアウォールでポートを開いてもうまくいかないようです

sshd を別のポートで動作するように設定しました。firewalld を使用してそのポートを開きました。

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

リストルールでは、ポート 22000 が開いていることが示されています。

$ 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:

しかし、リモート ホストからポート 22000 にログインできません。iptables を使用すると、動作します。

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

ログインできるようになりました。しかしFirewalldでポートを開くにはどうすればいいですか?

編集: ご要望に応じて:

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

そして:

 $ firewall-cmd --get-active-zones
 public
  interfaces: eth0 eth1

答え1

を参照してくださいファイアウォールドキュメント:

永続的なオプション --permanent を使用すると、オプションを永続的に設定できます。これらの変更はすぐには有効にならず、サービスの再起動/再読み込みまたはシステムの再起動後にのみ有効になります。--permanent オプションがない場合、変更はランタイム構成の一部のみになります。

--permanentオプションを使用する場合は、設定をリロードする必要があります。これは、オプションが実行中の設定ではなく、保存された設定に変更を書き込むfirewall-cmd --reload
ためです。--permanent

関連情報