【アドカレ記事】一般家庭のネットワークセキュリティ設定入門
この記事を読むにあたり、下記の点にご注意下さい。
- 本記事は2023年12月に執筆されたものです。
- 記事を参考にした結果、生じたいかなる問題も、読者自身の責任となります。
- 営利目的でなければ、記事は引用してもらっても構いません。
寧ろSNSで「この記事参考になるからこれ見ろ。」って言ってもらえると嬉しいです。 - ルータの機種により、記事とは画面・仕様・操作・名称等が異なる場合があります。
- 専門家、開発者、その道のプロが書いた記事ではありません。
一般人が執筆した内容であるため、情報に誤りが含まれている可能性があります。
そのため、真面目に読まず絵本として子供達に読み聞かせてください。
誤りを見つけた場合、コメントにてご指摘いただけると幸いです。
本記事の読者層
- 一般家庭向けに販売されているネットワーク製品を初期設定で運用している人
- ルータの設定をしたことがない方、その他ネットワーク用語をよく知らない人
- 元気な子供達が居る家庭
本記事の目標
インフラとは何か?を理解し、複合的に組み合わせたセキュリティ対策を家庭に構築する
自己紹介
どうもこんにちは、そこらへんにいる一般人 ウユミナこと、みなみんです。
インターネットの海に自分の記事を放流するのは今回が初です。
本当は書く気力が0だったんですが、Misskey鯖にて「アドカレ記事みんなで書こう!」
みたいなお祭りになったのでこれを燃料に「書いてみるか」となったのがきっかけです。
私の経歴としては2020年に今居る会社に新卒で入社し、某大手メーカーのSOHO向け
ネットワーク構築の担当や某大手のDBシステムサポートなど、色々やってます。
趣味は自転車・人狼ゲーム・自宅ラボ・筋トレ・読書・料理など、
色々やってましたが、最近はカメラにも興味を持ち始めました。
SONYのPXW-Zシリーズとかα9 IIIが最近ニュースになってるので欲しいなあと
思ってたりします。数十万するのでなかなか手が出せませんが...(._.)
本記事の概要
早速本題に入ります。この記事を読むと以下の内容に関して理解を深めることができます。
- 初期設定でネットワーク機器を使う恐ろしさ
- セキュリティ上、避けるべきルータの選定
- ルータの機能について(IPアドレス、DHCPサーバ、ネットワークの分割機能など)
- Windowsネットワークの基礎設定
- ルータ機器への管理画面アクセス手順
- 無効化すべきルータ機能
- SSID設定の変更
- 意味のないセキュリティ設定について
- IPアドレスフィルタリングの応用
など
警視庁が最近ニュースで「家庭用のルータを初期設定で使わないで!」
と呼びかけていることから今まで
「いやあ!そんな奴おらんやろ(笑)!」と思ってました。
まあ、私の親が初期設定でしたが...
SNSとかネット上のコメントでは
「企業側が設定してくれればいいじゃん!!!」
「盗まれる情報なんてないし...」
「困ったらルータ再起動すれば直る」
といった声もありますが、そういった考えに至った結果警察のお世話になるんだろうなぁ...
と思いつつ
🤔.。(ネットで調べても簡潔に書かれてる記事、多いよな)
と思ったので今回重い腰を上げて書きました。
ルータを初期設定のまま利用するとどうなるか
既に警視庁の資料にも記載している通り、攻撃者に初期設定のままのルータにアクセスされると
意図しない設定をされ、バックドアを仕掛けられるリスクがあります。
市販のルータは利用者が「使いやすい」を目的に必要最低限の設定だけをしていますが、
このセキュリティはあくまでも「建前としてあるだけ」です。
実際の攻撃には殆ど機能しない場合が多いです。
ただ自分のデータが盗まれるだけならまだよいでしょう。
でも、攻撃者視点で見れば管理されていないある意味、魅力的なネットワーク機器です。
データを盗む以外にも、ネットワークに繋がっていれば第三者へ向けて
サーバ攻撃などで悪用できてしまう危険性があります。
勿論、管理されていないネットワーク機器が乗っ取られ、悪用されてしまえば
購入した利用者が該当機器を操作しているように見えるため
最悪あなたが警察のお世話になるリスクがあります。
「盗まれるデータなんてないから」などの話は一切通用しません。
また、ルータを作った企業が日本全国のネットワーク及びセキュリティを管理することは
非現実的な話であり、ユーザ自身が自分の環境に合わせ、
セキュリティを正しく設定・管理する必要があります。
自分が被害者にならないためにも、第三者に迷惑をかけないためにも
ルータの基本的な設定を学んでいきましょう。
それでは次から本記事のメインディッシュとなります。
ルータの選定
手始めに業務用製品のネットワーク機器を購入します。
SOHO向け機器ではYAMAHAやNECのRTXやIXシリーズ系等を、数十万前後で購入できます。
これらは有線ルータなので、無線機器も別途必要です。
arubaやruckus等のメーカー、YAMAHAとかNECでもWLXやQA-W等の型番シリーズがあるので
部屋の広さが狭ければ1台10万円前後くらいで済みます、この辺りから検討しましょう。
...というのは冗談です。
業務用製品をいきなり買う!というのも手ではありますが、
素人設定ではかなり難易度が高く、設計がまずできない場合が殆どだと思います。
なので本記事はコンシューマ製品かつ、最近の機種をまとめると良いだろうと考えました。
という背景もあり、私はヨドバシカメラを散策しました。
こういう一般ネットワーク機器販売エリアを巡ったのは人生で2回目です。
始めて行った2回目とはちょっと雰囲気が違うな~という感じでした。
今回は「セキュリティを高めつつ、普通のインターネットをするだけの用途」として選定します。
この時点で中華メーカが販売元の製品は余程の理由がない限り選定してはいけません。
特に明記しませんがT社製品は買わない方が無難です。
というのも過去のやらかしが大きく、選定条件に合いませんでした。[1]
「ルータ おすすめ」と検索するとランキングで中華ルータが入ってたりしますが
安易に選ばないようにしましょう。
SNSの口コミ(どちらかというと論理的な批判)を参考にした方が一番信頼できると思います。
個人的にはNECまたはBUFFALOが無難で良い、と考えてます。
(その道に詳しい人達もこの2つがいいんでは?という感想)
見つけました、NECのルータ「Atermシリーズ」です。
まず、注目するのはセキュリティ項目について。
WPA2・WPA3であること、かつAES暗号化アルゴリズムに対応しているルータを選びます。
WPA2?WPA3?AES?とは...
簡単に言うとWPAは無線のセキュリティ規格、AESは暗号化の方法です。
WPAの数値が上がるごとにセキュリティが高まります。
暗号化はAESの他にRC4なんかがありますが、現時点ではAESの暗号化が最も強力です。
性能は特に求めていないので一番右下の安価な「WX1500HP」を選んでおきます。
この後の設定に関する説明はWX1500HPの画面をメインに進めていきます。
ルータ開封の儀
ということでWX1500HPです。
箱を開けると一番最初に取扱説明書、その奥にはルータやACアダプタが付属していました。
開封して早速お気軽に使えるためのパスワードやSSID(無線の名前)、QRコードなんかが出てきました。
情報セキュリティの3要素[2]としては十分ではない状況ですが、
ここは後で自分好みに設定してセキュリティを強化していきましょう。
ちなみにWANポート(インターネットに繋ぐ口)が1、LANポート(自由に使える口)が3となります。
設定するセキュリティ項目
ルータにアクセスする前に、今回設定するセキュリティ項目をまとめます。
軽く触っただけでも変更すべき点が10点ありましたので、それをまとめます。
- ルータのアクセスパスワードを変更する
- ルータのIPアドレスを変更する
- UPnPを無効にする
- WPSを無効にする
- デフォルトSSID名とSSIDのパスワードを変更する
- 接続方式にWPA3を含めるように設定する
- プライバシーセパレータ機能を有効にする
- Wi-Fiの出力強度を下げる
- ルータに接続するためのPCをIPフィルタリングで絞る
- ファームウェアを最新にする
ルータへアクセスしよう
ここから先は「WX1500HP」と言い続けるのが面倒なため、以下「Aterm」といいます。
ちなみにAtermの付属マニュアルを見ていません。
え?マニュアルを見てなくてもルータアクセスできるの?ですって?
実はルータへアクセスする方法は簡単です。
私が操作しているWindows10でとりあえず操作してみましょう。
このPCはLANケーブルやWi-Fiでどこにも接続していない状況です。
キーボード上の「Windowsキー」と「Rキー」を同時押しします
ファイル名を指定する画面が左下に表示されるので出てきたら名前に「cmd」と入力します。
そのままEnterを押下すると、黒い画面が表示されると思います。
これはWindowsをコマンドで操作するための画面(コマンドプロンプト)ですが
ここに「ipconfig」と入力し、Enterを押します。
何個か項目が出てきましたが、難しい内容ではありません。
PCは現時点で有線も無線も接続していないため、IP構成からは何も表示されていない状況です。
次にPCのIP設定を確認だけします。設定変更をすることはないです。
同様に「Windowsキー」と「Rキー」を同時押し、次に「control」と入力します。
そのままEnterを押下すると今度はコントロールパネルが開かれます。
ここからネットワークとインターネット>ネットワークと共有センター>
アダプターの設定の変更>イーサネットを選ぶ>プロパティ>
インターネットプロトコルバージョン4(TCP/IPv4)という風に進んでいきます。
問題がなければ、ここの項目で
- 「IPアドレスを自動的に取得する」
- 「DNSサーバのアドレスを自動的に取得する」
になっているはずです。
ではここでPCとルータのLAN1ポート(WAN以外なら良い)を接続します。
接続するとネットワークを検出するので「はい」を選択します。
接続後、コマンドプロンプトで再度「ipconfig」を実行します。
すると今度はアドレスが出てきました。この情報が分かるとルータへ接続できます。
何が起きたかの補足解説
今回Aterm側のIPアドレスは「192.168.10.1」が初期設定として割り当てられています。
このIPアドレスと疎通するためには、PC側でも疎通可能なIPアドレスが必要です。
この疎通可能なIPを設定してくれるのがルータのDHCPサーバ機能です。
IPアドレス・サブネットの詳細については
「ルータのIPアドレスを変更する」で解説します。
何も設定していないPCではIPアドレスは割り当てられていませんでした。
ただ、ネットワークのIPアドレスを接続する環境に合わせて手動設定するのは面倒です。
そこで、ルータに付属しているDHCPサーバ機能を利用し、PC側でIP・DNSのアドレスを
自動取得に設定していれば、ルータ接続時にDHCPサーバから自動的に
IPアドレスが割り当てられ、ルータとやり取りが行えるようになります。
前提条件としてIP・DNSアドレスが自動割り当ての状況であることを確認し
接続後、PC側にIPv4アドレスとして192.168.10.101が割り当てられています。
デフォルトゲートウェイは通常、ルータに向きます。
そのため、デフォルトゲートウェイのIPからルータのアドレスが192.168.10.1であり、
192.168.10.101と192.168.10.1(かつサブネットマスクが255.255.255.0の環境)のIP同士は
お互い疎通ができるため、ルータの設定ができるようになります。
chromeやEdgeでもいいですが、何かしらのブラウザを開きます。
私の環境ではBraveを使っているのでこのブラウザを利用します。
現時点ではインターネットに繋がっていないので接続できていない旨のエラーが出ますが
意図的にそういう環境に置いてるので問題ありません。
画面上側にURLのアドレスバーがあるはずなので、ここをクリックまたは
Ctrl+Lのショートカットキーで入力できるよう移動します。
ここに先ほど確認したデフォルトゲートウェイの内容を入力してください。
私が購入したAtermでは192.168.10.1となっていたので
と入力します。このままEnterを押下すればルータのログイン画面に移動します。
ちなみに、IPv6を指定する場合はこのような入力方法でもアクセスできます。
[<IPv6アドレス>]/
例:[fe80::1e7c:98ff:fe0b:5b34]/
直打ちせず、[]でくくるとIPv6通信として接続できます。
Atermではデフォルトのユーザ、「admin」と初期のパスワードを入れればアクセスできます。
Atermでは一番下の詳細を開くと更に細かい設定が出て来るようです。
デフォルトのパスワードってなんだ...?って思うかもしれませんが
Aterm本体に大きくWeb PWと書かれていました。他にも取扱説明書に書いていたり、
メーカーのホームページにも記載されていることもあるようです。
つまり、この時点でルータを初期設定で動かしている人は外部から簡単にルータを
操作されて不正に外から接続できてしまう環境を提供しているという事になります。
ルータのパスワードを変更する
まずはじめに、そもそものルータのパスワードが周りに公開されていることがおかしいので
ルータ専用のパスワードを任意に変更・設定します。
Atermの場合は、メンテナンス>管理者パスワードの変更から変更ができました。
問題なく設定ができれば、ログアウトして再度新しくしたパスワードでログインしてみます。
問題なければ再度ログインできます。
なお、業務用機器とかであればユーザIDやパスワードに複雑な記号も利用できたりしますが、
AtermはユーザIDは「admin」から変更できず、パスワードも一部使えない記号があるようです。
ルータのIPアドレスを変更する
今回、ルータのIPアドレスが「192.168.10.1」ということが分かっていますが、
実はメーカーによってルータの初期IPアドレスが統一されていたりします。
なので、ルータのメーカー名からも予測されないようIPアドレスも変更しておきます。
Atermでは詳細設定>IPv4 LAN側設定で変更が可能です。
今回はルータのIPアドレスを「10.31.79.25/24」で設定し、DHCPサーバ機能の項目は
リースタイムを8時間、アドレス払い出し範囲を10.31.79.2~10.31.79.24とします。
いや、なんかすごいサラッと設定したな!?
まず使うIPアドレスってどう決めるの?/24って何?
...すみません、きちんと解説します。
IPアドレス(IPv4)は4つの区画に.(ピリオド)で分けられています。
この区画ごとに0~255の数字を割り当てて機器同士で疎通を行っています。
ただし、設定してよいIPアドレスは決まっています。
なのでルータに適当なIPアドレスを設定をすることはできません。
世界で割り当て可能なグローバルなIPv4アドレスは約43億個であり、ほぼ枯渇しています。
新しい方式としてIPv6アドレスの仕組みが作られましたが、まだ普及には至っていません。
そのため、枯渇問題の対策としてインターネットで使える1つのグローバルなIPを
ルータ配下の端末達は共有して使用し、代わりにインターネットでは利用できない
プライベート用のIPアドレス範囲をルータ配下で使用するようになっています。
一般的に使用されるプライベート用IPアドレス範囲は192.168.<0~255>.<0~255>ですが、
これはクラスCと言われている範囲です。
クラスB、クラスAというのもありますが、今回私が利用した10.31.79.25は
クラスAのアドレス範囲です。基本大企業が利用するアドレス範囲になります。
そして/24はCIDR表記と呼ばれており、サブネットマスクを簡略化して書いた表記です。
/24をIPアドレス表記で記載した場合は、「255.255.255.0」となります。
サブネットマスクとは、ネットワークの範囲(サブネット)を区切るための数値です。
区切られたサブネット範囲内のIPがお互い疎通できます。[3]
サブネットマスクの設定次第では払い出し可能なIP範囲が広がりますが、
サブネットの計算・管理が簡易的に済む関係上/24で使用される場合が大半です。
なんか難しそうな話をしていますが、2進数の話が含まれるためどうしてもややこしくなります。
なのでものすごーーーーく簡潔に言えば
指定できるIPアドレス範囲は下記3種類
クラスA:10.0.0.0~10.255.255.255 (10.0.0.0/8)
クラスB:172.16.0.0~172.31.255.255 (172.16.0.0/12)
クラスC:192.168.0.0~192.168.255.255 (192.168.0.0/16)
そして
サブネットマスクを/24にしてしまえば、IPアドレスの末尾の数字だけ決めればよい。
ただし、末尾0と255は別用途で利用されるため使用できない、[4]
/24では、末尾1~254のIP範囲でお互い疎通ができる。
ということを覚えればよいです。
一例:
ルータのIP 192.168.30.1/24
可能なプライベートIPの払い出し範囲 192.168.30.2~192.168.30.254
ルータのIP 172.22.10.253/24
可能なプライベートIPの払い出し範囲 172.22.10.1~172.22.10.252、172.22.10.254
(172.22.10.253は既にルータのIPとして利用しているため)
私が今回設定した「10.31.79.25/24」であれば
ルータ配下の端末達は「10.31.79.<1~254>」のアドレスが割り当て可能です。
なお、10.31.79.0、10.31.79.25、10.31.79.255は利用できません。
10.31.79.25が端末に利用できない理由は、ルータに既に割り当てたIPアドレスであり
ネットワーク上では重複したIPを割り当てることはできません。
上記のIPのような設定をすると、一度ルータとの疎通ができなくなります。
192.168.10.1/24だったルータのアドレス情報を10.31.79.25/24に書き換えた事が原因です。
なのでLANケーブルを再接続し、DHCPから設定したアドレスを受け取ったら
同じ手順でブラウザのURLバーにIPアドレスを指定すれば再接続できるようになります。
PCに割り当てられたIPは「10.31.79.3」となりました。
実は裏で他の端末も接続を試したため、「10.31.79.2」は別のPCに割り当てられました。
これらのIPは10.31.79.X/24のサブネット範囲内に居るのでお互い疎通ができます。
リースタイムが切れると、端末は新しいアドレスを再度要求します。
24時間も持つ必要は特にないため、8時間ぐらいを目安に今回設定していますが
ここは使用する環境によって調整していただければよいと思います。
UPnPを無効化する
Aterm上からはその他設定の項目から確認ができました、この機能はOFFにします。
まず、UPnPってなんぞや?って思いますが、簡単に言ってしまえば
UPnP機能に対応した機器を接続すると、外部から接続するためのポート開放作業なんかを
自動的に判別・設定してくれる機能です。
しかしセキュリティ上脆く、インターネットに接続されている数十億規模のデバイスに
影響がある脆弱性が見つかったりしており、業務用ネットワーク機器とかでは
デフォルトではOFFに設定されています。
ポート開放が必要になった場合は該当機器のIPアドレスを固定化、転送するポート番号と
プロトコルをきちんと把握して設定を行うべきだと考え、この機能はOFFにしておきます。
WPSを無効化する
Aterm上ではWi-Fi設定の項目にありました。この機能もOFFにします。
WPS機能はWi-Fiを接続する際のパスワードを入力せずにボタンを押したり、
簡易なPINコードを入力することで簡単にWi-Fiに接続する機能です。
しかし、総当たり攻撃でPINが割り出される脆弱性が過去にあったりと、
許容していない第三者が勝手にボタンを押して接続されるリスクを避けるため
UPnP同様に利便性は下がりますが、基本的にはOFFにしておいた方が良いでしょう。
初期設定のSSID名・パスワードの内容を変更していく
Wi-Fiに接続するために、PCなどの端末側でSSIDを指定して接続を行いますが、
この初期設定で命名されているSSIDからルータのメーカ・使用している認証方式など
推測されてしまうため、変更します。
また、SSIDに接続するための初期パスワードは本体に堂々と書いているので
こちらも合わせて変更します。
Atermの場合はWi-Fi設定の項目から設定が変更できました。
SSID名によく「A」と「G」が用いられますが、Aは5GhzのWi-FiでGは2.4GhzのWi-Fiとして
命名されます。
また、SSIDの最初にはメーカ名を記載してることが多く、「WPA2」「WPA3」と
規格名を記載している企業もあります。
Atermの場合、プライマリとセカンダリのSSIDが2つあるようなので
どちらともネットワーク名(SSID)の欄にセキュリティ的に問題とならない
任意のSSID名およびパスワードを設定しておきます。
私の環境で設定した内容は次の「接続方式にWPA3を含むように設定する」で載せておきます。
接続方式にWPA3を含むように設定する
AESの暗号化アルゴリズムを利用かつWPA3の暗号化モードを含める設定にします。
「ルータの選定」の部分でも話した通りWPA3を利用する場合は
端末側も対応している必要があります。
古い機器の場合、WPA2にしか対応していないこともあるため、
今回私の環境では、WPA3とWPA2を両方併用する形でネットワークを構成します。
セカンダリ、プライマリのSSID名、パスワード変更、暗号化モードもこのように変更しました。
プライバシーセパレータ機能を有効にする
SSIDが第三者に接続されづらい状況とはなりましたが、ここから更に
無線のセキュリティ強度を上げる方法があります。
それがプライバシーセパレータ機能と呼ばれる機能です。
ネットワーク機器が攻撃された際の恐ろしさは、
ネットワークを経由して第三者に被害が及ぶ可能性があることは、既にお伝えしました。
これは、同じネットワーク内にいる端末も被害を受けるリスクがあるということです。
実際、過去にプリンターを踏み台にして不正アクセスされた事例も存在します。
また、病院や学校でもこの対策をしていないと、第三者が機器を不用意に覗いたり、
ネットワーク上の機器が攻撃されるリスクがあります。
実際、SNS上で無料Wi-Fiにつないだら病院が使用している機器が見えたとの報告もある
このような手口を防ぐ方法の1つに、無線同士でつながった機器はお互い疎通できないように
する機能としてプライバシーセパレータ機能が無線機器に導入されています。
今回私が購入したAtermではそれっぽい設定は見当たらず、代わりに
ネットワーク分離機能という名前で搭載されていました。
BUFFALO製品だと、プライバシーセパレータ機能として紹介されている認識です。
では、実際に遮断されるか確認をしてみましょう。
デフォルトでOFFになっている状態で、管理しているPC「10.31.79.3」から
全く無関係な接続した別の端末「10.31.79.4」へpingを実行すると応答があります。
▼OFFの場合
次にプライバシーセパレータ機能をONにすると、
別端末へpingの疎通ができないようになりました。
これでもう片方の端末に何かあっても他の機器には影響が出にくい状況を作れました。
▼ONの場合
また、ネットワーク分離機能は追加でONにしたSSIDへ接続すると
その端末からはルータの管理画面へアクセスができないようになる仕組みもあるようです。
参考:https://www.aterm.jp/function/wx1500hp/guide/nw_separation.html
電波の出力強度を下げる
外から不用意に接続されないために、電波の出力強度を下げます。
基本的には100%最大で出力する設定になっていると思います。
Atermの場合は無線の詳細設定を表示すると該当部分があったため、
この部分を外からはギリギリ繋がりにくい状況にあえて調整します。
SSIDのセキュリティ設定は恐らくこんなもんかな、と思います。
2.4Ghz、5Ghz、6Ghzの設定全て忘れないようにしましょう。
余談:MACアドレスフィルタリングとステルスSSIDは?
一般家庭のルータを何となく触れてきた方、その他この記事を見て
自分好みにカスタマイズしている方、ふと思ったことがあるかもしれません。
「セキュリティ設定と言えばMACアドレスフィルタリングとかステルスSSIDとかあるけど、
紹介しないの?」
はい、しません。
というのもこの2つ、セキュリティ目的で設定するには無意味です。
それぞれ機能と無意味な理由を説明していきます。
- MACアドレスフィルタリング
ネットワーク機器にはどれも「MACアドレス」という基本重複しないアドレスが
個々に割り当てられています。IPアドレスとは違い、表記方法は
AA:BB:CC:DD:EE:FF
やAA-BB-CC-DD-EE-FF
といった感じです。
MACアドレスもネットワーク通信を行う上で必要なアドレスとなりますが、
MACアドレスフィルタリング機能を利用すると、指定したMACアドレスの端末が通信をした際
その通信を通したり、逆にブロックするといった判断をするフィルタリング機能になります。
話を聞くとあれ?なんか聞こえはいいけど?なるかもしれませんが、
実はMACアドレス、通信上では暗号化されず簡単に偽装することが可能です。
また、最近はセキュリティ関係でランダムにMACアドレスを割り当てるのが主流になりつつあり、
フィルタリングとして機能することはほぼ限定的です。
- ステルスSSID
無線ルータが発信するSSIDを他端末に表示させない機能です。
これにより端末の接続先Wi-Fiの一覧から該当SSIDが表示されなくなります。
が、ステルスであっても飛んでいる電波は見ようと思えば見れるし、
端末側がステルス化されたSSIDを探し続けるため、逆にばらまく状態となり逆効果です。
そのため、この機能の記事に取り上げません。
応用:IPアドレスのフィルタリングを駆使する
IPアドレスフィルタリングを利用することで疎通できるIPを制限できます。
設定すべきIPアドレスのフィルタリングには明確な正解はありませんが、
基本的にはルータのデフォルト設定でOK!というメーカが殆どです。
ここでは応用として、「ルータの管理が可能な端末を1台だけにする環境」を作ろうと思います。
Atermの場合は、紹介したネットワーク分離機能で無線からルータの管理画面へ
アクセスすることを禁止できましたが、有線経由でのルータ管理画面への接続は
禁止されないため、これを制限したいと思います。
まず、IPフィルタリングを駆使するための基礎としてTCP/IPの概念を理解する必要があります。
ただTCP/IPの話をすると1冊の本ができてしまうレベルで話が長くなるのでここでは
簡易的に説明します。
機器同士が通信を行うためにはお互いの通信プロトコルを決めて通信を行う必要があります。
プロトコルとはいわばルールです。
人間で例えると、 AとB同士で言葉を交わしたいとしましょう。
AとBがやり取りするルールとして「日本語を使う」というルールを設けます。
そうすると、お互いの話は通じます。
でも、Bは「アラビア語しか使わない」となるとどうでしょう?
AとBのお互いのお話が通じず、疎通ができなくなります。
このような齟齬がインターネット上で発生することがないよう、プロトコルを守ることで
今現在、利用者が問題なくサーバにアクセスしたりして情報を見ているわけです。
今回はルータの管理画面のアクセスを制限するわけですが、
管理画面はHTTPと呼ばれる通信プロトコルを利用して疎通を行います。
HTTPは基本「TCPのポート80番で通信を行う」というルールがあります。[5]
つまり、「TCPの80番ポートで特定のIPの端末のみルータへのアクセスを許可する」
設定を行えばよいことになります。
ただ、IPフィルタリングの概念は少し複雑です。
まず、IPフィルタリングには優先順位が存在します。
例えば、
- Aの通信を破棄する
- BとCの通信を許可する
- Cの通信を破棄する
という順番のIPフィルタリング設定があったとしましょう。
この場合Aの通信を通すとどうなるか。
答えは簡単ですね、1番目のフィルタで破棄されます。
ではCの通信はどうでしょうか。
2番目で許可しているから大丈夫そうに見えて3番目でCの通信を破棄しています。
結果、この3つのIPフィルタリングの設定ではCの通信は破棄されてしまいます。
ここまで分かりましたでしょうか?
でも、まだ罠があります。ここにDの通信を通したいと思います。
どうでしょうか?通るように見えますか?
実はこれ、Dの通信も破棄されます。
ネットワーク設計をしてる時にうっかり、この罠に引っかかったりする人もいるのですが
フィルタリング全てに合致しない通信は暗黙の拒否によってすべてが破棄されます。
インフラ業界では暗黙のdenyと言われることが多いですかね。
動きを見ると...
- Aの通信を破棄する←該当しない
- BとCの通信を許可する←該当しない
- Cの通信を破棄する←該当しない
- 全ての通信を破棄する←該当する 設定上では見えない
となります。もし、Dの通信をインターネットに出したいのであれば最後に
全ての通信を許可する設定が必要になります。
この点に注意しましょう。
そして、最後に。
通信には行きと帰りの概念が存在し、その通信の方向に合わせて
INまたはOUTどちらかにフィルタ設定を行う必要があります。
どういうこと?と思いますが、ルータの管理画面にアクセスする場合の通信を例に説明します。
ルータの管理画面を表示するために、PCを接続してIPアドレスを指定し
ブラウザ上で管理画面を表示しましたが、実はざっくり裏では
- PCがルータとやり取りをするためにルータに向けてIPの割り当て要求をする(行き)
- ルータのDHCPがPCにIPアドレス等を払い出す(帰り)
- PCがルータのHTTPサーバにアクセス(行く)
- ルータのHTTPサーバがPCの要求に応じて画面の結果を返す(帰り)
というやりとりをしています。
そしてこれをINとOUTで説明すると
- IP割り当て要求がルータのLAN側から見てIN方向に来た
- ルータのLAN側から見て、OUT方向にIPアドレスを払い出した
- HTTPの結果を渡すよう指令がルータのLAN側から見てIN方向から来た
- HTTPの結果を返すようルータのLAN側から見てOUT方向に返答した
となります。
重要な点はルータ側から見てIN方向かOUT方向か把握する必要があります。
稀にこのIN方向とOUT方向をPC側から見てしまう人が居るので気を付けましょう。
図で表すとこのようになります。
まとめると...
- 今回やりたいのはルータへの管理するPC端末を制限する
- そのためにはHTTP(TCPの80番ポート)の通信を制限する必要がある
- フィルタはLAN側のIN方向に設定する
- フィルタの設定・順番は次のようにする
- 送信元が管理者PCのIP、宛先がルータの通信を許可する
- それ以外の宛先がルータへの通信を拒否する
- それ以外の通信をすべて許可する
それぞれのフィルタ目的
- 管理者の通信を許可する設定
- 許可していないIP端末から通信が来た場合の設定
- 暗黙の拒否により、インターネット向けの通信も破棄されないための設定
となります。
Atermは詳細設定からIPフィルタリングの設定ができました。
管理者PCのIPアドレスは「10.31.79.1」とし、自動的に変化しないようにIPの固定化をします。
Windowsでのやり方は簡単で、IP・DNSが自動的に取得するの設定になっているか確認した
イーサネットのプロパティ設定から自動的に取得せず指定の値を入れればよいです。
デフォルトゲートウェイとDNSアドレスはルータに向けておきます。
▼管理者PCのIP固定化
今回、ルータのDHCPの払い出し設定は10.31.79.2 から始まる設定にしているので
無線につないだ端末に管理者用のIPが払い出されることはありません。
▼IPフィルタリングのサマリ
/32は完全に一致するアドレスを意味します。
また、今回フィルタを追加することがなかったので最後のすべての通信を許可する設定を
3番目としましたが、誤ってインターネットを許可する通信を遮断してしまわないよう
一番大きい数値を設定するのが良いと思います。
余談:それぞれの3つのフィルタ詳細設定画面
念のため、スマホなどの無線を接続してルータの管理画面にアクセスできないことと、
管理者PCではルータにアクセスできることを確認しておきましょう。
今回、IPv4のみのフィルタリングを行いましたが、IPv6のフィルタリングも存在するので
そちらも併せて設定をしておくことを忘れないようにしましょう。
今回は諸事情で設定の概要は省略します、詳細は最後の余談でお話します。
インターネットにつなごう
信頼できるNTPサーバやDNSサーバを指定する...なんて話も
正直したほうがいいのかな、と思いつつそれ以上話すと記事も長くなるので
ここで十分と判断してインターネットに繋ぎましょう。
問題がなければ、IPのフィルタリングにも引っかからずにインターネットに
アクセスできるはずです。
▼回線の自動判別
▼インターネットの疎通に問題ないことを確認
最後、ファームウェアを最新に!
ファームウェアとは何だ?と思いますが、簡単に行ってしまえばネットワーク機器などに
組み込まれているプログラムのことです。
ファームウェアはスマホと同様に何か脆弱性やバグがあった場合に
更新する必要がある重要なものです。
購入時に最新ファームウェアが来たり、在庫になっていたなどの理由によって
ファームウェアが古い場合があるので最後にファームウェアの更新をしましょう。
更新をすることで、バグや不具合・脆弱性が対処されていたりします。
ルータ製品によってはインターネットに繋がっている端末上からファームウェアの
ファイルを取ってきて、ネットに繋がっていないルータを更新することもできます。
念のため、設定のバックアップ機能があるのであればバックアップは取っておきましょう。
私の場合は最新版でした。
余談:バグを見つけてしまった話
これはAtermで検証していた時に発見した動作なのですが、
IPv6の機能を有効化したうえでIPv6のフィルタリング設定をすると
フィルタリングが機能しないことを発見しました。
LAN側IN方向に全遮断の設定をしたにもかかわらず、ルータの接続は許される。
(勿論ブラウザやルータ再起動でも接続できてしまう)
おかしい...。と思いつつ原因が分からなかったのでNEC公式に問い合わせたところ、
開発部門から「同様の事象が確認できたので、修正します。ただ修正時期は未定です。」
との連絡をいただきました。
バグなんでしょうけど、コンシューマ製品はこういったちょっとした謎の動作が
チラホラみられるので、予算があるのであれば業務用ルータの購入も
検討してみてはどうでしょうか。
サーバ機器も購入すれば夜景がいつでも見れます、是非。
おわりに
いかがでしょうか、本記事の内容は以上となります。
ここまで長文で書き連ねましたが、セキュリティ上、実はまだ甘かったりします。
というのも物理的なセキュリティについては今回触れていません。
そのため、不正アクセスは防げてもPCの盗難や物理的な接続にはまだ弱いです。
対策としては、証明書を使ったWi-Fi接続や不要なポートは
専用の鍵で物理的に埋めて置いたり、設定上から無効化しておくなど...
複合的に組み合わせて行けばセキュリティは強固になります。
他にも色々教えたいところですが、記事にすると1冊本ができてしまうレベルなので、
本記事を機会にネットワークの世界に興味を持っていただければ幸いです。
次回12/9は、はすきー先生の記事をお楽しみください。
最後に自作の問題を置いておくので時間があれば是非解いてみてください、では🤗
問題集
問題1. 次のうち、セキュリティの認識として誤っているものを1つ選べ。
A.無線の暗号化アルゴリズムはAESを選択した
B.ルータの無線へアクセスされないよう、初期パスワードを変更した
C.盗まれるデータは家に無いため、ルータはファームウェアのアップデートのみ対応した。
D.SSIDの初期設定がWPAだったため、WPA2へ変更した
問題2.IPアドレスが「192.168.8.2/24」の場合、疎通可能なIP範囲を1つ選べ。
ただし、ルーティング機能などの設定は考慮せず、機器同士が直接接続されているものとする。
A.192.168.8.96/24
B.10.31.78.25/24
C.192.168.8.255/24
D.192.168.7.23/24
問題3.次のうち、セキュリティ的にできれば無効化しておいた方が良いルータ機能を1つ選べ。
A.UPnP機能
B.DHCP機能
C.プライバシーセパレータ機能
D.IPアドレスフィルタリング機能
問題4.テレワークを行うため、無線に繋いでいる端末同士の通信を遮断したい。
どの機能を用いれば現実的であるか1つ選べ。
A.IPアドレスフィルタリング機能
B.MACアドレスフィルタリング機能
C.ステルスSSID機能
D.プライバシーセパレータ機能
問題5.ルータの管理画面へアクセスする端末を制限する名目で、
IPアドレスフィルタリング機能を利用し、LAN側IN方向へ下記の優先順位フィルタを設定した。
1. 送信元AのPCがルータ自身へアクセスすることを許可
2. 送信元B,CのPCがルータ自身へアクセスすることを禁止
3. 送信元DのPCの通信はすべて許可
この設定を行ったところ、D以外のPCがインターネットへアクセスできなくなった。
考えられる原因は次のうちどれか1つ選べ。
A.優先順位2のフィルターにより遮断されているため
B.LAN側のIN方向ではなく、LAN側のOUT方向に設定する必要があるため
C.SSIDの設定でフィルタリングを行っている可能性があるため
D.最後にすべての通信を許可していないため
解答と解説
問題1:Cが正解。
・暗号化アルゴリズムは現時点ではAESが一番強固です。
・ルータの無線へ不正アクセスが無いよう、初期のパスワードを変更するのも正しいです。
・ルータのパスワードが初期のままだと不正アクセスを受ける場合があります。
盗まれるデータは無くとも不正な設定を入れられサイバー攻撃に悪用される場合があります。
ファームウェアアップデートのみの対策は不十分です。
・WPAよりWPA2の暗号化の方が強固です、またWPAの利用は非推奨です。
問題2:Aが正解。
・192.168.8.120/24は疎通が可能です。
・10.31.78.25/24はクラスAのアドレスであり、通信できません。
疎通するためにはルータのルーティング機能が必要です。
・192.168.8.255/24はブロードキャストアドレスとして利用されます、使用できません。
・192.168.7.X/24と192.168.8.X/24は範囲が異なるため疎通できません。
疎通するためにはルータのルーティング機能が必要です。
問題3:Aが正解。
・UPnPは過去に脆弱性を悪用した攻撃が多く、基本的にはOFFにしておいた方が良いです
・DHCPは無効化するとDHCPに関する攻撃は防げますが、IPアドレスを
手動で設定する必要が出てくるため、一般家庭では有効にしておいた方が無難です。
・プライバシーセパレータ機能はセキュリティ向上目的で利用されます。
できれば有効にしておいた方が良いです。
・IPアドレスフィルタリングも同様にセキュリティ向上目的で利用されます。
問題4:Dが正解。
・IPアドレスはDHCPなどで変わる場合があるので、すべての端末を固定化して
管理されていれば実現は可能です。しかし、リモートワーク用のPCは
会社から管理されていたり複数台持つ可能性もあるため、設定は現実的ではありません。
・MACアドレスフィルタリングにはお互いの通信を遮断する機能はありません。
・ステルスSSIDはSSIDを見えないようにする機能です、遮断する機能ではありません。
・プライバシーセパレータ機能は無線同士の通信を遮断する機能です。
IPアドレスやMACアドレスが変動しても動作に影響はなく、現実的です。
問題5:Dが正解。
・Aの通信もインターネットに出れないため、2番のフィルターがおかしいと判断できません。
・送信元のPCを指定しているため、ルータ側から見てIN側を指定する方向で正しいです。
OUT側にフィルタをかける場合は、送信元がルータ+宛先がA,B,C,Dである必要があります。
・フィルタリングの可能性もありますが、「この設定を行ったところ...」と記述している通り、
IPフィルタリングのミスが原因だと考えられるため、誤りです。
・IPアドレスフィルタリングは基本該当しない通信は暗黙の拒否によって通信が破棄されます。
最後にDの通信のみすべて許可しているため、該当しないA,B,Cは破棄されていると
考えることができます。
-
T社の過去のやらかし一覧(SNSなどの内容も含む)
・大学のNTPサーバ(時刻同期するためのサービス)へ攻撃
・上記対策のファームウェアアップデート内容が嘘だったことが発覚
・大騒ぎになったが、その後も他製品でしれっと大学のNTPサーバのアドレスを指定
・本来重複しないはずのMACアドレスが重複
・EU一般データ保護規則に違反する通信を行う ↩︎ -
情報セキュリティの3要素(CIA)とは
機密性・完全性・可用性のこと、頭文字をとってCIAともいう。
機密性:許可されたユーザのみが利用できること。
完全性:ファイルの改ざんなどがないこと。
可用性:障害が発生しにくく、発生しても影響がすくないこと。 ↩︎ -
厳密にはルータのルーティング機能などを使えば、本来疎通できないIP同士でも
通信できます。今回は簡潔に教えるためにあえて内容は省略しました。
詳しいことは「異なるセグメント間のルーティング機能について」で調べると良いです。 ↩︎ -
/24の場合に末尾0と255は別の用途として利用されるため、利用できない。
0はネットワークアドレス用、255はブロードキャストアドレス用として使用される。 ↩︎ -
将来的な目的でHTTPはTCPの他にUDPが予約されてますが、
基本はTCPの80番ポートを利用します。 ↩︎
Discussion