NWネットワークスペシャリスト試験 午後Ⅰ

令和4年度春期 ネットワークスペシャリスト 午後Ⅰ 問3

事例を読んで設問の答えを考えてから、解説のポイントとIPA公式の解答例・採点講評で確認しましょう。

問題

問3 シングルサインオンの導入に関する次の記述を読んで,設問1~3に答えよ。 Y社は,医療機器販売会社であり,都内に本社を構えている。受発注業務システムのサーバ(以下,業務サーバという),営業活動支援システムのサーバ(以下,営業支援サーバという)など,複数のサーバを本社で運用している。 Y社では,IT活用の推進によって社員が利用するシステムが増加した結果,パスワードの使い回しが広がり,セキュリティリスクが増大した。また,サーバの運用を担当する情報システム部(以下,情シスという)では,アカウント情報の管理作業が増大したことから,アカウント情報管理の一元化が課題になった。 このような状況から,Y社は,社内のシステムへのシングルサインオン(以下,SSOという)の導入を決定した。情シスのZ課長は,SSOの導入検討を部下のX主任に指示した。 〔ネットワーク構成及び機器の設定と利用形態〕 最初に,X主任は,本社のネットワーク構成及び機器の設定と利用形態をまとめた。X主任が作成した,本社のネットワーク構成を図1に示す。 図1 本社のネットワーク構成(抜粋) 現状の機器の設定と利用形態を次に示す。 (i) 社内DNSサーバは,内部LANのゾーン情報を管理し,内部LAN以外のゾーンのホストの名前解決要求は,外部DNSサーバに転送する。 (ii) 外部DNSサーバは,DMZのゾーン情報の管理及びフルサービスリゾルバの機能をもっている。外部DNSサーバは,社外からの再帰問合せ要求は受け付けない。一方,社内DNSサーバ及びDMZのサーバからの再帰問合せ要求は受け付け,再帰問合せ時には,送信元ポート番号のランダム化を行う。 (iii) PCには,プロキシ設定でプロキシサーバのFQDNが登録されているが,(a)業務サーバ及び営業支援サーバへのアクセスは,プロキシサーバを経由せずWebブラウザから直接行う。 (iv) PCのスタブリゾルバは,社内DNSサーバで名前解決を行う。 (v) PC,サーバセグメントとDMZのサーバでは,マルウェア対策ソフトが稼働している。マルウェア定義ファイルの更新は,プロキシサーバ経由で行う。 (vi) (b)PCには,L3SWで稼働するDHCPサーバから,PCのIPアドレス,サブネットマスク及びその他のネットワーク情報が付与される。 図1中のFWに設定されている通信を許可するルールを表1に示す。 表1 FWに設定されている通信を許可するルール 次に,X主任は,アカウント情報の一元管理をDSによって行い,DSの情報を利用してSSOを実現させることを考え,ケルベロス認証によるSSOについて検討した。 〔ケルベロス認証の概要と通信手順〕 X主任が調査して理解した,ケルベロス認証の概要と通信手順を次に示す。 ・ケルベロス認証では,共通鍵暗号による認証及びデータの暗号化を行っている。 ・PCとサーバの鍵の管理及びチケットの発行を行う鍵配布センタ(以下,KDCという)が,DSから取得したアカウント情報を基にPC又はサーバの認証を行う。 ・KDCが管理するドメインに所属するPCとサーバの鍵は,事前に生成してPC又はサーバに登録するとともに,全てのPCとサーバの鍵をKDCにも登録しておく。 ・チケットには,PCの利用者の身分証明書に相当するチケット(以下,TGTという)と,PCの利用者がサーバでの認証を受けるためのチケット(以下,STという)の2種類があり,これらのチケットを利用してSSOが実現できる。 ・PCの電源投入後に,利用者がID,パスワード(以下,PWという)を入力してKDCでケルベロス認証を受けると,HTTP over TLSでアクセスする業務サーバや営業支援サーバにも,ケルベロス認証向けのAPIを利用すればSSOが実現できる。 ・KDCは,導入予定のDSで稼働する。 X主任は,内部LANにDSを導入したときの,SSOの動作をまとめた。PCの起動から営業支援サーバアクセスまでの通信手順を図2に示す。 図2 PCの起動から営業支援サーバアクセスまでの通信手順(抜粋) 図2中の,①~⑧の動作の概要を次に示す。 ① PCは,DSで稼働するKDCにID,PWを提示して,認証を要求する。 ② KDCは,ID,PWが正しい場合にTGTを発行し,PCの鍵で暗号化したTGTをPCに払い出す。PCは,TGTを保管する。 ③ 省略 ④ 省略 ⑤ PCは,KDCにTGTを提示して,営業支援サーバのアクセスに必要なSTの発行を要求する。 ⑥ KDCは,TGTを基に,PCの身元情報,セッション鍵などが含まれたSTを発行し,営業支援サーバの鍵でSTを暗号化する。さらに,KDCは,暗号化したSTにセッション鍵などを付加し,全体をPCの鍵で暗号化した情報をPCに払い出す。セッション鍵は,通信相手の正当性の検証などに利用される。 ⑦ PCは,全体が暗号化された情報の中からSTを取り出し,ケルベロス認証向けのAPIを利用して,STを営業支援サーバに提示する。 ⑧ 営業支援サーバは,STの内容を基にPCを認証するとともに,アクセス権限をPCに付与して,HTTP応答を行う。 TGTとSTには,有効期限が設定されている。(c)PCとサーバ間で,有効期限が正しく判断できていない場合は,有効期限内でも,PCが提示したSTを,サーバが使用不可と判断する可能性があるので,PCとサーバでの対応が必要である。 〔SRVレコードの働きと設定内容〕 次に,X主任は,ケルベロス認証を導入するときのネットワーク構成について検討した。ケルベロス認証導入時には,DNSのリソースレコードの一つであるSRVレコードの利用が推奨されているので,SRVレコードについて調査した。 DNSサーバにSRVレコードが登録されていれば,サービス名を問い合わせることによって,当該サービスが稼働するホスト名などの情報が取得できる。 SRVレコードのフォーマットを図3に示す。 図3 SRVレコードのフォーマット X主任は,図1に示したように,内部LANにDSを2台導入して冗長化し,それぞれのDSでケルベロス認証を稼働させる構成を考えた。 図3中の,Serviceには,ケルベロス認証のサービス名である,kerberosを記述する。Priorityは,同一サービスのSRVレコードが複数登録されている場合に,利用するSRVレコードを判別するための優先度を示す。Priorityが同じ値の場合は,WeightでTargetに記述するホストの使用比率を設定する。Portには,サービスを利用するときのポート番号を記述する。 X主任は,2台のDSでケルベロス認証を稼働させる場合の,SRVレコードの設定内容を検討した。 X主任が作成した,ケルベロス認証向けのSRVレコードの内容を図4に示す。ここで,DS1とDS2は,本社に導入予定のDSのホスト名である。 図4 ケルベロス認証向けのSRVレコードの内容 X主任は,調査・検討結果を基にSSOの導入構成案をまとめ,Z課長に提出した。導入構成案が承認され,実施に移されることになった。 設問1 〔ネットワーク構成及び機器の設定と利用形態〕について,(1)~(4)に答えよ。 (1) 本文中の下線(a)の動作を行うために,PCのプロキシ設定で登録すべき内容について,40字以内で述べよ。 (2) 本文中の下線(b)について,(iii)~(v)の実行を可能とするための,その他のネットワーク情報を二つ答えよ。 (3) 表1中の[ア],[ウ]~[カ]に入れる字句を,図1又は表1中の字句を用いて答えよ。 (4) 表1中の[イ]に入れるプロトコル/ポート番号を答えよ。 設問2 〔ケルベロス認証の概要と通信手順〕について,(1)~(3)に答えよ。 (1) 攻撃者が図2中の②の通信を盗聴して通信データを取得しても,攻撃者は,⑦の通信を正しく行えないので,営業支援サーバを利用することはできない。⑦の通信を正しく行えない理由を,15字以内で述べよ。 (2) 図2中で,ケルベロス認証サービスのポート番号88が用いられる通信を,①~⑧の中から全て選び記号で答えよ。 (3) 本文中の下線(c)の問題を発生させないための,PCとサーバにおける対応策を,20字以内で述べよ。 設問3 〔SRVレコードの働きと設定内容〕について,(1)~(3)に答えよ。 (1) ケルベロス認証を行うPCが,図4のSRVレコードを利用しない場合,PCに設定しなければならないサーバに関する情報を,25字以内で答えよ。 (2) 図4のSRVレコードが,PCのキャッシュに存在する時間は何分かを答えよ。 (3) 図4の二つのSRVレコードの代わりに,図5の一つのSRVレコードを使った場合,DS1とDS2の負荷分散はDNSラウンドロビンで行わせることになる。図4と同様の比率でDS1とDS2が使用されるようにする場合の,Aレコードの設定内容を,50字以内で述べよ。ここで,DS1のIPアドレスをadd1,DS2のIPアドレスをadd2とする。 図5 変更後のSRVレコードの内容
図1 本社のネットワーク構成(抜粋)。インターネットにルータ、FWの順で接続し、FWにDMZ(L2SW配下に公開Webサーバ、プロキシサーバ、外部DNSサーバ)と内部LANがつながる構成図。内部LANではL3SWの先にPCセグメント(L2SW配下の複数PC)とサーバセグメント(L2SW配下のDS1・DS2(網掛け、今後導入予定)、業務サーバ、営業支援サーバ、社内DNSサーバ)がある。
図1 本社のネットワーク構成(抜粋)。インターネットにルータ、FWの順で接続し、FWにDMZ(L2SW配下に公開Webサーバ、プロキシサーバ、外部DNSサーバ)と内部LANがつながる構成図。内部LANではL3SWの先にPCセグメント(L2SW配下の複数PC)とサーバセグメント(L2SW配下のDS1・DS2(網掛け、今後導入予定)、業務サーバ、営業支援サーバ、社内DNSサーバ)がある。
表1 FWに設定されている通信を許可するルール。項番1~7のFW許可ルール。インターネット→DMZ(宛先ア:TCP/53とイ、宛先ウ:TCP/443)、DMZ→インターネット(送信元ア→any:TCP/53とイ、エ→オ:TCP/80とTCP/443)、内部LAN→DMZ(カ→ア:TCP/53とイ、サーバセグメント及びPCセグメント→プロキシサーバ:TCP/8080)。注記でFWがステートフルパケットインスペクション機能をもつこと、TCP/8080が代替HTTPのポートであることを示す。
表1 FWに設定されている通信を許可するルール。項番1~7のFW許可ルール。インターネット→DMZ(宛先ア:TCP/53とイ、宛先ウ:TCP/443)、DMZ→インターネット(送信元ア→any:TCP/53とイ、エ→オ:TCP/80とTCP/443)、内部LAN→DMZ(カ→ア:TCP/53とイ、サーバセグメント及びPCセグメント→プロキシサーバ:TCP/8080)。注記でFWがステートフルパケットインスペクション機能をもつこと、TCP/8080が代替HTTPのポートであることを示す。
図2 PCの起動から営業支援サーバアクセスまでの通信手順(抜粋)。社員、PC、DS(KDC)、営業支援サーバのシーケンス図。PC起動とID・PW入力の後、①認証要求(ID,PW)、②認証成功(TGT)、③HTTP要求、④HTTP応答(401,WWW-Authenticate:Negotiate)、⑤ST要求(TGT)、⑥STの払出し(ST)、⑦ケルベロス認証向けAPIを利用したST提示、⑧HTTP応答(200 OK)と続き、最後にHTTP通信を行う。
図2 PCの起動から営業支援サーバアクセスまでの通信手順(抜粋)。社員、PC、DS(KDC)、営業支援サーバのシーケンス図。PC起動とID・PW入力の後、①認証要求(ID,PW)、②認証成功(TGT)、③HTTP要求、④HTTP応答(401,WWW-Authenticate:Negotiate)、⑤ST要求(TGT)、⑥STの払出し(ST)、⑦ケルベロス認証向けAPIを利用したST提示、⑧HTTP応答(200 OK)と続き、最後にHTTP通信を行う。
図3 SRVレコードのフォーマット。SRVレコードの書式を1行で示す枠。項目は _Service._Proto.Name、TTL、Class、SRV、Priority、Weight、Port、Target の順に並ぶ。
図3 SRVレコードのフォーマット。SRVレコードの書式を1行で示す枠。項目は _Service._Proto.Name、TTL、Class、SRV、Priority、Weight、Port、Target の順に並ぶ。
図4 ケルベロス認証向けのSRVレコードの内容。_kerberos._tcp.naibulan.y-sha.jp. に対するSRVレコード2件の表。どちらもTTL 43200、Class IN、Priority 120、Port 88。TargetがDS1.naibulan.y-sha.jp.の行はWeight 2、DS2.naibulan.y-sha.jp.の行はWeight 1。
図4 ケルベロス認証向けのSRVレコードの内容。_kerberos._tcp.naibulan.y-sha.jp. に対するSRVレコード2件の表。どちらもTTL 43200、Class IN、Priority 120、Port 88。TargetがDS1.naibulan.y-sha.jp.の行はWeight 2、DS2.naibulan.y-sha.jp.の行はWeight 1。
図5 変更後のSRVレコードの内容。変更後のSRVレコード1件の表。_kerberos._tcp.naibulan.y-sha.jp.、TTL 43200、Class IN、SRV、Priority 120、Weight 1、Port 88、Target DS.naibulan.y-sha.jp.。
図5 変更後のSRVレコードの内容。変更後のSRVレコード1件の表。_kerberos._tcp.naibulan.y-sha.jp.、TTL 43200、Class IN、SRV、Priority 120、Weight 1、Port 88、Target DS.naibulan.y-sha.jp.。
解き方のヒントを見る

