SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

SCCM 2016 とクライアントエージェントのインストールメモ

leave a comment

SCCM 2016 Current Branch とクライアントエージェントをインストールした際のメモについて

参考資料

System Center 2012 R2 Configuration Manager 評価ガイド-基本環境構築編
https://www.microsoft.com/ja-jp/download/details.aspx?id=41686

System Center 2012 R2 Configuration Manager 評価ガイド – ソフトウェア更新プログラム展開編
https://www.microsoft.com/ja-jp/download/details.aspx?id=42526

System Center 2012 R2 Configuration Manager 評価ガイド – アプリケーション管理編
https://www.microsoft.com/ja-jp/download/details.aspx?id=42282
System Center 2012 R2 Configuration Manager 評価ガイド – Endpoint Protection 管理編
https://www.microsoft.com/ja-jp/download/details.aspx?id=42942

System Center 2012 R2 Configuration Manager 評価ガイド-OS 展開編

https://www.microsoft.com/ja-jp/download/details.aspx?id=41687

System Center 2012 R2 Configuration Manager 評価ガイド – インベントリ収集編

https://www.microsoft.com/ja-jp/download/details.aspx?id=43694

Configuration Manager の前提条件チェッカーのテクニカル リファレンス
https://technet.microsoft.com/ja-jp/library/hh368980.aspx

System Center 2012 Configuration Manager におけるワークグループ環境でのクライアントご利用手順について
https://blogs.technet.microsoft.com/systemcenterjp/2013/12/04/system-center-2012-configuration-manager-12531/

Step-by-Step SCCM 1602 Upgrade Guide
https://www.systemcenterdudes.com/sccm-1602-upgrade-guide/

SCCM 1511 – Step by Step Installation Guide

https://sccmentor.com/2015/12/27/sccm-1511-step-by-step-installation-guide/

システム要件

System Center Configuration Manager のサポートされている構成
https://docs.microsoft.com/ja-jp/sccm/core/plan-design/configs/supported-configurations

  • 英語版の情報を確認することで、SQL Server 2016 SP1 のサポートが明記されている。

SCCM 2016 は CB / CBB の考え方があるため、最新の Windows OS に対応させるためには、SCCM 自体の更新についても考慮する必要がある。

System Center Configuration Manager の更新プログラム

https://technet.microsoft.com/library/mt607046.aspx

ドメインの機能レベル

スキーマ拡張の実施

System Management コンテナーの作成と権限付与

  • System Management コンテナーを手動で作成するには
    http://go.microsoft.com/fwlink/?LinkId=233190
  • ADSI エディターで以下の操作を実施する
    • 「CN=System」配下に「System Management」のコンテナーを作成
    • 作成したコンテナーに対して、SCCM のコンピューターアカウントに「このオブジェクトとすべての子オブジェクト」の「フルコントロール」を付与
    • スキーマ拡張を実施し、System Management コンテナーに適切な権限を付与することで、サービスロケールポイントのオブジェクトが SCCM から設定される
      • AD に参加しているクライアントは、ここから SLP の情報を取得可能

ドメインに対しての読み取りの権限を付与 (SCCM の探索の機能で、AD の情報をインポートするための操作)

  • 「Active Directory ユーザーとコンピューター」で以下の操作を実施する
    • ドメイン名のプロパティを開く
    • SCCM のコンピューターアカウントに対して「読み取り」の権限を付与
    • SCCM インストール後に、「Active Directory システムの探索」「Active Directory ユーザーの探索」等を実施することで、AD のオブジェクトを使用できるようにすることが可能

AD CS のインストール

  • SCCM は、HTTPS による通信を前提とするため証明書の発行期間を追加
  • Active Directory 証明書サービスのインストール
    • 証明期間のみインストールを実施
  • AD CS 経由の証明書を使用して、証明書の入れ替えを実施しない運用を想定して証明書を作成する
    • エンタープライズ CS / ルート CA としてインストール
      • 有効期間は 100 年として設定
    • 発行される証明書の有効期間の変更
      • デフォルトは 2 年となっている
        • certutil -getreg CA\ValidityPeriodUnits
      • 発行される証明書の有効期間を 100 年に設定できるように変更
        • certutil -setreg CA\ValidityPeriodUnits 100
        • net stop CertSvc & net start CertSvc
        • certutil -getreg CA\ValidityPeriodUnits

