質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

firewalld

firewalldは、CentOS7からデフォルトになったパケットフィルタリングです。一時的なルールと永続的なルールが設定でき、通信の許可・拒否をコントロール。バージョン6まで利用されてきた「iptables」における課題をカバーしています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

1回答

7381閲覧

firefalld(ダイレクト設定)とzone設定の優先順位と是非

tourisugari

総合スコア6

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

firewalld

firewalldは、CentOS7からデフォルトになったパケットフィルタリングです。一時的なルールと永続的なルールが設定でき、通信の許可・拒否をコントロール。バージョン6まで利用されてきた「iptables」における課題をカバーしています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2018/08/10 04:46

##質問

ネットでゴリゴリ調べ間違っていると思う箇所は修正し、切り貼りした以下のシェルスクリプトを用いてfirefalldフィルタリングを設定しました。

ですがfirefalldのpublicゾーンにはすでに
services: ssh dhcpv6-client https http mysql
と特定のポートを開くという設定がされています。

このような時にzone設定とダイレクト設定はどちらが優先されるのでしょうか?
現在はどちらも適応されると考えて以下のようにダイレクト設定では特段ポートの設定をしていません。パブリックゾーンの設定が活きる為、そもそもすべてのポートは閉じている所から始まっていると思っています。

また、ipv4とipv6どちらにも対策をしたいのですべてに二通りの書き方をしています。
文字数制限のため以下ではipv4版しか書いていませんがまったく同じもののipv6版が書かれているイメージです。

bash

1firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 100 -i eth0 -p tcp --syn -j syn-flood 2firewall-cmd --permanent --direct --add-rule ipv6 filter INPUT 100 -i eth0 -p tcp --syn -j syn-flood

のようにです。

しかしいまいち冗長な感じがしております。なにか良い書き方を知っている人は教えていただけると嬉しいです。

##設定したシェルスクリプト

bash

