- 締切済み
CentOS7firewall-cmdでESP許可
CentOS7を使ってLinux基礎の勉強中の初心者です。 ァイアフォール設定をfirewallの管理コマンド(firewall-cmd)で行っています。 ※CentOS7からファイアフォール設定が「firewalld.service」になったのでiptablesを直接見たり編集することはありません。 【質問】 あるゾーンにポート番号の概念のないESP(プロトコル番号50)を許可したいのですがやり方がわかりません。 どのようにしてプロトコル番号50を許可すればよいのでしょうか? 例えばあるゾーンに対してhttp許可する場合、2つのやり方がありますよね。 【ポート番号で有効化(許可)】 firewall-cmd [--zone=] --add-port=80/tcp または 【サービス名で有効化(許可)】 firewall-cmd [--zone=] --add-service=http 上記2つの方法に習い、ESP許可をサービス名に指定してみましたが(当然ながら?)プロトコル番号の許可はできませんでした。 firewall-cmd --add-service=esp Error: INVALID_SERVICE: esp ちなみに現在のゾーンはpublicで、このpublicにESP(プロトコル番号50)を許可したいのです。 ********************************************** public (default, active) interfaces: enp2s0 sources: services: dhcpv6-client http ssh ←サービス名で許可 ports: ←ポート番号で許可 masquerade: no forward-ports: icmp-blocks: rich rules:
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- Wr5
- ベストアンサー率53% (2173/4061)
試したコトはありませんが…… # というかCentOS7も仮想環境で動かしているだけで実機に入れていない。 >どのようにしてプロトコル番号50を許可すればよいのでしょうか? iptablesだと-p 50で指定する感じになります…かね? firewall-cmdだと--add-rich-ruleオプションでプロトコル番号(iptablesの-pオプション相当)の指定が可能…かと思われます。 rich-ruleでの書式について確認が必要かも知れませんけど。 # 簡単に検索すると… # http://luozengbin.github.io/blog/2014-06-16-%5B%E6%A4%9C%E8%A8%BC%5Dfirewalld%E3%82%92%E9%81%8A%E3%82%93%E3%81%A7%E3%81%BF%E3%81%9F.html#sec-9 とか # http://serverfault.com/questions/654066/why-does-my-firewalld-configuration-on-centos-7-fail-to-start-and-show-iptables とか…でしょうかねぇ……。 >※CentOS7からファイアフォール設定が「firewalld.service」になったのでiptablesを直接見たり編集することはありません。 私だったら、基本となるルールは/etc/sysconfig/iptablesに記入でしょうかねぇ…。 で、動的に変更する場合はfirewall-cmdで……だろうか。 あんまり動的に変更することなさそうですが。(ルータが間に居るしね) 起動後に動的に変更することあまりありませんし。 以前にSSHへの攻撃IPをREJECTリスト(DROPリストだったか?)に入れるというのを実験した時は、 専用のチェーンを作成してそこにiptablesコマンドで追加していくカタチだったし。 # 保存はしていなかったのでリブートでブラックリストが消える状態でした。 # 削除したい場合でもiptablesコマンドで削除可能でしたしね。(ブラックリスト中の1エントリを削除したい。という場合にものすごく面倒ではありましたが。(『チェーン内の何番目』を削除という指定で。))