証明書テンプレート

  • SCCM サーバー用証明書 (IIS で利用)
    • 証明書テンプレートの MMC から、「Web サーバー」の証明書テンプレートの複製を作成
      • 全般 : テンプレート名 : ConfigMgr Web Server Certification / 有効期間を 100 年に変更
      • サブジェクト名 : 「Active Directory の情報から構築する」「サブジェクト名の形式 : 共通名」「ユーザー プリンシパル名」を有効
      • セキュリティ : SCCM のコンピューターアカウントの「登録」を有効にする
      • 証明機関の MMC を開き、作成した証明書テンプレートを追加する
      • 追加したテンプレートの秘密キーのエクスポートを許可
  • クライアント用証明書 (ドメイン参加クライアントの自動登録で使用)
    • 証明書テンプレートの MMC から、「ワークステーション」の証明書テンプレートの複製を作成
      • 全般 : テンプレート名 : ConfigMgr Client Certification / 有効期間を 100 年に変更
      • サブジェクト名 : Active Directory の情報から構築する / サブジェクト名の形式 : なし / サブジェクト名 : DNS 名
        • 共通名は、AD から DNS 名を取得して自動設定
      • セキュリティ : Domain Computers の「登録」「自動登録」を有効にする
        • GPO とと組み合わせて、証明書の自動登録を行う
      • 要求処理 : 秘密キーのエクスポートを許可
      • 証明機関の MMC を開き、作成した証明書テンプレートを追加する
    • 自動登録用の GPO を設定
      • コンピューターの構成→Windows nの設定→セキュリティ設定→公開キーのポリシー証明書サービスクライアント自動登録
      • 構成モデルを有効にし、両チェックボックスを有効にする
  • クライアント用証明書 (ワークグループクライアントで使用)
    • 証明書テンプレートの MMC から、「ワークステーション」の証明書テンプレートの複製を作成
      • 全般 : テンプレート名 : ConfigMgr Workgroup Client Certification / 有効期間を 100 年に変更
      • サブジェクト名 : 要求に含まれる
        • 証明書を発行する際に、コンピューター名を明示的に指定する
      • セキュリティ : ドメインコントローラーの「登録」を有効にする
        • 証明書の発行をドメインコントローラーから実施することを想定。他の環境から実施する場合は、その環境をセキュリティ設定として加える
      • 要求処理 : 秘密キーのエクスポートを許可
      • 証明機関の MMC を開き、作成した証明書テンプレートを追加する
    • ワークグループクライアントのコンピューター名と同一の名称の証明書を作成し、コンピューターアカウントの個人にインポートする
      • ルート証明書についても、コンピューターアカウントの信頼されたルート証明書として登録する

SCCM 2016 のインストール

SCCM / SQL Server 共通

  • SCCM 2016 / SQL Server のインストールに必要となるため、.NET Framework 3.5 SP1 のインストールのための準備を実施しておく