検討する前提の範囲をそろえる

認証と周辺設定を検討するときは、判断の前提がどの範囲に当てはまるかに注目しましょう。与えられた情報の適用範囲を整理し、自分の経験から補った条件を混ぜずに考えることが、理解を深める手掛かりになります。

この問題で問われていること

考える際は、ある前提を全体に当てはめてよいのか、限られた範囲の条件として扱うべきなのかを意識してください。判断に使う情報の範囲をそろえ、明示された条件と自分で置いた仮定を区別して整理しましょう。

視点

前提の適用範囲を広げると、同じ情報でも受け取り方が変わることがあります。まずは、どこまでが与えられた条件の範囲かを意識し、その範囲を保って考えましょう。

確認ポイント

  • 判断に使う前提は、どの範囲に当てはまるか。
  • 限られた範囲の条件を、全体へ広げていないか。
  • 自分で補った仮定によって、前提の範囲が変わっていないか。
正解と解説を見る

解説

既存LANへのSSO導入を題材に、プロキシ例外設定、DHCP配布情報、FWの許可ルール、ケルベロス認証のチケットと暗号化、時刻同期、SRVレコードによるサービス発見と負荷分散を関連付けて理解する問題です。

問題の全体像

Y社では、利用するシステムの増加によってパスワードの使い回しとアカウント管理の負担が増え、DSによる情報の一元管理とケルベロス認証によるSSOを導入します。出題趣旨では、既設LANの設定に基づく動作、ケルベロス認証の仕組み、DNSのSRVレコードの利用方法への理解が問われています。設問1は既存の通信環境、設問2は認証手順、設問3は認証サーバの発見と負荷分散を扱います。

