【OneGate検証】MDMにSCEP機能がなくてもOK!構成プロファイルを使ったAppleデバイスへのクライアント証明書配布

水色の背景に六角形が2つあるイラスト 水色の背景に六角形が2つあるイラスト
アイキャッチ
目次

はじめに

近年、ゼロトラストセキュリティや強固なデバイス認証を実現するため、クライアント証明書を導入する企業が増えています。多数のデバイスへ証明書を効率よく配布する際、一般的に利用されるのが「SCEP(Simple Certificate Enrollment Protocol)」を利用したMDM(モバイルデバイス管理)からの自動配布です。

しかし、システム管理者の方々からは、「現在利用中のMDMがSCEPに対応していない」「SCEP機能を利用するために上位ライセンスが必要になる」といったご相談をいただくことがあります。SCEPによる自動配布の導入に壁を感じている方も多いのではないでしょうか。

本記事の目的と結論

本記事ではAppleデバイスを管理するシステム管理者の方々向けに、そのような課題を解決するアプローチをご紹介します。

結論からお伝えすると、Appleデバイス(iOS/iPadOS/macOS)を対象とする場合、MDM側に専用のSCEP機能が備わっていなくても「カスタム構成プロファイル(.mobileconfig)」を配信する機能と、証明書基盤(Soliton OneGate)側のSCEP固定チャレンジ(Static Challenge)機能を組み合わせることで、証明書の自動取得と配布は可能です。

今回はその実証として、あえてMDMを使用せず「手動」で構成プロファイルをAppleデバイス(iPhone)に展開します。そして、プライベートCA機能を提供する国産のクラウド型認証・ID管理サービスSoliton OneGate(以下、OneGate)からクライアント証明書が正常に配布できるかを検証します。

💡補足:「カスタム構成プロファイル」を活用するメリット
あえて「カスタム構成プロファイル(.mobileconfig)」を作成して配信する最大のメリットは、MDM側の機能アップデートを待たずに最新・詳細な設定をすぐに適用できる点です。
例えば、iOSのアップデートで追加された新機能やご利用中のMDMが未対応の高度な設定であっても、プロファイルとして直接配信することですぐに利用ができます。カスタム構成プロファイルは、MDMの機能不足を補い自由度の高いデバイス管理を可能にする強力なアプローチと言えます。

検証手順

事前準備

検証を始める前に、以下の環境と情報を準備します。

  • Mac端末(Apple Configuratorがインストールされていること)
  • 検証用iPhone
  • OneGateの環境準備(以下の手順をご参照ください)

① CA証明書のダウンロード

  1. OneGateの管理画面にログインします。
  2. メニューから 「証明書管理」>「CA情報」を開きます。
  3. CA証明書のダウンロードボタン(DER形式またはPEM形式)をクリックし、Mac端末に保存します。


② SCEP固定チャレンジの設定と情報取得

  1. OneGateの管理画面から、「証明書管理」>「外部連携設定」を開き「MDM連携設定(SCEP固定チャレンジ)」で以下のように設定し「保存」します。
    • MDM連携設定(SCEP固定チャレンジ): 有効にする
    • チャレンジの有効期限: 任意の期限
    • IPアドレス制限: 証明書を配布するデバイスのアクセス元IPアドレスからのアクセスを許可するよう設定する
    • 証明書の有効期限: 任意の期限
    • 証明書情報の変更: 証明書要求のサブジェクト、キー使用法、拡張キー使用法を使用しない
      ※証明書のサブジェクト内のCNには、OneGate側で設定する「名前(CN)」の値ではなく、後ほど作成する構成プロファイルの「サブジェクト」の値が使用されます。
    • 拡張キー使用法: TLS Web クライアント認証
      ※一部の認証では用途に含まれている必要があります。

  2. 「MDM連携設定(SCEP固定チャレンジ)」の「設定情報」を開き、「チャレンジ」「SCEPサーバーのURL」をメモしておきます。


ステップ①:Apple Configuratorで構成プロファイルを作成する