SQL Server のインストール

  • SQL Server は「SQL_Latin1_General_CP1_CI_AS」でインストールをしておく
  • SCCM のレポート機能を使用する場合、SSRS の機能を追加し、初期の設定を実施しておく
    • SQL Server をインストールしたサーバーをレポートサービスポイントとして利用する場合
  • SPN の登録のための設定
    • AD でコンピューターアカウントのプロパティを開き、以下の権限を付与
      • servicePrincipalName の読み取り
      • servicePrincipalName の書き込み
    • SQL Server のコンピューターアカウントの servicePrincipalName に、「MSSQLSvc」が追加されていれば、SPN の登録は実施されている
  • Windows ファイアウォールの設定
    • New-NetFirewallRule -Name "SQL Server" -DisplayName "SQL Server" -Group "SQL Server" -Protocol "tcp" -LocalPort 1433, 4022, 135, 445
      • SQL Server と Service Broker
      • 135 / 445 は SCCM インストール時にデータベースファイルパスを確認するために開放しておく必要がある (開放していないと、インストール時に SQL Server のサーバーにパスが存在していても、「パスが存在しません。有効なパスを選択してください」のエラーが発生してしまう)
    • レポート サービスポイントのサーバーとしても利用する場合、SCCM の管理コンソールから SSRS のインスタンス確認の接続が、動的ポートを使用して行われるため、以下のコマンドで動的ポートに対してのアクセスを可能とする
      • New-NetFirewallRule -Name "SQL Server SSRS Console" -DisplayName "SQL Server SSRS Console" -Group "SQL Server" -Protocol "tcp" -LocalPort RPC
      • New-NetFirewallRule -Name "SQL Server SSRS" -DisplayName "SQL Server SSRS" -Group "SQL Server" -Protocol "tcp" -LocalPort 80
  • SCCM のインストーラーを起動しているユーザーで接続が実施されるため、インストーラーを起動しているユーザーの SQL Server に対してのログインの権限については注意する
  • サービスアカウントは、以下のいずれかを使用する (NT SERVICE\MSSQLSERVER は使用できない)
    • ドメインアカウント / ネットワークサービス / ローカルシステム
  • max server memory を設定する
    • SCCM のインストーラーの前提条件の確認で、設定されているかの確認が行われている
      • 警告のチェックのため、未設定でもインストール可能
  • SQL Server のメモリ
    • 中央管理サイト , プライマリサイト : 8GB / セカンダリサイト 4GB 以上のメモリのチェックが SCCM のインストーラーで行われている
      • 警告のチェックのため、満たしていなくてもインストール可能
  • SQL Server の Administrators グループのメンバー
    • サイトサーバーコンピューターのコンピューターアカウントを Administrators グループに含める
      • SQL Server のインストール時に管理者アカウントとして Administrators グループを指定した場合
      • SQL Server にアクセスを行う際に、コンピューターアカウントで認証させるため、コンピューターアカウントが SQL Server にアクセス可能な状態にする

SCCM のインストール

  • Configuration Manager サイト システムの役割用の Windows ベース サーバーの構成
    https://technet.microsoft.com/ja-jp/library/gg712264.aspx#BKMK_ConfigWindows
  • サーバーマネージャーから役割 / 機能を追加
    • 「Web サーバー (IIS) 」の役割の有効化
      • 「.NET Framework 3.5 Features」の「HTTP アクティブ化」も有効にする
      • Web サーバーの役割サービスとして、以下を追加で有効にする
        • HTTP 共通機能 : WebDAV 発行以外すべて
        • セキュリティ : Windows 認証
      • アプリケーション開発
        • .NET 拡張機能 4.5
        • ASP.NET 3.5
        • ASP.NET 4.5
      • 管理ツール
        • IIS 6 管理互換 : IIS 6 WMI 互換
    • 「Remote Differential Compression」の機能の有効化
      • サイトサーバーで必要となる
    • 「バックグラウンドインテリジェント転送サービス (BITS)」の機能の有効化
  • Windows ADK をインストール
    • インターネットに接続されていない環境では、事前にインストーラーを準備しておく必要がある
    • http://go.microsoft.com/fwlink/?LinkId=529534
      • Windows 展開ツール (Deployment Tools)
        • プライマリサイトと SMS プロバイダーで必要となる
      • ユーザー状態移行ツール (USMT)
        • 中央管理サイトとスタンドアロンのプライマリサイトで必要となる
      • Windows プレインストール環境 (Windows PE)
      • SMS プロバイダーで必要となる
  • 証明書の登録
    • ドメインユーザーで、コンピューターアカウントの証明書の MMC を起動し、個人の証明書として、テンプレートとして作成した Web サーバー用の証明書の要求をし、登録する
    • 取り込んだ証明書を IIS の 「Default Web Site」の TCP 443 の HTTPS の証明書としてバインドする
  • 必須ファイルのダウンロードは以下で実施することが可能なため、インターネットに接続できない環境では、事前にダウンロードを実施しておく