設問1(1)

本文(iii)では、PCにプロキシサーバのFQDNが登録されている一方、業務サーバと営業支援サーバには直接アクセスするとされています。この二つの宛先をプロキシ利用の例外にする設定が必要です。公式解答例では、両サーバのFQDNをプロキシ例外リストに登録します。40字以内の答案では「業務・営業支援サーバのFQDNをプロキシ例外リストに登録する。」と要素をまとめられます。採点講評でも、プロキシを経由させない宛先の情報を例外リストに登録する点が指摘されています。

設問1(2)①

本文(iii)のプロキシサーバはFQDNで指定され、(iv)ではPCが社内DNSサーバで名前解決すると明記されています。PCが名前解決要求を送るには、そのDNSサーバのIPアドレスが必要です。公式解答例の一つ目は「社内DNSサーバのIPアドレス」です。採点講評では、この情報の正答率が低く、DHCPでPCが使用するローカルDNSサーバのIPアドレスを配布する一般的な運用を理解してほしいとされています。

設問1(2)②

図1では、PCセグメントとサーバセグメント、DMZが分かれています。PCが別のネットワークにあるサーバへアクセスするには、通信を中継する出口の情報が必要です。公式解答例の二つ目は「デフォルトゲートウェイのIPアドレス」です。DNSサーバの情報が宛先名をIPアドレスに変換するための設定であるのに対し、こちらはPCの属するネットワーク外へパケットを送るための設定です。