まずはMacの「Apple Configurator」を使って、ベースとなる構成プロファイル(.mobileconfig ファイル)を作成します。

  1. Macで Apple Configuratorを起動し、メニューバーの「ファイル」>「新規プロファイル」を選択します。

  2. 「一般」ペイロード
    名前: 任意の名前(例:OneGate_SCEP_Profile)を入力します。

  3. 「証明書」ペイロード
    「構成」をクリックし、事前準備でダウンロードしておいたCA証明書をアップロードします。

  4. 「SCEP」ペイロード
    「構成」をクリックし、以下の情報を入力します。
    • URL: 事前準備でメモしたOneGateのSCEPサーバーのURLを入力します。
    • 名前: 任意の名前(例:OneGate SCEP
    • サブジェクト: 今回は手動検証のため、任意の固定文字列を入力します。(例:CN=TestDevice_Manual
      ※証明書のサブジェクト内の「通称(CN)」として使用されます。
    • チャレンジ: 事前準備でメモした固定チャレンジの値を入力します。
    • 鍵のサイズ:4096

  5. 設定が完了したら、メニューの「ファイル」>「保存」から、.mobileconfigファイルとしてMac上に保存します。

ステップ②:作成したプロファイルをiPhoneに手動展開する

ステップ①で作成したファイルを、検証用のiPhoneに送ってインストールします。今回はAirDropを使用します。

  1. Macで保存した .mobileconfig ファイルを右クリックし、「共有」>「AirDrop」から検証用iPhoneに送信します。



  2. iPhone側で受信を許可すると、「プロファイルがダウンロードされました」という通知が表示されます。


  3. iPhoneの 「設定」 アプリを開き、上部に表示されている 「ダウンロード済みのプロファイル」をタップします。


  4. 右上の 「インストール」をタップし、画面の指示に従ってインストールを完了させます。



💡 SCEP固定チャレンジでのクライアント証明書自動取得
このプロファイルインストールのタイミングで、デバイスからOneGateへSCEPの通信が自動的に行われ、端末にクライアント証明書が発行されます。

ステップ③:結果の確認

プロファイルがiPhoneにインストールされたら、以下の2つのポイントで証明書が正しく発行されているかを確認します。

iPhone側での確認

  1. 「設定」>「一般」>「VPNとデバイス管理」に表示されるインストールした構成プロファイル(OneGate_SCEP_Profile)をタップし、「詳細」を開きます。



  2. プロファイルの中にCA証明書と合わせて、ステップ①で指定したサブジェクト名(CN=TestDevice_manual)のクライアント証明書(SCEPデバイスID証明書)が発行されていることを確認します。



OneGate管理画面での確認

  1. OneGateの管理画面にログインし、「証明書管理」>「証明書一覧」を開き、ステップ①で指定したサブジェクト名(CN=TestDevice_Manual)の証明書が発行されていることを確認します。


  2. サブジェクト名(CN=TestDevice_Manual)をクリックし、証明書詳細情報を確認します。


考察:MDM運用への応用と「変数」の活用

検証の結果、構成プロファイル内にSCEPの設定を記述するだけで、MDMのSCEP機能を使用しなくても証明書がデバイスに配布されることが確認できました。 実際の運用では、この .mobileconfig ファイルをMDMの「カスタムプロファイル配布機能」を用いて各デバイスに配信します。

実運用におけるメリット:変数の活用

MDMによっては、カスタムプロファイルを配信する際、設定値に「変数」を使用することができます。 構成プロファイルの「サブジェクト(CN)」にMDMで規定されている変数(例: {{UserPrincipalName}}(ユーザー名)や {{DeviceId}}(デバイスID)など)を指定しておくことで、配信時にMDMが実際のユーザー情報やデバイス情報に自動で変換してくれます。

※例えばMicrosoft Intuneには標準でSCEP機能が備わっていますが、あえて今回のカスタム構成プロファイルを配布しクライアント証明書の発行を行なった場合でも、CNに変数が使えることを確認しました。

▼ 参考:Intuneの変数({{UserPrincipalName}})を使用して発行された証明書





変数を活用することで、「誰の、どのデバイスに対して発行された証明書なのか」をOneGateの管理画面上で識別できるようになり、証明書のライフサイクル管理(棚卸しや失効手続きなど)が容易になります。

注意点①:証明書の更新運用について

本手法を運用に組み込む上で、1点ご留意いただきたい事項があります。それは、カスタム構成プロファイルを利用した証明書配布では、証明書が自動更新されないという点です。

MDMの標準的なSCEP機能では有効期限が近づくと自動的に更新処理が行われる仕組みを持つものもありますが、今回の手法では自動更新が働きません。そのため、実際の運用にあたっては以下例のような運用をご検討ください。

① 構成プロファイルの再配布による更新

証明書の有効期限内にMDM経由で構成プロファイルを再配布する計画を立て、デバイスに新しい証明書を発行する運用です。

② 証明書を端末の入れ替え時期までの有効期限で発行

証明書の更新作業そのものをなくすため、あらかじめデバイスの想定利用年数(3〜5年など)に合わせて、長めの有効期限で証明書を発行する運用です。端末の紛失時や利用者の退職時には、OneGateの管理画面から個別に証明書を失効することで、安全な運用を担保できます。

注意点②:固定チャレンジ値の管理について

SCEPの固定チャレンジ方式では、不正な証明書が発行されないようにするために固定チャレンジ値の管理が重要です。
安全に固定チャレンジ方式で証明書配布を行うために、以下のような運用を推奨しております。

  • 利用者や外部に固定チャレンジ値が漏れないように管理する
  • 固定チャレンジ値の有効期限を短くする
  • 固定チャレンジ方式で証明書を取得できるソースIPアドレスを適切に設定する

おわりに

本記事ではMDMのSCEP機能に依存せず、構成プロファイルを用いてOneGateの証明書を配布する手法を検証しました。この手法を用いれば、MDMの選択肢を広げつつセキュアな証明書運用を実現できます。

ご利用の環境に合わせた柔軟な証明書配布ができるのも、Soliton OneGateの強みの一つです。多様なMDM環境に合わせた証明書認証の導入についてお悩みの際は、ぜひお気軽にお問い合わせください。

記事を書いた人

ソリトンシステムズ ソリューションアーキテクト 米倉

普段の業務では、パートナー様とのOEM技術支援をはじめ、SCS評価制度を通じたお客様への製品提案など、複数の製品を組み合わせた複合提案を技術面からサポートしています。日々の技術支援で培った知見を活かし、皆様の課題解決や最適なソリューション選びのヒントになるような情報をお届けしていきたいと考えています。