1#!/usr/bin/bash 2 3######syn-flood:DROP###### 4firewall-cmd --permanent --direct --add-chain ipv4 filter syn-flood 5firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 100 -i eth0 -p tcp --syn -j syn-flood 6firewall-cmd --permanent --direct --add-rule ipv4 filter syn-flood 150 -m hashlimit --hashlimit 200/s --hashlimit-burst 3 --hashlimit-htable-expire 120000 --hashlimit-mode srcip --hashlimit-name t_syn_flood -j RETURN 7firewall-cmd --permanent --direct --add-rule ipv4 filter syn-flood 151 -j LOG --log-prefix "IPTABLES SYN-FLOOD:" 8firewall-cmd --permanent --direct --add-rule ipv4 filter syn-flood 152 -j DROP 9 10######Make sure NEW tcp connections are SYN packets:DROP##### 11firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 200 -i eth0 -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "IPTABLES SYN-FLOOD:" 12firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 201 -p tcp ! --syn -m state --state NEW -j DROP 13 14######ping of death:DROP###### 15firewall-cmd --permanent --direct --add-chain ipv4 filter ping-death 16firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 300 -i eth0 -p icmp --icmp-type echo-request -j ping-death 17firewall-cmd --permanent --direct --add-rule ipv4 filter ping-death 350 -m hashlimit --hashlimit 1/s --hashlimit-burst 10 --hashlimit-htable-expire 120000 --hashlimit-mode srcip --hashlimit-name t_ping_death -j RETURN 18firewall-cmd --permanent --direct --add-rule ipv4 filter ping-death 351 -j LOG --log-prefix "IPTABLES PING-DEATH:" 19firewall-cmd --permanent --direct --add-rule ipv4 filter ping-death 352 -j DROP 20 21# http_dos_attack 22firewall-cmd --permanent --direct --add-chain ipv4 filter HTTP_DOS 23firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 360 -i eth0 -p tcp -m multiport --dports 443,80 -j HTTP_DOS 24firewall-cmd --permanent --direct --add-rule ipv4 filter HTTP_DOS 361 -m hashlimit --hashlimit 1/s --hashlimit-burst 50 --hashlimit-htable-expire 120000 --hashlimit-mode srcip --hashlimit-name t_HTTP_DOS -j RETURN 25firewall-cmd --permanent --direct --add-rule ipv4 filter HTTP_DOS 362 -j LOG --log-prefix "http_dos_attack:" 26firewall-cmd --permanent --direct --add-rule ipv4 filter HTTP_DOS 363 -j DROP 27 28# 攻撃対策: Stealth Scan 29firewall-cmd --permanent --direct --add-chain ipv4 filter STEALTH_SCAN 30firewall-cmd --permanent --direct --add-rule ipv4 filter STEALTH_SCAN 400 -j LOG --log-prefix "stealth_scan_attack:" 31firewall-cmd --permanent --direct --add-rule ipv4 filter STEALTH_SCAN 410 -j DROP 32 33firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 420 -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j STEALTH_SCAN 34firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 421 -p tcp --tcp-flags ALL NONE -j STEALTH_SCAN 35firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 422 -p tcp --tcp-flags SYN,FIN SYN,FIN -j STEALTH_SCAN 36firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 423 -p tcp --tcp-flags SYN,RST SYN,RST -j STEALTH_SCAN 37firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 424 -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j STEALTH_SCAN 38firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 425 -p tcp --tcp-flags FIN,RST FIN,RST -j STEALTH_SCAN 39firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 426 -p tcp --tcp-flags ACK,FIN FIN -j STEALTH_SCAN 40firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 427 -p tcp --tcp-flags ACK,PSH PSH -j STEALTH_SCAN 41firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 428 -p tcp --tcp-flags ACK,URG URG -j STEALTH_SCAN 42 43######spoofing:DROP###### 44firewall-cmd --permanent --direct --add-chain ipv4 filter spoofing 45firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 500 -i eth0 -s 127.0.0.0/8 -j spoofing 46firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 501 -i eth0 -d 127.0.0.0/8 -j spoofing 47firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 502 -i eth0 -s 10.0.0.0/8 -j spoofing 48firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 503 -i eth0 -s 172.16.0.0/12 -j spoofing 49firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 504 -i eth0 -s 192.168.0.0/16 -j spoofing 50firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 505 -i eth0 -s 192.0.2.0/24 -j spoofing 51firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 506 -i eth0 -s 169.254.0.0/16 -j spoofing 52firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 507 -i eth0 -s 224.0.0.0/4 -j spoofing 53firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 508 -i eth0 -s 240.0.0.0/5 -j spoofing 54firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 509 -i eth0 -s 0.0.0.0/8 -j spoofing 55firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 510 -i eth0 -s 255.255.255.255 -j spoofing 56firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 511 -i eth0 -s 333.333.333.210 -j spoofing 57firewall-cmd --permanent --direct --add-rule ipv4 filter spoofing 550 -j LOG --log-prefix "IPTABLES SPOOFING:" 58firewall-cmd --permanent --direct --add-rule ipv4 filter spoofing 551 -j DROP 59 60######win FORWARDING###### 61firewall-cmd --permanent --direct --add-chain ipv4 filter win 62firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 600 -p tcp -m multiport --sports 135,137,138,139,445 -j win 63firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 601 -p udp -m multiport --sports 135,137,138,139,445 -j win 64firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 602 -p tcp -m multiport --dports 135,137,138,139,445 -j win 65firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 603 -p udp -m multiport --dports 135,137,138,139,445 -j win 66firewall-cmd --permanent --direct --add-rule ipv4 filter win 650 -j LOG --log-prefix "USING WIN PORT:" 67firewall-cmd --permanent --direct --add-rule ipv4 filter win 651 -j DROP 68 69 70firewall-cmd --reload 71 72

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

iptables -nvL を見るとわかると思いますが、ダイレクトルールがゾーンよりも先に評価されます。

また、ゾーンを使わないのであれば、firewalld を使わずに iptables, ip6tables でいいのではないでしょうか。

投稿2018/08/10 15:14

TaichiYanagiya

総合スコア12141

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問