設問1(3)(ア)

表1のアは、インターネットからのDNS通信の宛先、DMZからインターネットへのDNS通信の送信元、社内DNSサーバからの問合せ先として共通して使われます。本文(ii)で、DMZのゾーン情報の管理とフルサービスリゾルバの機能をもつのは外部DNSサーバです。したがって、公式解答例では「外部DNSサーバ」となります。社外から再帰問合せを受け付けない設定でも、管理するゾーンへの問合せに対応するDNS通信は必要です。

設問1(3)(ウ)

表1の項番2は、インターネットからDMZへのTCP/443の通信です。図1のDMZにある機器のうち、社外からHTTPSで利用される宛先に対応するのは公開Webサーバです。公式解答例では「公開Webサーバ」となります。プロキシサーバへの内部LANからの接続は、項番6・7でTCP/8080として別に示されていることも判断の手掛かりになります。

設問1(3)(エ)

表1の項番4は、DMZからインターネットへのTCP/80とTCP/443の通信です。本文(v)では、マルウェア定義ファイルの更新をプロキシサーバ経由で行うとされています。内部の機器から受け取った要求を基に、インターネット上の宛先へHTTPやHTTPSで接続する送信元はプロキシサーバです。公式解答例では「プロキシサーバ」となります。

設問1(3)(オ)