mkdir c:\sccmdownload
D:\SMSSETUP\BIN\X64\setupdl.exe C:\sccmdownload

  • Configuration Manager プライマリサイトをインストールする
    • ドメインユーザーでインストーラーを起動する
      • ローカルユーザーでは、ドメインの機能レベルやスキーマ拡張を要件を満たしていても、前提条件の確認で警告が表示されてしまう。
    • 別の環境に構築されている SQL Server を使用するため、「標準インストールオプション」を使用せずにインストールする
      • 今回はスタンドアロンのプライマリサイトとしてインストール
      • 今回の手順であれば、サーバー上の WSUS / SQL Server プロセスのメモリの割り当て以外は、前提条件の確認で警告は発生しない
  • インストールが完了したら、「管理」の「サイトの構成」「サーバーとサイトシステムの役割」から、「配布ポイント」の役割の証明書を自己署名証明書から、ルート証明書で署名されている証明書に変更する
  • インストールが完了したら、SCCM のコンソールで「監視」の「システムのステータス」「サイトのステータス」から状態を確認する

SCCM の設定

更新プログラムの確認

  • SCCM がインターネットに接続できる状態にする
  • 管理の「クラウドサービス」→「更新とサービス」の「更新プログラムの確認」をクリックし、CM の更新プログラムのチェックを実施する
    • 更新プログラムの確認についてのログは「C:\Program Files\Microsoft Configuration Manager\Logs」に出力される

サイト境界の設定

  • SCCM の管理コンソールを開く
  • 管理の「階層の構成」から境界を選択し、境界を作成
  • 管理の「階層の構成」から境界を選択し、境界グループを作成

自動承認の設定

  • PKI 認証を使用しないクライアントコンピューターを承認するための設定
    • PKI 認証を指定しているクライアントコンピューターはワークグループ環境でも自動承認される
  • サイトの構成の「サイト」を右クリックし、「階層設定」をクリック
  • 「クライアントの証人と競合レコードの処理」から自動承認の設定を行う

CRL の無効化

  • インターネットからアクセスされた場合に、AD CS から発行された証明書の CRL のチェックを無効にするための設定
  • SCCM の管理コンソールを開く
  • 管理の「サイトの構成」のサイトから、プライマリサイトのプロパティを開き「クライアントコンピューターの通信方法」から CRL のチェックを無効にする

HTTP と HTTPS の切り替え

  • 「サイトの構成」の「サイト」から「クライアントコンピューターの通信方法」の設定を変更
  • 「サーバーとサイトシステムの役割」から各役割のプロパティを開き HTTP に変更
    • 少し時間を置くと、IIS の各アプリケーションの「SSL 設定」が変更される

レポートサービスポイントの追加

  • SSRS がインストールされている役割のサーバーに対して、レポートサービスポイントの役割を追加
  • 管理の「サイトの構成」の「サーバーとサイトシステムの役割」から SSRS がインストールされているサーバーを選択し、レポートサービスポイントの役割を追加する

配布ポイントへのアクセスアカウントの設定

  • SCCM の管理コンソールを開く
  • 管理の「サイトの構成」の「サイト」のホームタブから「サイトコンポーネントの構成」→「ソフトウェアの配布」をクリック
  • ネットワークアクセスアカウントに配布ポイントにアクセスが可能なドメインユーザーを指定する
    • ワークグループ環境の場合は、コンピューターアカウントによるアクセスができないため、代替で使用するアカウントの指定が必要
  • アプリケーション/パッケージ配布時には、クライアントの「C:\Windws\ccmcache」を確認することで、配布時にローカルにダウンロードする設定になっていた場合は、配布されたファイルを確認することができる
    • サーバー上は、SMSPKGSIG / SMSSIG$ にパッケージは配布されているため、パッケージの元になっているファイルを更新をした際は、配布ポイントの更新を行い、これらのディレクトリに配置されている配布用パッケージを更新する必要がある。
      • 更新しないと、配布対象として指定したファイルを更新しても、実際に配布されるファイルは更新されていない状態となる

