dポイントプレゼントキャンペーン実施中!

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:

A 回答 (1件)

試したコトはありませんが……


# というかCentOS7も仮想環境で動かしているだけで実機に入れていない。

>どのようにしてプロトコル番号50を許可すればよいのでしょうか?

iptablesだと-p 50で指定する感じになります…かね?

firewall-cmdだと--add-rich-ruleオプションでプロトコル番号(iptablesの-pオプション相当)の指定が可能…かと思われます。
rich-ruleでの書式について確認が必要かも知れませんけど。
# 簡単に検索すると…
# http://luozengbin.github.io/blog/2014-06-16-%5B% … とか
# http://serverfault.com/questions/654066/why-does … とか…でしょうかねぇ……。

>※CentOS7からファイアフォール設定が「firewalld.service」になったのでiptablesを直接見たり編集することはありません。

私だったら、基本となるルールは/etc/sysconfig/iptablesに記入でしょうかねぇ…。
で、動的に変更する場合はfirewall-cmdで……だろうか。
あんまり動的に変更することなさそうですが。(ルータが間に居るしね)
起動後に動的に変更することあまりありませんし。
以前にSSHへの攻撃IPをREJECTリスト(DROPリストだったか?)に入れるというのを実験した時は、
専用のチェーンを作成してそこにiptablesコマンドで追加していくカタチだったし。
# 保存はしていなかったのでリブートでブラックリストが消える状態でした。
# 削除したい場合でもiptablesコマンドで削除可能でしたしね。(ブラックリスト中の1エントリを削除したい。という場合にものすごく面倒ではありましたが。(『チェーン内の何番目』を削除という指定で。))
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!