オは、プロキシサーバからインターネットへのHTTP・HTTPS通信の宛先です。本文では接続先が特定の外部サーバに限定されていないため、表1の字句で宛先を表すと「any」になります。公式解答例も「any」です。送信元をプロキシサーバに限定した上で、そのサーバがインターネット上の宛先へ接続できるルールとして読み取ります。

設問1(3)(カ)

本文(i)では、社内DNSサーバが内部LAN以外のホストの名前解決要求を外部DNSサーバに転送します。また、(iv)ではPCの問合せ先は社内DNSサーバです。したがって、内部LANからDMZの外部DNSサーバへDNS要求を送る項番5の送信元は、公式解答例のとおり「社内DNSサーバ」です。PCから外部DNSサーバへ直接問い合わせる構成ではなく、本文に示された転送経路を追うことがポイントです。

設問1(4)

表1のイは、DNS通信を許可するルールでTCP/53と並んで記載されています。DNSではUDPのポート53も使用するため、公式解答例は「UDP/53」です。本文(ii)の送信元ポート番号のランダム化は、問合せを送る側のポートに関する設定であり、DNSサービスの宛先ポート53とは区別します。表1の注記にあるステートフルパケットインスペクションによって、許可した要求に対応する応答も扱われます。

設問2(1)

本文では、②のTGTはPCの鍵で暗号化され、⑥で払い出されるSTを含む情報全体もPCの鍵で暗号化されます。攻撃者は盗聴で暗号化データを得ても、PCの鍵がなければ復号できず、⑦で提示すべきSTを取り出せません。公式解答例は「STを取り出せないから」で、15字以内に収まります。採点講評でも、暗号化に用いた共通鍵をもたなければSTを取り出せないことを導き出す点が求められています。

設問2(2)

図2でKDCとPCの間の通信を選びます。①は認証要求、②はTGTの払い出し、⑤はSTの発行要求、⑥はSTの払い出しであり、ケルベロス認証サービスのポート88を使います。公式解答例は「①、②、⑤、⑥」です。③・④・⑦・⑧はPCと営業支援サーバ間のHTTP要求・応答です。⑦でケルベロス認証のチケットを提示していても、その通信先はKDCではなく営業支援サーバである点に注意します。

設問2(3)

下線(c)では、期限内のSTでもサーバが使用不可と判断する可能性が示されています。PCとサーバの時計がずれていると、同じ有効期限に対して異なる判断をするため、双方の時刻をそろえる必要があります。公式解答例は「PCとサーバ間で時刻同期を行う。」で、20字以内に収まります。答案では、対応する機器と時刻同期という対策を明確にします。

設問3(1)

本文では、SRVレコードを利用すると、サービス名からそのサービスが稼働するホスト名などを取得できると説明されています。図4のTargetには、ケルベロス認証を行うDS1とDS2のFQDNが記載されています。SRVレコードを利用しない場合は、認証先をPCに設定する必要があるため、公式解答例は「ケルベロス認証を行うサーバのFQDN」です。25字以内の答案では、このサーバの役割とFQDNを押さえます。

設問3(2)

図4のTTLは43200です。TTLはDNSレコードをキャッシュに保持できる時間を秒単位で示すので、設問が求める分に換算します。43200÷60=720となり、公式解答例は「720」、単位を付けると720分です。Priorityの120やPortの88ではなく、キャッシュの保持時間を表すTTL欄を読むことがポイントです。

設問3(3)

図4では両レコードのPriorityが120で等しく、WeightがDS1は2、DS2は1なので、使用比率は2対1です。図5ではTargetが共通のホスト名DSになるため、本問ではDSに対応するAレコードの記述数でこの比率を表します。公式解答例では、add1のAレコードを二つ、add2のAレコードを一つ記述します。50字以内なら「ホスト名DSにadd1のAレコードを二つ、add2のAレコードを一つ記述する。」とまとめられます。採点講評でも、2対1という条件を読み取り、共通のホスト名DSに対する設定を導く点が指摘されています。

学習のポイント

本文の利用条件から通信経路を追い、チケットの暗号化に使う鍵と、SRVレコードのTTL・Priority・Weightの役割を整理しましょう。

出典:独立行政法人 情報処理推進機構(IPA)令和4年度春期 ネットワークスペシャリスト試験 午後Ⅰ 問3(公式資料:問題冊子(PDF) / 解答例 / 採点講評)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針