同期間隔の変更

  • 管理のクライアント設定から「カスタムクライアントデバイスの設定」を作成
  • クライアントポリシーを有効にし、ポーリング間隔を調整する
    • 必要に応じて、ハードウェアインベントリ、ソフトウェアの展開、ソフトウェアインベントリ、ソフトウェア使用状況の測定、ソフトウェア更新プログラム等に関しても間隔を調整する

インターネットアクセスポイントの設定

  • 管理の「サイトの構成」の「サーバーとサイト システムの役割」からサイトシステムの役割をホストしているサーバーの、サイトシステムのプロパティを開く
  • 「このサイトシステムのインターネット用 FQDNを指定する」を有効にし、インターネット用 FQDN を設定する
  • 「管理ポイント」「配布ポイント」のプロパティを開き「HTTPS」を設定し、「イントラネットのみの接続を許可する」以外の適切な設定を行う。
    • 「このサイトシステムの~」を有効にしないと「イントラネットのみの接続を許可する」以外を選択することができない。

クライアントエージェントのインストール

インストールの確認

  • サイトサーバーの sms_<サイトコード> から CLIENT フォルダーをコピー
    • メディアに含まれているクライアントのセットアップではなく、インストールしたサーバーの環境からファイルを取得する
  • インストールが完了すると「SMS Agent Host」サービスがインストールされ、アプリケーションとして「ソフトウェアセンター」が追加される

ログの確認

  • インストール時のログファイルは「C:\Windows\ccmsetup\Logs」から確認できるため、インストールが行われない場合は、このフォルダのログを確認
  • インストール後のエージェントのログについては「C:\Windows\CCM\Logs」から確認できるため、インストールは実施されたが、正常に動作していない場合は、このフォルダのログを確認
  • Configuration Manager のログ ファイルのテクニカル リファレンス
    https://technet.microsoft.com/ja-jp/library/hh427342.aspx
  • System Center 2012 R2 Configuration Manager Toolkit

https://www.microsoft.com/en-us/download/details.aspx?id=50012

  • "C:\Program Files (x86)\ConfigMgr 2012 Toolkit R2\ClientTools\CMTrace.exe"

アクセスの確認 URL

クライアントのインストールパラメーターの例

  • HTTP でアクセスする場合のインストールパラメーター
    • c:\client\CCMSetup.exe /MP:sccm-cm-01.sccm.local SMSSITECODE=P01 SMSMP=sccm-cm-01.sccm.local SMSSLP=sccm-cm-01.sccm.local /retry:1
  • HTTPS でのアクセス (ドメイン参加)
    • C:\Client\ccmsetup.exe /UsePKICert /NoCrlCheck /MP:https://sccm-cm-01.sccm.local SMSSITECODE=P01 SMSMP=sccm-cm-01.sccm.local SMSSLP=sccm-cm-01.sccm.local DNSSUFFIX=sccm.local /retry:1
    • C:\Client\ccmsetup.exe /UsePKICert /NoCrlCheck DNSSUFFIX=sccm.local /retry:1
  • HTTPS でのアクセス (ワークグループ)
    • C:\Client\ccmsetup.exe /UsePKICert /NoCrlCheck /MP:"https://sccm-cm-01.sccm.local" SMSSITECODE=P01 SMSMP="https://sccm-cm-01.sccm.local" SMSSLP="https://sccm-cm-01.sccm.local" DNSSUFFIX=sccm.local /retry:1
      • 検証で使用していた環境では、プロパティに対しても https:// を設定しないと、サーバーが認識されなかった
      • DNS による解決が実施されなかったため、各役割をインストール実施時に認識させる方式を利用している
      • ダブルクォーテーションは無くてもよいはず
        • C:\Client\ccmsetup.exe /UsePKICert /NoCrlCheck /MP:https://sccm-cm-01.sccm.local SMSSITECODE=P01 SMSMP=https://sccm-cm-01.sccm.local SMSSLP=https://sccm-cm-01.sccm.local DNSSUFFIX=sccm.local /retry:1
    • C:\Client\ccmsetup.exe /UsePKICert /NoCrlCheck SMSSITECODE=P01 DNSSUFFIX=sccm.local CCMHOSTNAME=sccm-cm-01.sccm.local /retry:1
      • ClientLocation.log に、Workgroup client is in Unknown location. Default to internet to be conservative が表示されていたため、CM サーバーでインターネットアクセスポイントを設定して、そのアクセスポイントに対して、CCMHOSTNAMEでアクセスさせたところ認識された。
  • デバッグログの出力
    • CCMDEBUGLOGGING=1 CCMLOGLEVEL=0

