follow me

[emo] Firewallルールについて書くよ

2020年、Advent Calendar を書いてきました。あと少しですね。
1年以上も開発に関わっているユカイ工学株式会社の「BOCCO emo」について赤裸々に書き綴ろう。

絵心が無いです。ははは。

今日は、Firewallルール について。
Firewallルールというと、何の話と考えるでしょうか。
ネットワーク機器の設定、一般家庭では関係無いと思うでしょうか。
BOCCO emo の様な民生品デバイスで Firewallルール の話とかと思われるかもしれません。

ただ Firewallルール といっても、2パターンあるかと思います。
  1. 製品内部のFirewallルールの話
  2. 製品が通信するためにネットワーク機器で必要となるFirewallルールの話


製品内部のFirewallルール
最近は、民生品でも、Firewall を入れておく事が増えているかと思います。
Firewall という程のものでもなく、Linux を入れているのであれば、iptables を入れておく、というか正確には netfilter を入れておくというのが一般的になっていると思います。
ルールとして、内部からは全て ACCEPT、外部からは必要なもの以外は DROP というのが一番容易で、基本内部から外部に対してセッションを張るという考え方で作成してしまうのが、ルールのメンテナンス工数を考えれば多く取られるのではないだろうか。
更に厳密にするなら、内部からも想定されているもの以外を DROP する様なルールを入れる事で、製品としてより堅牢なものにする事が可能になります。
該当製品が、何処まで求めるのかと、開発工数とで、ルールの作りこみ度合いが変動してくる。

また、カスタマイズ系がある製品だと、カスタマイズ毎にルールが変わったりもします。
そのルールの変動に対応する工数を減らすには。という事で、OpenWrt だとどうなのだろうかと、
パッケージ次第ではあるのですが、こういった形でパッケージに Firewallルール を追加処理を入れているやり方があります。
https://github.com/openwrt/packages/blob/master/net/miniupnpd/files/miniupnpd.defaults
1例ですが、この形であればパッケージを入れた状態の場合のみ Firewallルール を追加する事ができます。

と書いておきながら、こちらの Firewallルール について書きたかった訳ではないです。(ゴメンなさい


疎通要件
製品の疎通要件について記載されている事は少ない気がします。
製品の接続要件については記載がされている事は多いのに。
IEEE802.11b/g/n (2.4GHz) という記載であったり、LTE バンド1,3,19 という記載であたりです。

疎通要件で、http(80) が通れば良いのか、https(443) が通れば良いのか、ntp(123) が必要なのか、記載されている製品(民生品)は少なく感じます。
ユーザが知らなくても基本動くから問題ないと済むのが民生品ではあるものの、売り先が企業で利用ユーザも企業となった場合に少し面倒になります。
事務所内での利用となった途端に、Firewall がという話が出てきてしまいます。
場合によっては Proxy がという話が出てきます。(最近は透過の方が多いのですかね?聞かない気がします。

会社のネットワーク管理者の方々は、明確な依頼ベースで対応なのですかね?
導入したい人が、製品開発者に確認ですかね?
導入したい人が、パケットキャプチャして解析ですかね?
偶然通ったからいいや (民生品は、なんとなく通る様に設計しているものが多いですかね。。。

実際に、BOCCO emo だと必要なルールってなんだろうと考えてみると、うーん、と。
  • dns(53)
  • dhcp(67, 68)
  • ntp(123)
  • https(443)
  • websocket(443)
こんなもんですかね。たぶん。
場合により、ポートだけでなく、プロトコル、接続先IP、の情報が必要になってきます。
細かい仕様まである必要は無いのですが、最近製品で mqtt とか使われてて、「ぁぁぁ」という話とかをよく聞くので何とか「ぁぁぁ」が減らせる形にならないのだろうか、と考える日々をすごしています。

製品作っている方々、疎通できるかどうかについて、どれぐらい意識していますでしょうか?
http や https では、通信量やリアルタイム性に欠けるので、mqtt や websocket 等が採用される製品も多くなっていますが、疎通できない可能性が http や https に比べ高いと思われますが、どのように考えていますか?
最悪、http や https へのフェールバックですか?
疎通要件に入れてしまうですか?
443でsslで包んでというのが個人的には開発工数的には考えてしまうのは、甘えですかね。



今日はクリスマス空気周りに漂ってきて独りは寂しいですね。Advent Calendar 2020、23日目でした。
次は オモチャとしてのemo について書きたいと思います。

ユカイ工学株式会社の「BOCCO emo」、製品としてどうかはともかくとして、Linuxの箱としてはとりあえず遊べるオモチャにはなってる気がします。
最近、オモチャ触る時間ないですがね。とおったーっ。
24日目の記事も早速書かないとですね。がんばります。
でわ、また明日。
[emo] Firewallルールについて書くよ | 0 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。