プッシュ配信 (ドメイン環境のクライアントに対して実施可能)

  • 「管理」の「サイトの構成」→「サイト」から【クライアントインストール設定】→「クライアントプッシュインストール」をクリック
  • アカウントから、クライアントに接続する際のドメインアカウントを指定する
  • 設定が完了したら「資産とコンプライアンス」のデバイスから、プッシュ対象のクライアントを選択して、「クライアントのインストール」から、クライアントをプッシュインストールする
    • クライアントに対して「\\コンピューター名\ADMIN$」で接続できる必要がある
      • Windows Firewall で、ドメインプロファイルに対して「Windows Management Instrumentation (WMI」「ファイルとプリンター共有」が許可されている必要がある

SCCM との通信の確認 (SCCM 側で実行)

  • while($true){%{Get-NetTCPConnection -RemoteAddress "10.178.0.100" -ErrorAction SilentlyContinue};Start-Sleep -Seconds 3;clear-host}
  • Get-Content C:\inetpub\logs\LogFiles\W3SVC1\u_ex161222.log -Wait -Tail 5
  • Get-Content $ENV:SystemRoot\system32\LogFiles\Firewall\pfirewall.log -Wait -Tail 5
    • Windows Firewall でログ取得を有効にする

マスターイメージへの組み込み

  • SCCM のクライアントエージェントのインストールを実施する
  • net stop "SMS Agent Host"
  • コンピューターアカウントの証明書の SMS に格納されている証明書を削除する
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SystemCertificates\SMS\Certificates に格納されているレジストリが削除される
  • コンピューターアカウントの個人の証明書を削除する
  • %SystemRoot%\SMSCFG.ini を削除
参考資料

コンピュータ イメージングを使用した Configuration Manager クライアントのインストール方法

https://technet.microsoft.com/ja-jp/library/bb694095.aspx

Prepare ConfigMgr client for Sysprep or Master Image

http://henkhoogendoorn.blogspot.jp/2013/07/prepare-configmgr-client-for-sysprep-or.html

Configuration Manager で Endpoint Protection クライアントをディスク イメージにプロビジョニングする方法

https://technet.microsoft.com/ja-jp/library/dn236350.aspx

[SCCM2012] SCCM クライアントに関連する情報を完全に削除する方法

https://blogs.technet.microsoft.com/systemcenterjp/2012/08/16/sccm2012-sccm/

クライアントエージェントの参考資料

System Center Configuration Manager でクライアントを Windows コンピューターに展開する方法
https://msdn.microsoft.com/ja-jp/library/mt627891.aspx

SCCM 2012 Internet Based Client Management
https://www.systemcenterdudes.com/internet-based-client-management/

インターネットベースのクライアント接続で使用する管理ポイントの設定方法
https://technet.microsoft.com/ja-jp/library/bb693517.aspx

Configuration Manager で Windows ベースのコンピューターにクライアントをインストールする方法
https://technet.microsoft.com/ja-jp/library/gg712298.aspx

System Center 2012 Configuration Manager におけるワークグループ環境でのクライアントご利用手順について
https://blogs.technet.microsoft.com/systemcenterjp/2013/12/04/system-center-2012-configuration-manager-12531/

ConfigMgr 2012 R2 Certificate Requirements and HTTPS configuration
https://blogs.technet.microsoft.com/configmgrdogs/2015/01/21/configmgr-2012-r2-certificate-requirements-and-https-configuration/

Configuration Manager で DNS 発行を使用して、管理ポイントを検出するようにクライアント コンピューターを構成する方法
https://technet.microsoft.com/ja-jp/library/gg682055.aspx

Share

Written by Masayuki.Ozawa

12月 23rd, 2016 at 11:54 pm

Posted in System Center

Tagged with

Leave a Reply