Windows Server 2012 R2 Preview を試す前に知っておきたい 第 1 版 2013.07.12 Agenda 1. Server Manager 2. ユーザーインターフェースオプション の追加 12. DHCP Failover 3. Windows PowerShell 3.0 4. SMB 3.0 • AD DS on Hyper-V 5. ストレージ • Dynamic Access Control 6. スケールアウトファイルサーバー 7. Hyper-V 8. VDI 9. DirectAccess 10. IIS 8.0 11. IPAM 13. Active Directory Domain Service Server Manager Modern UI の採用 • 規定ではログオンするとサー バーマネージャーが起動 • 管理ツールは「ツール」メ ニューから起動 複数サーバーの管理 • ダッシュボードによる 視認性の向上 複数サーバーの管理 • 表示にアクションを直結 6 複数サーバーの管理 • 複数サーバーのサービスを同時に操作 複数サーバーの管理 • カスタム サーバーグループの作成 複数サーバーの管理 • フィルター 役割や機能の追加 • ローカルサーバー • リモートサーバ(含 Server Core) • オフライン VHD PowerShell でサーバーマネージャーの処理を自動化 • 2300 以上のコマンドレット • コマンドレットの検索機能 • IntelliSense ユーザーインターフェースオプション の追加 ユーザーインターフェースの変更 Windows Server 2012 では3段階のインストールオプションが用意されている: • Server Core •従来からの Server Core • 最少インストールシェル (“MinShell”) •Server Core に加えてサーバーマネージャーなどの限定的なGUI • フルシェル •全てのGUIがインストールされたモード。デスクトップエクスペ リエンスを追加することもできる。 なぜこうなったのか? The challenges… • 攻撃の対象を減らすために、システム管理者は常にパッチの適用に気を使わなけれ ばならない • 多くの管理者にとって Server Core によるコマンドライン操作は不便だった The Windows Server 2012 のソリューション… 複数のインターフェースオプション • リモート管理ツールを使用せずに、システム管理者が使い慣れた GUI で管理 することができる • さまざまなコンポーネントによるサーバー負荷をできる限り低減したい • GUIをインストールするために、OS ごと再インストールするのではなく、機 能の追加や削除で対応できると便利 • GUIによってサーバーのインストールイメージや手順を複数用意するのでは なく、1種類で済ませたい Server Core マイクロソフトの推奨インストール構成 • Server Core は以前と比較して多くの役割や機 能をサポートしている -.Net Framework 4.5 - SQL Server 2012 • WinRM により、リモートからの管理も容易 • Windows PowerShell の利用も可能 • Server Core と MinShell 間の移行が可能 • • • • • • • • • • • • • • • • • • • • .Net Framework 4.5 Active Directory (AD) Active Directory Lightweight Directory Services (ADLDS) Active Directory Certificate Services (ADCS) DHCP Server DNS Server File Services BITS Server BranchCache Hyper-V Internet Information Services (IIS) Printing Services Streaming Media Services iSCSI Load Balancing MPIO qWave Telnet Unix Migration SQL Server 2012 MinShell 最少のGUIをインストールする ためのオプション • GUI ツールを持った Server Core • Server Manager と cmd.exe が規定 で起動する • 他のGUIも起動可能 • 役割や機能の追加も可能(PowerShell からのインストールも可能) MinShell の有効化と無効化 Install-WindowsFeature ServerGui-Mgmt-Infra Install-WindowsFeature ServerGui-Shell Install-WindowsFeature Desktop-Experience Uninstall-WindowsFeature Server-GUI-Shell Uninstall-WindowsFeature Server-GUI-Shell -remove インターフェースの違い Server Core MinShell Server W/GUI Desktop Experience コマンドプロンプト Available Available Available Available Windows PowerShell サーバーマネージャー Available Available Available Available Not Available Available Available Available MMC コントロールパネル Not Available Available Available Available Not Available Not Available Available Available コントロールパネル内 のアプレット Not Available Some Available Available Available Windows Explorer タスクバー Not Available Not Available Available Available Not Available Not Available Available Available 通知エリア Not Available Not Available Available Available Internet Explorer ヘルプ Not Available Not Available Available Available Not Available Not Available Available Available テーマ Not Available Not Available Not Available Available スタートスクリーン Not Available Not Available Not Available Available WinRTアプリ Not Available Not Available Not Available Available メディアプレーヤー Not Available Not Available Not Available Available Windows PowerShell Windows PowerShell とは何か? 分散処理や自動化のためのエンジンであり、スクリプトによるバッチ処理と対話シェルが 用意されている • 自動化によって処理の品質を向上 • 目的ベースのコマンドレット • 管理者と開発者のギャップを埋めるツール PowerShell 3.0 は以下のOSでサポートされている: • Built-in: •Windows Server 2012 •Windows 8 • ダウンロード: •Windows 7 SP1 •Windows Server 2008 SP2 •Windows Server 2008 R2 SP1 スクリプトの実行環境 bat exe VBScript JScript PowerShell エンジン COM Script Engine cmd/ command PowerShell スクリプト Windows Script Host Cscript.exe Wscript.exe C O M Windows .NET Framework Class Library CLR(共通言語ランタイム) マイクロソフト製品と PowerShell の関係 • 製品ごとに専用の”コマンドレット”が用意されている • 多くの管理 GUI は裏でコマンドレットを呼んでいる • インフラ担当者に、各製品への”標準化されたアクセス方法”を提供する Active Directory 管理センター PowerShell コンソール System Center Virtual Machine Manager Active Directory PowerShell コマンドレット Hyper-V PowerShell コマンドレット Active Directory Hyper-V 事前準備 • コンソールの環境設定 • 簡易編集を有効に • エクスプローラー(フォルダー)の環境設定 • 「拡張子を表示しない」を無効に • 実行ポリシーの設定 ※オンプレミスの”署名無しスクリプト”を実行できるようにする PS C:\>Set-ExecutionPolicy RemoteSigned • リモートからの操作を有効にする(リモーティングの有効化) PS C:\>Enable-PSRemoting –force • 必要に応じて自分専用の初期設定ファイルを作成(規定では存在しない) PS C:\>notepad $profile 実行ポリシーの設定~ Set-ExecutionPolicy http://technet.microsoft.com/ja-jp/library/dd347628.aspx “管理者として実行” する必要がある 実行ポリシーの一覧 “ポリシーの設定”は、規定では コンピューター全体に影響する。 適用範囲を制限するには、 Scope も同時に定義する。 Restricted:制限つき (オペレーターモード)(規定値) 対話形式のみ スクリプトは実行できない AllSigned:署名 スクリプトは、信頼された発行元による署名が必要 RemoteSigned:リモートの署名 “インターネットゾーン” のスクリプトは信頼された発行元による署名が必要 Unrestricted:無制限 すべてのスクリプトを実行可能 リモートのスクリプトについては常に警告 Bypass:バイパス 何もブロックされず警告も表示されない 基本操作 ~ コマンドレット情報を取得する • 使用可能なコマンドレット一覧を取得する PS C:\> Get-Command • “Storage” という文字列を含むコマンドレットの一覧 PS C:\> Get-Command *-vm* -CommandType Cmdlet • 特定のモジュール内のコマンドレット一覧 PS C:\> Get-Command -Module Hyper-V • コマンドレットの書式 PS C:\> Get-Help <コマンドレット> -detailed PS C:\> Get-Help Move-VM -detailed unix のあのコマンドは? ls cp grep sort man clear cat kill tee tail → get-ChildItem → copy-Object → select-String → sort-Object → help → clear-Host → get-Content → stop-Process → tee-Object → get-Content 「アレはあるかな?」と思ったら Get-Alias <unix 上のコマンド> IT Pro にとっての Windows PowerShell 3.0 自動化 • ~2,430 コマンドレット (Windows Server 2008/R2 は 230 コマンドレット) • シンプルな書式で習得が容易 • オーサリングツール(PowerShell ISE)の進化 •Intellisense •Snippets •3 rd パーティによる拡張性 •Show-Command ウィンドウ Windows Workflow Foundation との統合 • PowerShell のスキルだけでワークフローを記述 ジョブのスケジューリング • タスクスケジューラーとのシームレスな連携 堅牢なセッション • セッションへの再接続が可能に Show-Command Cmdlet 初心者向けのダイアログボックス • 必要なパラメターはダイアログ から入力可能 • モジュールをフィルタ可能 • コマンドレット名で検索可能 堅牢なPS セッション • リユーザーブルな PS セッションには他のコンピューターから再接続が可能 • State=Disconnected, Availability=None に対してのみ • • Disconnect-PSSession コマンドレットで明に Disconnect した場合 ネットワークの切断や PC のハングアップ等で Disconnected になった場合 ※ コンソールを明に落とした場合は強制終了したものとみなされる • 同時に2台以上のコンピューターからは接続できない State=Disconnected Availability=None Source1 Source2 Disconnect-PSSession Connect-PSSession 再接続可能 セ ッ シ ョ ン Target PS > $S = New-PSSession -ComputerName Target1 PS > $Result = Invoke-Command -Session $S {Get-Service} PC1 PS > Disconnect-PSSession -Session $S Id Name -- ---121 Session121 ComputerName -----------Target1 State ----Disconnected ConfigurationName ----------------Microsoft.PowerShell Availability -----------None Target PS > Get-PSSession -ComputerName Target1 PC2 Id Name -- ---10 Session112 12 Session121 ComputerName State ---------------tfdc01 Disconnected tfdc01 Disconnected ConfigurationName ----------------Microsoft.PowerShell Microsoft.PowerShell Availability -----------Busy None PS > $S = Get-PSSession -Name Session121 -ComputerName Target1 PS > Connect-PSSession -Session $S PowerShell 3.0 - ワークフロー 処理1 処理1 サスペンド checkpoint 処理2 WF パラレル サーバーが条件に 合致しない場合に サスペンドし、あ とでレジューム WF サスペンド 処理2 checkpoint 処理3 WF 結果1 サーバー ダウン 結果ストア ジョブと結果の永続化 ワークフローの作成 • PowerShell ISE(またはテキストエディタ) で作成する • workflow キーワードを使用する workflow <ワークフロー名> ( <引数> ) { <処理> } (例)MyWorkflow という名前でリモートコンピューターのサービス一覧を取得するワークフロー workflow MyWorkflow ( [String] $ServiceName ) { } Get-Service -PSComputerName $PSComputerName -Name $ServiceName (例)実行例 PS C:\>mywf -PSComputerName 127.0.0.1 -ServiceName wuauserv ワークフローの実行からレジュームまで PSワークフローセッションを張る $S = New-PSWorkflowSession -ComputerName DC01 ワークフローをDC01上に作成する Invoke-Command -Session $S -FilePath .\CreateNewUser.ps1 ワークフローが作られたことを確認 Remote Server (DC01) 状態なし Invoke-Command -Session $S {Get-Command -CommandType Workflow} PC ロ ー カ ル ワークフローを実行 Invoke-Command -Session $S {CreateUser -PSPersist $true -ErrorAction SilentlyContinue -AsJob} Running DC01 が停電によりシャットダウン DC01 が復電により再起動 もう一度セッションを張る $S = New-PSWorkflowSession -ComputerName DC01 ジョブIDを確認 Invoke-Command -Session $S { Get-Job } ジョブをレジューム Invoke-Command -Session $S { Resume-Job 3 } Suspended Running Windows PowerShell Web Access WS-Man に接続するためのゲートウェイ Internet Home Intranet DMZ Devices リバー スプロ キシ PSWA PS Session 再接続 Session PC PS Session Server PowerShell Web Access のセットアップ 1.サーバーマネージャーから PowerShell Web Access をインストールする 2.IIS で自己署名証明書を作成してバインドを設定する(SSLを有効に) ご自身のサーバーを指定 してください バインドの設定で 作成した証明書を選択 3. PowerShell を管理者モードで起動 4. 以下のコマンドを実行 PS C:\> Set-ExecutionPolicy RemoteSigned PS C:\> Import-Module PowerShellWebAccess PS C:\> Install-PswaWebApplication -webSiteName "Default Web Site" PS C:\> Add-PswaAuthorizationRule * * * 5. https://<サーバー名>/pswa にアクセス ここで指定するサーバーは、 接続先となるサーバー 権限の委譲 別の権限を使用したワークフローの実行 • 資格情報を作成 ↪ $Cred = Get-Credential –Credential contoso\administrator • ワークフローの RunAsUser プロパティに作成した資格情報をセット ↪ Set-Item WSMan:\localhost\Plugin\Microsoft.Powershell.Workflow\RunAsUser -Value $Cred • WinRM を再起動して権限を有効にする ↪ Restart-Service WinRM • 設定された内容を見る ↪ Get-ChildItem WSMan:localhost\Plugin\Microsoft.Powershell.Workflow Snippets ISE からコードスニペット機能を 使用することができる • [編集]-[スニペット開始] • オリジナルのスニペットを登録 するには New-ISESnippet • 登録したスニペットを参照する には Get-ISESnippet Intellisense コマンドレットやパラメタを自動補完してくれる機能 入力スピードが飛躍的に向上 “-“ (dash) verb(動詞)の後のダッシュ “.” (period) オブジェクトの後にピリオド “::” (double colon) オブジェクトタイプの後にダブルコロン “\” (backslash) プロバイダーの後にエンサイン(バックスラシュ) “ “ (space) コマンドレットの後ろにスペース SMB 3.0 どうしてこうなったのか? スループットが向上することで… • ファイルサーバーは複数のコネクションを同時に使用して、より多くのデータを高速 に転送できる ネットワークフォールトトレンランスにより… • 同時に複数のネットワークコネクションを使用して、クライアントはネットワーク の切断を回避できる 自動構成機能により… • SMB マルチチャネルは自動的にネットワークパスを探索して、必要に応じて動的に ネットワークパスを追加する • 管理コストを低減 NICチーミング & SMB 3.0 マルチチャネル NIC チーミング(最大 32 NIC/Team)を OS 標準でサポート • スイッチ依存(Static or LACP)/ 非依存 • ネットワークフォールトトレランス SMB 3.0 マルチチャネル with RSS • SMB スループット向上 • 1インターフェース(=1NIC)あたり最大 4 TCP/IP Connection • 1セッションあたり 既定で 32 Connection NIC Teaming NIC Teaming NIC RSS NIC SMB コネクション Remote Direct Memory Access) NIC RSS NIC RSS NIC RSS SMB Multi. RSS SWITCH SMB Multi. RSS NIC RSS: Receive-side scaling SMB 3.0 マルチチャネルを使用するための条件 必要条件 • Windows Server 2012 または Windows 8 が動作していること • 少なくとも以下の 1 つの構成が有効であること • 複数のネットワークアダプターを実装している • 少なくとも1 つのネットワークアダプターが RSS (Receive Side Scaling) をサポート • 少なくとも2 つのネットワークアダプターが NIC チーミング構成であること • 少なくとも1 つのネットワークアダプターが RDMA (Remote Direct Memory Access) を サポートしていること SMB マルチチャネルが使用できない構成 • 1枚の RSS 非対応ネットワークアダプターしか実装していない • スピードの異なるネットワークアダプター インストール手順 • Windows Server 2012 と Windows 8 で自動的に有効になる • Windows PowerShell を使用して有効/無効を切り替えられる シングル NIC の場合 CPU CPU CPU CPU 複数 NIC の場合(チーミング無し) CPU CPU CPU CPU 1枚または複数の RDMA NIC の場合 NICチーミング まとめ:マルチチャネル/RDMA/NIC Teaming の比較 スループット NIC Teaming シングル N/A ○ RSS マルチ RDMA シングル マルチ CPU 負荷低減 △△ △ △△ △△ △ ▲ シングル マルチ SMB 以外の フォールト トレランス △ マルチ マルチ SMB フォールト トレランス ○ ▲▲ ▲ ▲▲ ▲▲ ▲ ▲▲ ▲ ▲ ▲ ▲ SMB セッション について NIC インターフェースあたりのコネクション • RSS NIC :(規定値)4 TCP/IP コネクション • RDMA NIC :2 RDMA コネクション • その他のNIC :1 TCP/IP コネクション クライアント―サーバー間のコネクション数は 規定値 32(セッション数は1) Microsoft recommends keeping default settings, but the parameters can be modified SMB マルチチャネルの有効化/無効化 無効にする SMB サーバー側: Set-SmbServerConfiguration -EnableMultiChannel $false SMB クライアント側 Set-SmbClientConfiguration -EnableMultiChannel $false 有効にする SMB サーバー側: Set-SmbServerConfiguration -EnableMultiChannel $true SMB クライアント側: Set-SmbClientConfiguration -EnableMultiChannel $true SMB 関連パラメタの編集 クライアント/サーバー間のコネクション数 Set-SmbClientConfiguration –MaximumConnectionCountPerServer <n> ※規定値 8 RSS NIC のコネクション数 Set-SmbClientConfiguration -ConnectionCountPerRssNetworkInterface <n> RDMA NIC のコネクション数 Set-ItemProperty -Path ` "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" ` ConnectionCountPerRdmaNetworkInterface -Type DWORD -Value <n> –Force それ以外のNICのコネクション数 Set-ItemProperty -Path ` "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" ` ConnectionCountPerNetworkInterface -Type DWORD -Value <n> –Force SMB マルチチャネルの検証手順 1. アダプターの構成を確認する (サーバー、クライアント両方で実 施) Get-NetAdapter Get-NetAdapterRSS Get-NetAdapterRDMA 2. SMB マルチチャネルの構成を確認する SMB クライアント側: Get-SmbClientConfiguration | Select EnableMultichannel Get-SmbClientNetworkInterface SMB サーバー側: Get-SmbServerConfiguration | Select EnableMultichannel Get-SmbServerNetworkInterface 3. SMB 接続を確認する(ファイルのコピー中に実行) Get-SmbConnection Get-SmbMultichannelConnection Get-SmbMultichannelConnection -IncludeNotSelected SMB マルチチャネル関連のイベントログ 1. [イベントビューアー] – [アプリケーションと サービスログ] – [マイクロソフト] – [Windows] – [SMB Client] – [Operational] •Event ID 30700-30705 でフィルタ 2. PowerShell から ~ SMB クライアント Get-WinEvent -LogName Microsoft-Windows-SMBClient/Operational | ? { $_.Id -ge 30700 –and $_.Id –le 30705 } エラーだけ抽出するには Get-WinEvent -LogName Microsoft-Windows-SMBClient/Operational | ? { $_.Id -ge 30700 –and $_.Id –le 30705 –and $_.Level –eq 2 } 記憶域スペースとシンプロビジョニング 記憶域スペースとシンプロビジョニング 記憶域スペース • Windows Server 2012 で実装された新しい仮想記憶域 • 仮想化テクノロジーを使用して低コストでストレージを拡張 • 未使用領域を寄せ集めてプーリング シンプロビジョニング • ジャストインタイムで割り当て、必要なくなれば解放 • 記憶域スペースとの統合 どうしてこうなったのか? 記憶域スペースはストレージの高可用性を生かしたさまざまな用途を想定している 記憶域プール • 小容量のSSDなど、複数のハードディスクを1つに結合 • データの増加に伴い、動的に容量を拡張可能 マルチテナントと柔軟な制御 • ストレージプール単位に管理者を定義することができる • Active Directory のセキュリティモデルと統合されており、ACLによるアクセ ス管理が可能 復元力を備えた記憶域 • 記憶域スペースでは3種類の構成が可能(ストライプ、ミラー、パリティ) • ホットスペアによる自動修復 どうしてこうなったのか?(続き) 継続的な可用性 • フェールオーバークラスターとの連携により継続的で可用性の高いサービスが提供できる 効率的な記憶域の消費 • 複数のビジネスアプリケーションでストレージのキャパシティを共有 • 必要なくなった領域を別のアプリケーションで再利用 シンプルな管理 • サーバーマネージャーからの容易な管理 • リモート管理 • スクリプト(Windows PowerShell)による管理の自動化 • 既存のバックアップ、リストア機能との整合性を維持 記憶域スペースの要件 • Windows Server 2012 がインストールされていること • 記憶域プールの作成用に 1 つの物理ドライブ • 復元性のあるミラー化された記憶域スペースの作成用に 2 つ以上の物理ドライブが必要 • パリティまたは 3 方向ミラーリングによる復元力を備えた記憶域スペースの作成用に 3 つ以上の物 理ドライブが必要 • ドライブは空であり、フォーマットされていないこと • 他のプールに使用されていないこと • ドライブの容量が 10 GB 以上あること • サポートされているドライブタイプ タイプ スタンドアロンファイルサーバー フェールオーバークラスター SATA SCSI iSCSI SAS USB Supported Supported Supported Supported Supported Supported Supported 記憶域スペースの管理アーキテクチャ 記憶域スペースの構造 物理ディスクの代わりにVHD(X)ファイルを使用するには 冗長構成 冗長性の種類 説明 シンプル データが複数の物理ディスクにまたがってストライプ化されま す。これにより、容量が最大限に利用され、スループットが向 上します。 ミラー データが 2 つまたは 3 つの物理ディスクに複製されます。これ により、信頼性が高まり、容量は 50 ~ 66% 減少します。 パリティ データおよびパリティ情報が複数の物理ディスクにまたがって ストライプ化されます。これにより、信頼性が高まり、容量は 13 ~ 33% 減少します。 増加し続けるストレージの使用量と対策 急激なストレージの増加 従来 ハード ディスク ボリュームにある重複したファイルを 管理するファイル システム フィルタ。このフィルタに より、ファイルの 1 つのインスタンスを中央のフォルダ にコピーし、重複したファイルは中央のファイルへのリ ンクに置き換えることにより、ディスクを節約する。 Windows Server 2012 ファイルの重複を削減しつつ、従来通りのアクセスを提 供 Source: IDC Worldwide File-Based Storage 2011-2015 Forecast: Foundation Solutions for Content Delivery, Archiving and Big Data, doc #231910, December 2011 Deduplication のアーキテクチャ Metadata Data Metadata Data ファイル名 属性… ファイル名 属性… Deduplicate Filter Metadata ファイル名 属性… Metadata ファイル名 属性… チャンクストア Deduplication のメリット:容量の節約率 Savings % VHD Library Software Deployment Share General File Share User Home Folder (MyDocs) 0% 20% 40% 60% 80% 100% Source: Sample File Server Production data (12 Servers, 7TB) Deduplication のメリットパフォーマンスへの影響 最適化処理の性能: • 最大 20-35MB/s • 1コアあたり 100GB/h(マルチコアを同時利用可能) Read/Write Access: No impact VHD copy (0.7-1.5x) VHD update (1.3x) Deduplication の留意点 未サポート Boot, System, FAT, ReFS, クラスター共有ボリューム(CSV) ネットワークドライブ 拡張属性を持ったファイル 暗号化されたファイル 32Kb未満のファイル その他 頻繁に変更が加えられるファイルは、最適化プロセスのキャンセルが頻繁に発生するため Deduplication に向いていない。 向いてる • ユーザー用のファイルサーバー • 仮想マシンライブラリ(VHDがオフライン) • ソフトウェア展開用の共有 • SQL Server や Exchange Server のバックアップ 用ボリューム 向いてない • Hyper-V ホスト(VHDがオンライン) • VDI(VHDがオンライン) • WSUS • 動作中の SQL Server や Exchange Server • 1TBを超える(超えそうな)ファイル Windows PowerShell からの管理 さまざまな場面で、SMAPI(Storage Management API) にアクセスするための PowerShell コマンド レットを使用できるため、管理の自動化が容易に可能 PS C:¥> Get-Command *storage* CommandType Name -------------Function Get-StorageJob Function Get-StoragePool Function Get-StorageProvider Function Get-StorageReliabilityCounter Function Get-StorageSetting Function Get-StorageSubSystem Function New-StoragePool Function New-StorageSubsystemVirtualDisk Function Remove-StoragePool Function Reset-StorageReliabilityCounter Function Set-StoragePool Function Set-StorageSetting Function Set-StorageSubSystem Function Update-HostStorageCache Function Update-StorageProviderCache Cmdlet Add-VMStoragePath Cmdlet Get-VMStoragePath Cmdlet Move-VMStorage Cmdlet Remove-VMStoragePath ModuleName ---------Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Storage Hyper-V Hyper-V Hyper-V Hyper-V スケールアウトファイルサーバー ファイルサーバーの構成イメージ 共有 共有 共有 共有 共有 データ データ データ 2種類の ファイルサーバーシナリオ IW ワーカー用の共有ファイル サービスおよび記憶域サービス 通常のファイルサーバー 汎用ファイルサーバー (フェールオーバークラスター) アプリケーション ワークロード用のファイル サービスおよび記憶域サービス スケールアウトファイルサーバー(フェールオーバークラスター) サーバー アプリケーションのデータ格納用にファイル サーバー共有を使用 (基本的に SQL Server、Hyper-V 用) • 高価な SAN 接続のコスト削減。 • 記憶域管理者が、各アプリケーション サーバーをオンラインにするための LUN を準備する必要がなく なり、アプリケーション サーバーが各記憶域にアクセスできるようにファブリックを再構成する必要も なくなるため、記憶域管理コストが削減される。 • モビリティが向上し、記憶域の再構成なしでアプリケーションを任意の利用可能なサーバー上で起動で きる。 スケールアウト ファイルサーバーとは ファイル サーバーをサーバーアプリケーションのデータストアに提供 ・Hyper-V(ゲストOS、スナップショットの格納先として) ・SQL Server(データストアとして) フェールオーバークラスターにより動的にファイルサービスの拡大や縮小が可能 CSV File System (CSVFS) • 単一の永続的な名前空間(DNN)を提供 し、NTFS をカプセルする • スパースファイルを含めたデータファイ ルへのダイレクトアクセス • BitLocker暗号化をサポート • リダイレクトIOを使用せずにスナップ ショットやバックアップが可能 • SMB 3.0 との密接な連携 SMB 3.0 • SMB スケールアウト • SMB 透過フェールオーバー • SMB マルチチャネル • SMB ダイレクト(RDMA) • サーバーアプリ用の SMB パフォーマンスカ ウンター • パフォーマンスの向上 • Windows PowerShell からの管理 • SMB リモート記憶域 なぜこうなったのか? 現状 • Windows Server 2008 R2 時代から, 高可用性ファイルサービスはフェールオー バークラスターの CAP(クライアントアクセスポイント)によって提供されてい た。これによって、クライアントは物理ディスク上の SMB 共有や NFS 共有に アクセスできる • ファイルサーバーグループの1つのノードだけがオンラインになる • 障害が発生したり、ファイルサーバーが別のノードに移動した場合、クライアン トは切断され、移動先のノードに再接続しなければならない ソリューション • ファイルサーバー役割が拡張され、Windows Server 2012 フェールオーバー クラスター上では、可用性の高い SMB 共有上での Hyper-V や SQL Server データストアがサポートされた。これにより、ダウンタイムを最小限に抑える ことができる。 高可用性ファイルサーバー 一般的な用途のファイルサーバー(汎用ファイルサーバー) •Windows Server 2008 R2 とほぼ同等の機能 •SMB 3.0 によって”共有”の可用性と転送性能は高まる スケールアウトファイルサーバー •アプリケーションデータを格納するファイルサーバーとしての可用性を提供 •ノードやディスクの追加時にもファイルサービスを停止させない •Windows Server 2012 フェールオーバークラスターの新機能を使用している •分散ネットワーク名(Distributed Network Name: DNN) •クラスター共有ボリューム(CSV) Version 2 •スケールアウトフィルサーバーの役割 (すべてのノードで有効に設定されている必要あり) •スケールアウトファイルサーバーの最大ノード数は 4 (復習)CSV(Cluster-Shared Volume)とは CSV CSV スケールアウト ファイルサーバー Failover Cluster(max 4 nodes) iSCSI/SAN Hyper-V & フェールオーバークラスター & スケールアウトファイルサーバー Failover Cluster(max 64 nodes) Hyper-V Hyper-V Hyper-V \\Server\Share Failover Cluster(max 8 nodes) iSCSI/SAN Hyper-V Hyper-V スケールアウトファイルサーバーのアーキテクチャ HAFileServer iSCSI/SAN DNNが書き換わるタイミング Witness(立会人)の役割 なぜ“アプリケーションサーバー用” と言われるのか? 実データの管理情報) • 作成日時 • 更新日時 • 作成者 • アクセス権限 • 実データのアドレス など 書き込むデータ CSVFS NTFS 汎用ファイル サーバー 頻繁にファイルを開いて閉じる操作を行うユー ザーまたはアプリケーションによる使用を目的 として共有されているファイルの可用性を高め ることができます。 一度に 1 つのクラスター ノードを実行します。 スケールアウト ファイル サーバー 長時間ファイルを開いたままにするアプリケー ションまたは仮想マシンの記憶域の可用性を高 めることができます。 一度に複数のクラスター ノードを実行します。 サーバー メッセージ ブロック (SMB) クライア ント接続は、スループットを向上するために複 数のノードに分散されます。この接続には、 Windows Server 2012 の分散ネットワーク名 と呼ばれるフェールオーバー クラスタリング機 能が使用されます。この機能を使用すると、複 数の IP アドレスを持つ複数のクラスター ノー ドで、DNS ラウンド ロビンを使用して同じネッ トワーク名に応答できます。 クラスター化共有ボリューム(CSV)を使用す クラスター化共有ボリューム(CSV)を使用す ることはできません。 る必要があります。 アクティブ/パッシブ モデルを使用して、一度に アクティブ/アクティブ モデルを使用して、複数 1 つ のノードでファイル サーバーを実行します。 のノードでファイル サーバーを連携して実行し 必要に応じて、他のノードでファイル サーバー ます。 を実行できます。 従来機能との互換性 テクノロジ 汎用ファイル サーバー スケールアウト ファイル サーバー SMB Network File System (NFS) BranchCache データ重複除去 DFS 名前空間 - 名前空間サーバー サポート サポート サポート サポート サポート サポート サポートなし サポートなし サポートなし サポートなし DFS 名前空間 – フォルダー ターゲット サポート サポート DFS レプリケーション サポート ファイル サーバー リソース マネー ジャーのクォータ、スクリーン処理、 サポート およびレポート サポートなし ファイル分類インフラストラクチャ サポートなし サポート ファイル サーバー ボリューム シャド サポート ウ コピー サービス (VSS) エージェント フォルダー リダイレクト サポート オフライン ファイル サポート サポートなし サポート サポート サポート Windows Server 2012 Storage Space と CSV の互換性 Hyper-V Windows Server 2012 で何が進化したのか Hyper-V のスケーラビリティ Hyper-V のスケーラビリティ 最大値 Windows Server 2008 R2 Windows Server 2012 前バージョンとの比較 64 320 5x 物理メモリ 1 TB 4 TB 4x 仮想プロセッサ 512 2,048 4x 4 64 16x 64 GB 1 TB 16x 1サーバーあたりの アクティブな仮想マシン 384 1,024 2.7x ノード数 16 64 4x 1,000 4,000 4x System Resource 論理プロセッサ数 物理ホスト 仮想マシンあたりの 仮想プロセッサ数 仮想マシン クラスター 仮想マシンあたりのメモリ 仮想マシン数 Virtual NUMA NUMA: Non-Uniform Memory Access 仮想 NUMA ノード • ダイナミックメモリと同時利用はできない • SQL Server などのアプリケーションサーバー のパフォーマンス向上 • Windows Server 2012 フェールオーバーク ラスタリングとの連携 SR-IOV(Single Root I/O Virtualization) 仮想スイッチをバイパスして、NICと仮想マシンが直接通信 Host Root Partition Hyper-V Switch Virtual Machine Virtual NIC Routing VLAN Filtering Data Copy Physical NIC Network I/O path without SRIOV Host Root Partition Hyper-V Switch Virtual Machine Virtual Function Routing VLAN Filtering Data Copy SR-IOV Physical NIC Network I/O path with SRIOV Hyper-V over SMB & Shared-Nothing Live Migration いまさらですが... 物理マシン vs 仮想マシン 物理マシン リソースは固定 仮想マシン リソースの柔軟な割り当て 仮想マシンをさらに柔軟にするには network 物理マシン 仮想マシン Compute と Storage は一体 Compute と Storage の分離 Hyper-V over SMB Server Message Block (SMB) プロトコルとは… • ネットワークファイル共有のためのプロトコル • Windows Server 2012 には最新の SMB 3.0 が実装されている Windows Server 2012 Hyper-V とともに使用すると… • • • • 仮想マシンのストレージを、共有フォルダに配置できる(SMB 3.0 必須) スタンドアロン 、クラスターいずれにも対応 記憶域として、スケールアウトファイルサーバーの利用も可能 SMB マルチチャネルにより通信経路の堅牢性が向上 Hyper-V over SMB Hyper-V over SMB の必須要件 • ファイルサーバー :Windows Server 2012(SMB 3.0 が必要なため) ※ SMB 2.0 でも構成時にはエラーとはならないが未サポート • Hyper-V :Windows Server 2012(SMB 3.0 が必要なため) ※ SMB 2.0 でも構成時にはエラーとはならないが未サポート ※ Hyper-Vサーバーとファイルサーバーは別々のサーバーでなければならない • AD DS :Windows Server 2012 である必要はない ※ 共有フォルダに Hyper-V コンピュータのコンピューターアカウントに対する アクセス権を与える必要があるため、AD DS 環境は必須 \\Server\Share\xxx.vhdx Hyper-V ライブマイグレーション & ライブ ストレージ マイグレーション • サービスを止めずに移動できる 仮想 OS のみ 仮想ストレージのみ 仮想マシン全体 従来のライブ マイグレーション 構成情報 メモリ内データ VMステート シェアード ナシング ライブマイグレーション 構成情報 メモリ内データ VMステート \\Server\Share\xxx.vhdx ⑨ arp ライブ”ストレージ”マイグレーション 移動 ライブストレージマイグレーション はこんな時にも便利 仮想マシンのすべてのデータを1か所に移動する ITCAMPPCxx 192.168.210.xx 記憶域を移行 ITCAMPPCxx 192.168.210.xx Hyper-V Hyper-V VMxx SMB 3.0 SMB 3.0 スナップ ショット \\ITCAMP-FS\VMSTORE\VMxx VMxx.vhd VMxx C:\ProgramData\Microsoft \Windows\Hyper-V 構成 ファイル \\ITCAMP-FS\VMSTORE\\VMxx VMxx.vhd スナップ ショット 構成 ファイル SMBにより自由な移動 が可能に! ∴ネットワークの堅牢 性とスピードが重要 Hyper-V レプリカ Hyper-V レプリカとは? LAN や WAN を通じてリモートサイトに仮想マシンレベルの複製を作成することができる。 ビジネスの継続性とディザスタリカバリが目的。 • Windows Server 2012 Hyper-V ロールの新機能 • ストレージやワークロードに依存しない • 複製元と複製先のサーバーは同じドメインである必要はない (ワークグループでもOK ※ただしクラスター構成である場合を除く) • Hyper-V マネージャー、Hyper-V RSAT、System Center Virtual Machine Manager (SCVMM) から管理可能 • さまざまな複製シナリオに対応 • 本社と支店 • 企業内データセンター内 • ホスティングプロバイダー内 • クロスプレミス(企業オフィス-データセンター 等) 必須要件 Windows Server 2012 Hyper-V をサポートしているハードウェア 仮想マシンをホストするのに十分な性能と安全性を持ったストレージ プライマリサイトとレプリカサイト間の接続性 サイト間の複製を許可するための適切な Firewall 設定 (HTTP/HTTPS) • X.509v3 証明書(証明書ベースの認証を使用する場合) ※複製を暗号化するには証明書ベースの認証が必須 詳細は… http://blogs.technet.com/b/virtualization/archive/2012/03/13/hyper-vreplica-certificate-requirements.aspx • • • • (参考)アーキテクチャ Hyper-V クラスター (復習)シェアード ナシング ライブマイグレーション 構成情報 メモリ内データ VMステート \\Server\Share\xxx.vhdx Hyper-V over SMB の難点 シェアード ナシング ライブマイグレーション +フェールオーバークラスター 構成情報 メモリ内データ VMステート \\Server\Share\xxx.vhdx Hyper-V & フェールオーバークラスター “Hyper-V over SMB” & フェールオーバークラスター Failover Cluster(max 64 nodes) Hyper-V Hyper-V Hyper-V Hyper-V \\ITCAMP-FS\VMStore ITCAMP-FS 192.168.210.30 VMSTORE VHD VHD VHD Hyper-V Hyper-V over SMB & フェールオーバークラスター & スケールアウトファイルサーバー Failover Cluster(max 64 nodes) Hyper-V Hyper-V Hyper-V \\FileServer\Share Failover Cluster(max 4 nodes) iSCSI/SAN Hyper-V Hyper-V メリット Failover Cluster(max 64 nodes) Hyper-V Hyper-V Hyper-V Hyper-V Hyper-V Hyper-VとStorageを分離 \\FileServer\Share Failover Cluster(max 4 nodes) iSCSI/SAN VDI シナリオ:自分の PC から社内デスクトップへ キーワード:VDI, App-V, UE-V, Office 365 AD Hello Virtual Desktop Infrastructure アプリ配信 Lync ConfigMgr, Endpoint Protection, グループポリシー Office 365 Gateway File Server Hyper-V & RDS リモート デスクトップ クライアント Firewall リモート デスクトップ クライアント 117 VDI = Desktop を構成する3要素 + 1 Desktop Microsoft VDI を支えるテクノロジー Infrastructure Management • • • 仮想クライアントの展開 仮想アプリケーションの展開 ユーザー管理 OS の仮想化 アプリケーションの仮想化 仮想クライアントのホスティン グ App-V RemoteApp ユーザー状態の仮想化 RDS Hyper-V 移動プロファイル プロファイルディス ク UE-V Windows Server Active Directory Domain Service OS の仮想化 3 タイプの OS Virtualization Powered by Windows Server 2012 セッションホスト 共用仮想マシン パーソナル仮想マシン Architecture 選択基準 Sessions Good Better Best パーソナライズ アプリケーション互換性 管理のしやすさ コスト効率 Pooled VMs Personal VMs OS の仮想化を支えるテクノロジー Hyper-V + Storage • SMB 3.0, NIC Teaming • Hyper-V over SMB • Live Migration, Live Storage Migration • Hyper-V Cluster( Failover Cluster) • Scale-out File Server(Failover clustered file server) RDS(Remote Desktop Services) • WEB Access • Connection Broker • Gateway • License Service • Session Host/VM Host Remote Desktop Services セッション ホスト(RDSH) Remote Desktop Service 共有 or パーソナル仮想マシン RDS RDS RDS Remote Desktop Service SSL SSL RDP SSL ポータル アクセス 承認 アクセス 制御 「切断」と「ログオフ」の違い • ログオフ • 切断 :セッションは初期化される :セッション状態を維持することで、再接続が可能 アイドルタイムによる自動切断、切断されたセッションの維持時間などを、 コレクション単位で設定可能 RD Gateway によるアクセス承認 可用性 Web farm Remote Desktop Connection Broker Active/Active Remote Desktop Web Access Web farm 後述 Hyper-V cluster 仮想化ホスト SQL Server Clustering セッションホスト farm Remote Desktop Licensing Remote Desktop Gateway Cluster Application の仮想化 アプリケーションの仮想化 • 2種類の配信方法 • 異なるバージョンを同時に利用可能 RemoteApp • • リモートデスクトップ方式 サーバーまたは仮想マシンに インストールされているアプ リケーションを公開 RDP App-V • • ストリーミング方式 クライアントで実行 HTTPS RemoteApp によるアプリケーションの公開 セッション ベースに対応していない RD Web ポータルと Web フィード • アプリケーションリストをRSSフィードとして公開 https://<ServerName>/RDWEB/Feed/WebFeed.aspx User State の仮想化 ユーザープロファイルディスク • • • • OSとは独立した仮想 VHD ファイル 中身はユーザープロファイルフォルダ コレクション単位に管理される コレクション間の共有は不可能 ユーザー1 OS ユーザー1 ユーザー2 ユーザー2 ユーザー3 ユーザー3 セッションベース 仮想デスクトップのロール バックとユーザー プロファイル ディスク ロールバック ユーザーのログオフ時に仮想マシンが初期化される ユーザープロファイルディスク ユーザー個別の環境が「独立した仮想 HDD として」保存される RemoteApp で保存したデータは どこに? • 規定 RemoteApp サーバーの C:\Users 配下にテンポラ リのプロファイルフォルダが作成される ユーザーがログオフするとプロファイルフォルダは 削除される プロファイルフォルダ内に保存したデータは、次回 ログオン時に再利用できない • プロファイルディスクを設定 プロファイルディスクの保存先として設定したパス に、仮想ハードディスクとして保存される。 次回ログオン時にマウントされるため、保存した データを再利用可能 ユーザーステートの仮想化 ~ UE(User Experience)-V きめ細かなローミング設定が行える アプリケーション IE Office LOB others Settings Location Template Group Policy UE-V Agent Windows 8 Windows 7 SP1 Windows Server 2008 R2 SP1 Windows Server 2012 設定情報 規定はホーム ディレクトリ AD DS 共有 フォルダ UX を向上させるために - RemoteFX RemoteFX • 仮想GPU(vGPU)※ RemoteFX 対応ビデオアダプタが必須 サーバーに実装された GPU を Hyper-V 上の仮想デスクトップから利用する Hyper-V ホストが SLAT に対応していること Hyper-V ホストが DirectX 11 対応のビデオカードを実装していること RDP 7.1 以上に対応したリモートデスクトップクライアントを使用していること VRAM 1MB あたり約 16500 ピクセル 1920*1200 で約 150MB のビデオメモリを消費(シングルモニタの場合) • USB デバイスリダイレクション ※Windows 7 仮想マシンには RemoteFX 対応ビデオアダプタ必須 ローカルPCに接続されたUSBデバイスを仮想デスクトップにリダイレクトして利用する RD 仮想化ホスト、RD セッションホスト(WS2012)の両方で利用可能 Windows 8 仮想マシンには RemoteFX 対応ビデオアダプタは必要ない グループポリシーで使用を許可する必要がある(規定では無効) • アダプティブグラフィックス ネットワークの品質に応じてマルチメディアデータを最適化する • WAN 対応 マルチトランスポート(自動的にUDPを使用) ストリーミングの最適化 • マルチタッチ対応 デバイスのリダイレクト機能について • RemoteFX でリダイレクトするのは USB デバイス(ドライブ以外) • その他のデバイスは RDP によって独自に制御される • RDP 8.0 では RDP セッション使用中のデバイス接続/切断が可能 USB メモリ、ハードディスク USB CD/DVD ドライブ USB プリンタ(印刷機能) USB 複合機、スキャナ USB WEBカメラ USB ガジェット パラレルポート プリンタ ネットワークプリンター オーディオ再生 オーディオ録音 Easy Print とは • RDP 6.1 以降で利用可能 • サーバー側にプリンタードライバーがインストールされていなくても印刷が可能 • サーバーで生成した XPS 形式ドキュメントを、クライアントにリダイレクトすることによってク ライアント側プリンタドライバーを使用する。 • (注意)スケーリング機能(拡大縮小)には対応していない XPS Spool EMF Spool (参考)EasyPrint でのスケーリング機能の非対応について http://blogs.technet.com/b/askcorejp/archive/2011/08/03/scaling-feature-has-not-supported-from-windows-server-2008-r2-sp1.aspx 144 リモート デスクトップ クライアント OS RDP 6.1 RDP 7.0 RDP 7.1 RDP 8.0 XP SP2 Vista SP1 XP SP3 Vista SP1, SP2 7 7 SP1 8 マルチモニタ 解像度固定 解像度任意 ← ← RemoteApp ○ 7:RSS Feed 対応 ← ← EasyPrint ○ ← ← ← PnPデバイスリダイレクト ○ ← ← ← RD Gateway 対応 ○ ← ← ← RD Web アクセス ○ SSO 対応 ← ← ○ DirectX 11対応 RDP 接続時にデバイス 接続、切断 途中接続、切断 RemoteFX 仮想 GPU RemoteFX USB リダイレクト アダプティブグラフィクス ○ ネットワーク品質の自動検出 ○ マルチタッチ対応 ○ UDP 対応 ○ リモートデスクトップ サービスのプロファイルパス を設定したらどうなるか ログオン時に、プロファイルフォルダか らプロファイルディスクにコピー 利用中はプロファ イルディスクが更 新される ログオフ時に、プロファイル フォルダに書き戻し プロファイルディスク リモートデスクトップサービ スのプロファイルフォルダ DirectAccess シナリオ:社内デバイスをもちあるきたい キーワード: DirectAccess、BitLocker、RMS、Lync Hello Office 365 Lync Active Directory Exchange Server SharePoint Server 各種業務サーバー ファイル サーバー Firewall SkyDrive DirectAccess BitLocker/BitLocker To Go 148 DirectAccess DirectAccess により、インターネットから社内ネットワークにシームレスに接続することが可能 Exchange SharePoint Apps Intranet End User: Great Experience 生産性の向上 ユーザーの操作 無しで接続を確 立 FIREWALL VPN Win XP / Vista / Non-Windows Mobile Broadband DirectAccess Windows 7 Windows 8 VPN はネットワークに接続する DirectAccess はネットワークを拡張する IT: どこからでも管理 リモートクライアン トを発見 更新プログラムを確 実に適用 グループポリシーに よる集中管理 従来型 VPN と DirectAccess の違い Windows Server 2012 で DirectAccess はどうなったのか これまで… • DirectAccess と RRAS は同じサーバーに共存できなかった • Direct Access の展開は容易ではなかった •PKIを含め複雑なアーキテクチャを理解しなければならなかった Windows Server 2012 により… • DirectAccess and RRAS の共存 (リモートアクセス ロールに統合) • アーキテクチャの簡素化 • PKI のオプション化 • クライアント認証を Kerberos プロキシサービス経由で行えるようになった • NAT64 と DNS64 を標準でサポート(従来は UAG が必要) • その他 • ロードバランス構成 • 複数ドメイン、複数サイトへの対応 • トークンベースの認証 (OTP:One Time Password)への対応 • 強制トンネリング(すべての通信を強制的に社内に誘導) • Windows PowerShell を使用した管理 • ユーザーとサーバーの正常性監視 DirectAccess サーバーの要件 • Active Directory ドメインのメンバーであり、ドメインコントローラーと通信できること もし構成時にドメインに参加していないことが検出されると、強制的にドメイン参加のプ ロセスが開始される(再起動要) • DirectAccess の構成は、ローカルコンピューターの管理者権限を持ったドメインユーザーでな ければならない。また以下の要件を満たしている必要がある。 ドメインの Account Operators グループのメンバー Domain Admins グループのメンバー Enterprise Admins グループのメンバー • サーバーで IPv6 および IPv6 移行テクノロジーが有効であること • サーバーで IP ヘルパー サービス が起動していること • サーバーで Windows Firewall が正常に稼働していること (無効にすると接続セキュリティ規則が処理できないため動作しない) • ネットワークカードがネットワークに接続され、正常に稼働していること その他の要件 クライアント • OSとして以下が稼働していること Windows 7 または Windows 8 Windows Server 2008 R2 または Windows Server 2012 • Active Directory ドメインのメンバーであること Active Directory ドメインコントローラー • IPv6 に対応したドメインコントローラー Windows Server 2008 Windows Server 2008 R2 Windows Server 2012 • ドメインおよびフォレストレベルは問わない DNS • 以下のOSで稼働しているDNSサーバー Windows Server 2008 Windows Server 2008 R2 Windows Server 2012 DirectAccess は IPv6 ベースのテクノロジー インターネット 社内ネットワーク DirectAccess Server DirectAccess のネットワークトポロジー Internet DMZ IPv4 or IPv6(インターネット側) 自動構成 社内ネットワーク (IPv6 packets on an HTTPS) IPv4 or IPv6(社内ネットワーク側) IPv6 移行テクノロジー • 6to4 (RFC3056) IPv6 パケットを IPv4 でカプセル化するテクノロジー • Teredo(RFC4380) IPv6 と IPv4 をリレーするテクノロジー リレー用に2つの連続したパブリックIPv4アドレスを持ったNICが必要 Windows Server 2012 + Windows 8 では使用されなくなった • IP-HTTPS(RFC1945, RFC2616, RFC2818) IPv6 パケットを IPv4 HTTPS でカプセル化するテクノロジー DirectAccess では、IPv6 をIPSecで暗号化し、さらに HTTPS により暗号化しているため、 コンバージョンの負荷が高い • ISATAP(Intra-Site Automatic Tunnel Addressing Protocol) IPv4 網内にある IPv6ホスト同士が通信を行うためのトンネリングテクノロジー クライアント側アプリケーションは IPv6 対応でなければならない Application 企業内 Firewall に必要な設定 Dist. IP 50 Dist. UDP 500 Dist. IP 41 Dist. TCP 443 HTTPS ベースの Kerberos Proxy Windows Server 2012 DirectAccess では、PKI の展開はオプションとなり構成管理がシン プルになった 1. クライアントの認証リクエストが DirectAccessサーバーのKerberos プロキシーに送られる 2. Kerberos プロキシは、Kerberos 関連リクエストをクライアントに代わってドメインコント ローラーに転送。認証が完了すると内部の業務サーバーとの通信が可能になる。 Internet マルチサイト構成 Manage-Out のサポート ネットワークロードバランス構成 強制トンネリング 名前解決ポリシーテーブル(NRPT) DNS 名前空間ごとに「使用する DNS サーバーを決定するポリシー」定義できる機能 ポリシールールに存在しない名前空間は、NICで定義されたDNSサーバーに問い合わせる インターネットトラフィックとイントラネットトラフィックの分離を実現するために、Windows 7/Windows Server 2008 R2 から導入された DirectAccess によりインターネットのクライアントは社内 DNS を使用できる ネットワーク ロケーション サーバー(NLS) • クライアントがイントラネットに直接接続されている場合のみアクセス可能な HTTPS サーバー • DirectAccess クライアントが接続を試みて、正常に WEB ページを取得できた場合には、クライ アントはイントラネット上に存在すると判断される • イントラネット上のクライアントであると認識されると、DirectAccess サーバーは使用しない • NLS が正しく動作していないとイントラネットかインターネットかの判別が行えないので、高可用 性化することが推奨される NRPT による NLS の除外 NLS がインターネットから名前解決できてしまうと、インターネット上のクライアントはイントラ ネットに存在すると判断されてしまうため、DirectAccess が使用できなくなる。そのため、NLS は NRPT の除外規則によって名前解決ができないようにしておく必要がある オフライン ドメイン ジョイン • プロビジョン用ファイルを使用し、ドメインコントローラと通信できない状態でドメインに参 加する手法 • Windows Server 2012 では DirectAccessに必要なグループポリシー設定を埋め込むことがで きるため、インターネット上でオフラインドメインジョインすることができる リモートアクセスを構成するコンポーネント • リモートアクセス ┣ DirectAccess および VPN(RAS) ┗ ルーティング WEB サーバー(IIS) ┣ WEB サーバー ┣ HTTP 共通機能 ┃┣ HTTP エラー ┃┣ディレクトリの参照 ┃┣ 既定のドキュメント ┃┗ 静的なコンテンツ ┣ セキュリティ ┃┣ 要求フィルター ┃┗ IP およびドメインの制限 ┣ パフォーマンス ┃┗ 静的なコンテンツの圧縮 ┗ 状態と診断 ┗ HTTP ログ • 管理ツール • つづき • • • • RAS 接続マネージャー管理キット(CMAK) グループポリシーの管理 Windows Internal Database リモートサーバー管理ツール ┗ 役割管理ツール ┗ リモートアクセス管理ツール ┣ Windows PowerShell 用リモートアクセスモジュール ┗ リモートアクセスGUIツールとコマンドラインツール IIS 8.0 の管理性向上 IIS 8.0 で導入された新テクノロジー • • • • • • • • NUMA対応 Server Name Indication SSL 証明書の集中管理 IIS CPU スロットリング Application initialization 動的 IP 制限 FTP ログオンの試行制限 オープンスタンダードのサポート •Web Socket Protocol(ASP.NET 4.5) •ASP 3.5 と 4.5 の同時サポート WEB サーバーのスケーラビリティ • • • • • NUMA 対応によるハードウェア性能向上に伴うアプリケーション性能向上 SNI によるホスティングやクラウドにおける SSL サイトのスケールアウト 証明書を共有フォルダで集中管理し、オンデマンドで証明書をロード SSL バインディング管理の簡素化 CPU スロットリングによるロードバランシング、SLA 対応 NUMA 対応 • NUMA ノードに合わせてワーカープロセスが自動調整されるため、パフォーマンスを最適化す ることができる。 • アプリケーションプールによって対応するため、アプリケーション自身の作りこみは必要無い 効果 • ハードウェアの性能を、アプリケーションの改修 なく享受することができる • プロセッサコアが増えるほど性能向上 可用性 • CPUのメモリアクセス負荷を低減し、アプリケー ションのワークロードをNUMAノードごとに分散 管理性 • アプリケーションプールの設定を変えるだけなの で、特に複雑な仕組みを理解する必要がない アプリケーションプールをNUMA対応にするには SNI(Server Name Indicator: RFC4366)サポート xxx.xxx.xxx.xxx IP=xxx.xxx.xxx.xxx 証明書ストア Cotoso.com HOST=contoso.com 証明書ストア IIS CPU スロットリング 証明書の集中管理 証明書 証明書 IIS www.contoso.com IIS IIS www.contoso.com IIS 証明書 www.Contoso.com.pfx Server Farm Server Farm 証明書の有効期限管理 IIS 管理コンソールから証明書の有効期限を容易に識別できる 有効期限ごとにグルーピング表示 • • • • • • 期限切れ 明日 今週 来週 来月 それ以降 Application Initialization • x applicationHost.config の構成例 Application pool configuration entry: <add name=".NET v4.5" managedRuntimeVersion="v4.0" /> Application configuration entry: <application path="/appinit" applicationPool=".NET v4.5"> アプリケーションレベルの web.config の構成例 <applicationInitialization skipManagedModules="true" > <add initializationPage="/default.aspx" /> </applicationInitialization> 動的 IP 制限 • IIS7 以前では、IPアドレスの静的な制限機能を持っていた • ブロック時には 403.6 Forbidden をクライアントに送信 • 同時要求数、一定時間内の要求の数によって要求元 IPアドレスを動的にフィルタする • IP アドレスだけでなく、 x-forwarded-for による制限も可能 • フィルタが発動した際には以下の対応が可能 • Unauthorized: IIS は HTTP 401 を返す • Forbidden: IIS は HTTP 403 を返す • Not Found: IIS は HTTP 404 を返す • Abort: IIS はコネクションを切断する IP Address Management (IPAM) IP Address Management (IPAM) 企業内ネットワークで使用している IPアドレス空間の集中的な管理、監視、監査 を行うためのフレームワーク • IPアドレス基盤の自動検出 • ドメインコントローラー • DHCP サーバー • DNS サーバー • IP アドレス空間の監視、レポーティグ、管理 • サーバー構成変更の監査とIPアドレス利用の追跡 • DHCP リースとユーザーログオンイベントをベースにした IP address、クライアン トID、ホスト名、ユーザー名による追跡 • DHCP と DNS の集中管理と監視 • • • • サービスの稼働監視 DNS ゾーンの正常性監視 DNS レコードの管理 DHCP のスコープ管理 IPAM のアーキテクチャ IPAM Client WS-Management Win 8 WMI/LDAP/MS-EVEN6 Address Expiry Server Monitoring Server Availability Data-collection tasks Event Collection IPAM Audit Administrators RPC/WMI/MS-EVEN6 IPAM Server Address Utilization IPAM Users WID Server Configuration IPAM MSM Administrators WS2012 Server Discovery IPAM ASM Administrators WCF Role-based access control IPAM Administrators RPC/WMI/SMB/MS-EVEN6/ WS-Management MS-EVEN6 DHCP Server DNS Server DC Server NPS Server WS2012; WS08R2 & SPs; WS8 MS-EVEN6 : Event Log Remoting Protocol Version 6 WID : Windows Internal Database IPAM で管理されるアドレス空間の構造 アドレスブロック アドレス レンジ アドレス ISP や RIR から割り当てられたアドレ ス空間や、社内で取り決めたプライ ベートアドレス空間 ブロックから切り取られた、実際に使用 するアドレス空間の定義。DHCPで定義さ れた空間も検出される。 割り当てられたアドレス。DHCPに よって動的に割り当てられたアドレ スも管理される。 DHCP Failover DHCP Failover 従来 DHCP Failover アドレス空間 未使用 アドレス空間 SCOPE1 SCOPE2 未使用 SCOPE1 SCOPE1 SCOPE2 SCOPE1 SCOPE1 DHCP サーバー1 DHCP サーバー2 DHCP サーバー1 DHCP サーバー2 ロードバランス、フェールオーバー アドレス要求 アドレス要求 Client Client Active Directory Domain Service Consumer Enterprise Windows Azure Active Directory Microsoft Account (Windows Live ID) Microsoft 全製品 Windows 8 Microsoft 全 OS Sync Sync Windows Server Active Directory Metadata Sync HR 他社 IdP ドメインコントローラーの仮想化 仮想 DC の要件 DC 仮想化のメリット • スケーラビリティ • 物理 PC がなくても展開可能 • サーバーのロールバック(スナップショット) • 自動展開のしやすさ • パブリックウラウドへの移行 • 仮想 DC を IaaS に展開 196 仮想 DC の展開 • サーバーマネージャーを使用して • Windows PowerShell を使用して • VHDファイルを所定の手続きでクローン いずれの処理もリモートから行える 197 DCクローンの動作イメージ ①クローン先情 報を埋め込む DC01 ②エクスポート Hyper-V VHD ③インポート DC02 Hyper-V 198 仮想 DC のクローン手順 1. ソース DC で FSMO が起動していないことを確認。起動してい る場合には他の DC に移動。 2. ソース DC をクローン可能な DC として認可する 3. 非互換アプリを調査し CustomDCCloneAllowList.xml を生成 4. 複製先情報を記載した DcCloneConfig.xml ファイルを作成 5. ソース DC をシャットダウン 6. ソース DC を Export 7. ソースを起動 8. Exportしたイメージを新しい仮想マシンとして Import 9. 複製先マシンを起動( DC 間複製が開始される) $SourceDC = "ITCAMP-DC02" $DistDC = "ITCAMP-DC03" $distPDCEmu = "ITCAMP-DC01" $SourceHyperVHost = "ITCAMP-FS" $DistHyperVHost = "ITCAMP-FS" $VMStore = "\\$DistHyperVHost\VMStore" step1 step2 step3 step4 step5 step6 step7 step8 step9 DCクローンを自動化するスクリプト例 DC01 ここから コマンドを実行 DC02 複製 DC03 ITCAMP-FS $ConfirmPreference = "none" Move-ADDirectoryServerOperationMasterRole -Identity $distPDCEmu -OperationMasterRole PDCEmulator Get-ADComputer $SourceDC | %{Add-ADGroupMember -Identity "Cloneable Domain Controllers" -Members $_.samAccountName} Invoke-Command -ComputerName $SourceDC -ScriptBlock { Get-ADDCCloningExcludedApplicationList -GenerateXml -Force } Invoke-Command -ComputerName $SourceDC -ScriptBlock { ` New-ADDCCloneConfigFile -Static -IPv4Address "192.168.210.52" ` -IPv4DNSResolver "192.168.210.50" ` -IPv4SubnetMask "255.255.255.0" ` -IPv4DefaultGateway "192.168.210.254" ` -CloneComputerName "$Args" ` -SiteName "Default-First-Site-Name" } ` -ArgumentList $DistDC Stop-VM -ComputerName $SourceHyperVHost -Name $SourceDC Get-VM -ComputerName $SourceHyperVHost -Name $SourceDC | %{ Export-VM $_ -Path $VMStore} Start-VM -ComputerName $SourceHyperVHost -Name $SourceDC $CFG = (Dir "$VMStore\$SourceDC\Virtual Machines\*.xml").FullName MD \\$DistHyperVHost\F$\$DistDC Import-VM -ComputerName $DistHyperVHost -Path $CFG -GenerateNewId -Copy-VhdDestinationPath F:\$DistDC Get-VM -ComputerName $DistHyperVHost -Name $SourceDC |Where-Object {$_.State -EQ "Off"} | Rename-VM -NewName $DistDC Start-VM -ComputerName $DistHyperVHost -Name $DistDC 200 Step 1: ソースDCでPDCエミュレーターが動作していないことを確認 PDCエミュレーターがインストールされているDCはクローンできない $ConfirmPreference = "none" Move-ADDirectoryServerOperationMasterRole -Identity $distPDCEmu ` -OperationMasterRole PDCEmulator 201 Step 2: ソースDCをクローン可能なDCに設定する Get-ADComputer $SourceDC | %{Add-ADGroupMember ` -Identity "Cloneable Domain Controllers" -Members $_.samAccountName} 複製元となるドメインコン トローラーを Cloneable Domain Controllers のメ ンバーにする 202 Step3.非互換アプリを調査し CustomDCCloneAllowList.xml を生成 Invoke-Command -ComputerName $SourceDC -ScriptBlock { GetADDCCloningExcludedApplicationList -GenerateXml -Force } コマンドレットを実行することで、 C:\Windows\NTDS\CustomDCCloneAllowList.xml ファイルが作成される <AllowList> <Allow> <Name>Active Directory Management Pack Helper Object</Name> <Type>Program</Type> </Allow> <Allow> <Name>System Center Operations Manager 2012 Agent</Name> <Type>Program</Type> </Allow> <Allow> <Name>Microsoft Silverlight</Name> <Type>WoW64Program</Type> </Allow> <Allow> <Name>AdtAgent</Name> <Type>Service</Type> </Allow> <Allow> <Name>HealthService</Name> <Type>Service</Type> </Allow> <Allow> <Name>QWAVE</Name> <Type>Service</Type> </Allow> <Allow> <Name>System Center Management APM</Name> <Type>Service</Type> </Allow> <Allow> <Name>wlidsvc</Name> <Type>Service</Type> </Allow> </AllowList> 203 Step4.複製先情報を記載した DcCloneConfig.xml ファイルを作成 Invoke-Command -ComputerName $SourceDC -ScriptBlock { ` New-ADDCCloneConfigFile -Static -IPv4Address "192.168.210.52" ` -IPv4DNSResolver "192.168.210.50" ` -IPv4SubnetMask "255.255.255.0" ` -IPv4DefaultGateway "192.168.210.254" ` -CloneComputerName "$Args" ` -SiteName "Default-First-Site-Name" } ` -ArgumentList $DistDC すでに作成されていると上書きでいないので注意 204 DcCloneConfig.xml の例 <?xml version="1.0"?> <d3c:DCCloneConfig xmlns:d3c="uri:microsoft.com:schemas:DCCloneConfig"> <ComputerName>ITCAMP-DC03</ComputerName> <SiteName>Default-First-Site-Name</SiteName> <IPSettings> <IPv4Settings> <StaticSettings> <Address>192.168.210.52</Address> <SubnetMask>255.255.255.0</SubnetMask> <DefaultGateway></DefaultGateway> <DNSResolver>192.168.210.50</DNSResolver> <DNSResolver>192.168.210.51</DNSResolver> <DNSResolver></DNSResolver> <DNSResolver></DNSResolver> <PreferredWINSServer></PreferredWINSServer> <AlternateWINSServer></AlternateWINSServer> </StaticSettings> </IPv4Settings> <IPv6Settings> <StaticSettings> <DNSResolver></DNSResolver> <DNSResolver></DNSResolver> <DNSResolver></DNSResolver> <DNSResolver></DNSResolver> </StaticSettings> </IPv6Settings> </IPSettings> </d3c:DCCloneConfig 205 Step 5:ソース DC をシャットダウン Stop-VM -ComputerName $SourceHyperVHost -Name $SourceDC 206 Step 6:ソース DC を Export Get-VM -ComputerName $SourceHyperVHost ` -Name $SourceDC | %{ Export-VM $_ -Path $VMStore} 207 Step7. ソースDCを起動 Start-VM -ComputerName $SourceHyperVHost -Name $SourceDC 複製先のDCは複製元DCと複製を開始するので、事前に起動しておく必要がある。 208 Step 8: Exportしたイメージを新しい仮想マシンとして Import $CFG = (Dir "$VMStore\$SourceDC\Virtual Machines\*.xml").FullName MD \\$DistHyperVHost\F$\$DistDC Import-VM -ComputerName $DistHyperVHost ` -Path $CFG -GenerateNewId -Copy -VhdDestinationPath F:\$DistDC 重要!!インプレースインポート はできない! 209 Step9.複製先マシンを起動 210 仮想 DC 展開の留意点 • 単一障害点にならないこと 少なくとも2台のHyper-V サーバーに1台づつ展開 V-DC V-DC Hyper-V V-DC Hyper-V V-DC Hyper-V 1つのハードウェアの障害が複数のDCに影響を与えないようにすること できるだけ物理的に異なるリージョンに配置すること 可能であれば、少なくとも1台は物理 DC を構築しておくこと 211 • セキュリティ上の考慮点 • できるだけ DC のみの単一機能のサーバーとし、ホスト、ゲストともに Server Core を採用すること V-DC (Server Core) Hyper-V (Server Core) • 必要に応じて RODC を検討すること • VHDファイルの安全性に考慮すること • VHDファイルが含まれるドライブごと暗号化することをお勧め 212 213 214 215 216 • セキュリティ上の考慮点(つづき) • ホストコンピューターは死守すること • 可能であればホストコンピューターは管理用ネットワークのみと通信 を行うように設定されていること • ホストコンピューターはゲストであるDCのドメインに所属させない Sysvol 共有に アタック 1 DC からスタート アップスクリプトを 送り込む V-DC V-DC 3 Hyper-V (domain member) 2 217 • パフォーマンスの考慮点 • Windows Server 2008 の場合約10%の性能減 Measurement Test Physical Virtual Delta Searches/sec Search for common name in base scope (L1) 11508 10276 -10.71% Searches/sec Search for a set of attributes in base scope (L2) 10123 9005 -11.04% Searches/sec Search for all attributes in base scope (L3) 1284 1242 -3.27% Searches/sec Search for common name in subtree scope (L6) 8613 7904 -8.23% Successful binds/sec Successful binds/sec Successful binds/sec Writes/sec Perform fast binds (B1) Perform simple binds (B2) Use NTLM to perform binds (B5) Write multiple attributes (W2) 1438 611 1068 6467 1374 550 1056 5885 -4.45% -9.98% -1.12% -9.00% Adtest.exe 使用 http://www.microsoft.com/en-us/download/details.aspx?id=15275 218 • 展開に関する考慮点 • 差分ディスクは使わないこと 固定 可変 差分 実使用 領域 元の領域 指定領域に達する まで自動拡張 未使用領域 差 分 差 分 差 分 219 • 展開に関する考慮点(続き) • VHDファイルを”単純複製”しないこと • SID の重複 (..かといって ドメインコントローラーでの Sysprep は未サポート) • USN(Update Sequence Number)ロールバック問題 • 起動しているドメインコントローラーを Export しないこと 詳細:http://technet.microsoft.com/en-us/library/ virtual_active_directory_domain_controller_virtualization_hyperv(v=ws.10).aspx 220 詳細解説: Windows Server 2012 仮想 DC は、なぜス ナップショットからのリストアが使えるのか 221 復習 「権限の無い復元」と「権限のある復元」 Non-Authoritative Restore Authoritative Restore 権限の無い復元:障害で動作しなくなったサーバーの回復を目的としている 回復モード バック アップ ①復元 DC1 DC2 DIT 複製 DIT 権限のある復元:削除してしまったオブジェクトの回復を目的としている 回復モード バック アップ ①復元 DC1 DC2 差分複製 DIT DIT ② 復元対象のオブ ジェクトにマーク (権限付け) 222 “正しい復元”にとって重要な 4 つの ID • USN(Update Sequence Number) • オブジェクトが追加、変更、削除されるたびに+1 • ドメインコントローラー個々に管理されている • RID (Relative Identifier) • DC 内オブジェクトの通番. • SID の構成要素 • RID Master の RID Pool によって集中管理されている • Invocation(発動,召喚) ID • DIT のバージョン管理に使用される • Get-ADDomainController で参照可能 • GUID(Globally Unique IDentifier) • サーバー内オブジェクトのID • 恒久的 223 USN とは • • • • • Update Sequence Number オブジェクトを変更、作成、するごとに +1 ドメインコントローラーごとに管理されている ドメインコントローラー間でどこまで複製が完了したかを確認するための番号 ドメインコントローラーに変更が加えられるたびに加算される My USN=200 複製 USN_DC2 = 100 DC1 DIT My USN=100 USN_DC1 = 200 DC1からは USN=200まで 複製完了したと いうこと High Watermark DIT DC2 224 複製の基本動作: High Watermark をベースにした差分複製 HWM My USN=200 複製リクエスト USN_DC1 = 200 複製無し DC1 ユーザー 追加 50人 DIT DIT My USN=250 DC2 複製リクエスト USN_DC1 = 200 USN=201~250 DC1 DIT DIT 250 DC2 225 USN ロールバック問題 My USN=250 DC1 USN_DC1 = 250 DIT DIT DC2 なんらかの原因で USN ロールバックが発生 My USN=200 複製リクエスト USN_DC1 = 250 複製無し DC1 DIT DIT DC2 矛盾 226 ユーザー 追加 50人 My USN=250 複製リクエスト USN_DC1 = 250 複製無し DC1 DIT DIT DC2 矛盾 ユーザー 追加 10人 My USN=260 複製リクエスト USN_DC1 = 250 USN=251~260 DC1 DIT DIT 260 DC2 矛盾 227 USN ロールバックの検知 • 「USN ロールバック」を検知すると、複製は停止する • Windows Server Backup から古い DIT をリストアした場合 • 古い VHD ファイルをリストアした場合 • 古い Export ファイルをインポートした場合 Event ID 2103:Active Directory データベースがサポートされていない 方法で復元されました。Active Directory はこの状態が継続している間、 ユーザーのログオンを処理できません。 USNロールバックが検知されないと、データベース全体に影響を及ぼしてしまう! だから、「検知」されないとならない。 228 Invocation ID • Invocation ID:ディレクトリデータベース(NTDS.DIT)のID • DITのバージョン識別子として扱われる DIT Invocation ID 229 USN ロールバック問題を回避するには • ロールバックを検知し、Invocation ID をリセット(変更)する必要がある • 複製パートナー側に新しいHWMが作成される DC2 が把握している DC1 が把握している DC1(自分自身)の状態 DC1 の状態 USN = 1000 InvocationID = A DC1(A)@USN1000 USNロールバック USN = 500 InvocationID = B ロールバック検知 複製要求 頭から複製 DC1(A)@USN1000 DC1(B)@USN500 新しい HWM DIT変更(USN変更) USN = 600 InvocationID = B 複製要求 差分複製 DC1(A)@USN1000 DC1(B)@USN600 230 旧バージョンでのスナップショットによるUSNロールバック スナップショットをリストアした場合には、USN ロールバックが検知されない Create Snapshot • TIME: T2 • • +100 users rollback added USN はDC2に反映されない→50ユーザーが複製されてしまう USN:are 200either on one or the other DC All others DC2 receives updates: USNs >100 ID: A RID Pool:=600100 ユーザー(RID 5001000 - 599)は SID 競合 T1 Snapshot Applied! USN: 100 +150 more users created TIME: T4 DC2 receives updates: USNs >200 231 Windows Server 2012 では Hyper-V ホストで VM-Generation ID を管理している • ユニークな 128 ビットの ID • 専用ドライバーによりゲストOSに通知できるようになっている WS 2012 仮想 DC は VM-Generation ID をトラックする • Active Directory database (DIT) に保存 • DIT への変更をコミットする前に、 • “DIT 内部の VM-Generation ID” と “ホストが認識している VM-Generation ID” を比較 • 異なれば DC の invocation ID と RID pool をリセットして から、コミット 同じ操作を、起動時に実行する 仮想 DC DIT Invocation ID VM-Gen ID 比 較 異なっていれば DC の invocation ID と RID pool をリセット してから、コミット VM-Gen ID Hyper-V ホスト 232 Windows Server 2012 ではこうなっている DC2 Timeline of events DC1 TIME: T1 Create Snapshot USN: 100 ID: A savedVMGID: G1 VMGID: G1 +100 users added TIME: T2 USN: 200 ID: A savedVMGID: G1 VMGID: G1 DC1(A)@USN = 200 DC2 receives updates: USNs >100 TIME: T3 T1 Snapshot USN: 100 Applied! ID: A savedVMGID: G1 VMGID: G2 +150 users created: VM generation ID の差異が発生 DC2 again accepts updates: USNs >100 TIME: T4 … missing users replicate back to DC1 USN: 250 ID: B savedVMGID: G2 VMGID: G2 DC1(A)@USN = 200 DC1(B)@USN = 250 USN re-use avoided and USN rollback PREVENTED : all 250 users converge correctly across both DCs 233 結局のところ... 以下の用途には使えないので注意 「作成したユーザーを削除したい」 「変更したユーザーの属性を元に戻したい」 • Authoritative Restore を使用しましょう • または Forefront Identity Manager を使用し、メタデータで管 理しましょう 消してしまったユーザーを復元するには「ゴミ箱」を使いましょう 234 ダイナミックアクセス制御 Dynamic Access Control(DAC) “データガバナンス” へのニーズ 正しいコンプライアンスが必要 CIO 自分のデータが適切に保護されて いるかどうやって監査すればよい のだろう? コンテンツオーナー インフラサポート コンプライアンスに違反しているかどう か心配せずに必要なデータを使用したい どのデータに責任があって、どう やって制御すればよいかわからない Information Worker そうは言っても、複雑な ”データガバナンス” • ファイル単位のアクセス権 • 増え続けるファイル • 管理の分散(コンプライア ンス測定不能) • 暗号化すべきデータの識別 • 膨大なデータ アクセス ポリシー 暗号化 ID管理 監査 • グループメンバーシップの管理 • 増え続けるグループとメンバー 増減への対応 • 複雑なメンバーシップルール • 監査対象データの識別 Windows Server 2012 ダイナミックアクセス制御(DAC) DAC によってそれぞれのテクノロジーを結びつける • アクセスポリシーの 集中管理 • 自動識別と自動暗号化 アクセス ポリシー 暗号化 ID 管理 監査 • 最新のユーザー情報の保持 • 監査ポリシーの集中管理 アクセスコントロールとは • • アクセスコントロール(アクセス制御)とは... ... ユーザーがアクセスしてもよいかどうかを評価するためのプロセス Windows の場合以下の 2 種類 • ACL ベースのアクセスコントロール • Expression ベースのアクセスコントロール アクセス権 アクセス ID 情報 ACL(Access Control List)ベースのアクセスコントロール • リソースにアクセスコントロールエントリ(ACE)を静的に割り当てる • 各 ACE は「OR」で接続される ユーザー ACL ACE ACE Resource ACE ACE ACE Read/Writ e グループ ACE A Read Only AGDLP A G DL P :Account : Global Group : Domain Local Group : Permission ユーザー 組織や役割ごと のグループ ACL ACE Resource ACE ACE “アクセス権”に 合わせて作成さ れたグループ ドメイン ローカル グループ ACE Read Only グローバル グループ グローバル グループ “静的なACL”を動的に管理するための Id プロビジョニングシステム • 「静的」な ACE を「動的」に割り当てる仕組みも存在する • Forefront Identity Manager のダイナミックグループ機能 グループ メタデータ グループ A workflow Expression-Based グループ 通常のグループ Expression-Based グループ RBAC(Role-Based Access Control) ユーザーやグループ単位ではなく”役割”単位でアクセス制御すること ....とはいえ、Windows の場合「役割」を「グループ」として表現するしかない.... 役割(Role:ロール) グループ 権限 公共事業部 マーケティング部所属 PubSec-Marketing 読み取り 公共事業部 営業部 所属 PubSec-Sales 読み取り 公共事業部 課長 PubSec-Managers 読み取り 公共事業部 部長 PubSec-SrManagers 読み取り ・・・・・ グループベース RBAC の限界 • • • • リソースの増加とグループの増加 複雑なメンバーシップ管理(1グループ1人 !?) イレギュラーでダイナミックな組織構造 リソース管理者 ≠ ID 管理者 リソース管理 (リソース管理者) ACL Resource ACE ACE ID 管理(ID 管理者) 連携が必要 A A ACE ACE A A A A ACL Resource A A A A A A Expression-Based Access Control • ユーザー側の属性とリソース側で定義した属性の条件によってアクセスを制御 条件が合致すればアクセス可能 アクセスルール ユーザーCountry = リソース Country ユーザー Department = リソース Department デバイス Owner = “Microsoft” ユーザー属性 デバイス属性 リソース属性 Dynamic Access Control • Expression-Based Access Control... ...利用者とリソースの属性によって動的にアクセスを制御する • ID 管理者は ID のプロビジョニングに対して責任を持つ • リソース管理者は、リソースの属性に対して責任を持つ リソース属性管理 (リソース管理者) 営業部 所 Resource 属 IT部 経理部 ID 管理(ID 管理者) Rules IT部 A 経理部 営業部 A 人事部 A A 企画部 A DAC の想定シナリオ リソースごとに行っていたアクセス制御をエンタープライズレベルで統制 • アクセスポリシー(Central Access Policy)の集中管理 全社コンプライアンスポリシー 組織の認可ポリシー • ファイルアクセス監査ポリシー(Central Audit Policy)の集中管理 • File Classification Infrastructure(FCI)と連携したファイルの自動分類 データの自動分類 社外秘データの自動暗号化 法廷保存期間に沿ったファイルサーバー上のデータの保管 「クレームベースのアクセス制御」とは • • • • 「クレーム」とは「要求」のこと 「要求」を出すのは「リソース(例:ファイルサーバー)側」 ユーザーはリソース側のクレームに合致した属性情報を「トークン」として提示 リソースは受け取ったトークンを解析してアクセス認可を判断 トークンを解析して アクセス認可を判断 ユーザー Name = Junichi Anno Company = MSKK Department = Evangelism Title = Evangelist リソース DAC でのアクセス制御プロセス DAC においては • クレーム = 「分類属性」として定義 • トークン = Kerberos チケットとして AD DS から発行される AD DS Windows Server 2012 必須 ※Kerberosに属性を含める機構が必要 ファイルサーバー ①ログオン ②属性情報を含んだ Kerberos チケット ③ アクセス ユーザー on Windows 8 Name = Junichi Anno Company = MSKK Windows Server 2012/8 必須 ※属性を受信して解 析する機能が必要 チケットとクレームを 照合 RFC 2113 - Kerberos Armoring • Windows Server 2012 Active Directory に実装 Whoami /claims (参考)クライアントが Pre-Windows 8 の場合 Windows 7 以前のクライアントの場合、属性が格納されたKerberosチケットを要求することが できないため、ファイルサーバーがAD DSから属性情報を受け取る Windows Server 2003 以上のドメインレベル ※Service-for-User-to-Self(S4U2Self)機構が必要 AD DS ログオン ファイルサーバー 属性情報を含んだ Kerberos チケット 従来の Kerberos チケット ユーザー on Pre-Windows 8 属性は含まれない Windows Server 2012/8 必須 ※属性を受信して解 析する機能が必要 チケットとクレームを 照合 DAC に必要なすべての情報が DC で集中管理される DAC に必要な情報は3つ • ソース(ユーザーおよびデバイス)の属性情報 • リソースの属性情報(分類属性) • アクセスルール ソース 条件が合致すれば アクセス可能 定義 関連付け リソース DAC によるアクセスポリシー管理の全体像 「Active Directory 管理センター」で作成した「集約型アクセスポリシー」をグループポリ シーオブジェクト(GPO)に結合することでファイルサーバーに適用する ソース (ユーザー) リソース 集約型アクセスポリシー 集約型アクセス規則(ルール) アクセス元の条件と、条件を 満たした時のアクセス権 クレームタイプ (要求の種類) Country Department ターゲットとなるリソースの条件 分類属性とリソー スの条件が合致す ればアクセス権が 与えられる リソース プロパティ リスト リソース プロパティ Country 結合 GPO Department 適用 Active Directory アクセスポリシーの管理は「Active Directory 管理センター」から行う アクセスポリシーはグループポリシーで配信する アクセス権判定の例 ファイルの分類属性 Dept Engineering Sensitivity Hight パーミッションの設定 パーミッションのタイプ 与えられるアクセス権 ターゲットファイル パーミッション Everyone:Full 共有のアクセス権 Engineering FTE Full Engineering Vendor Sales FTE Full Full Central Access Rule 1: Engineering Docs Dept=Engineering Engineering:変更 Everyone: 読み取り Modify Modify Read Rule 2: Sensitive Data Sensitivity=High FTE:変更 Modify None Modify Rule 3: Sales Docs Dept=Sales Sales:変更 NTFSのアクセス権 FTE:変更 Vendors:読み取り アクセス権: [rule ignored – not processed] Modify Read Modify Modify None Read アクセス拒否発生時の速やかな対応 ユーザーがファイル共有にアクセスして”アクセス拒否”が発生した際に、 速やかな問題解決を図るために以下の対応が可能。 • メッセージの送信 to システム管理者 to 共有フォルダーの所有者 • アクセス権取得の要求 グループポリシーおよびファイルサー バーリソースマネジャーで設定 DAC に求められる条件 管理者の管理責任範囲は狭くなるが、管理の精密性が求められる リソース管理者の責任 • コンプライアンスに沿った条件設定 • 状況に応じたダイナミックな設定変更 IT(ID)管理者の責任 • ID 情報の精密性 • 迅速な ID 情報の反映 DAC を支えるテクノロジー • AD DS と FSRM が鍵 FSRM Protocol GPO GLOBAL Classification Attributes A ファイルサーバーリソースマネージャー(FSRM) ファイル サーバーに保存されたデータを管理および分類できるようにするための機能セット • ファイル分類インフラストラクチャ(FCI) • ファイル管理タスク • クォータの管理 • ファイル スクリーンの管理 • 記憶域レポート FSRM Protocol スクリーニング 分類属性の定義 ファイル管理タスク ディレクトリ クオータ 記憶域レポート 拡張機能の登録 Global Resource Property 分類属性 • ファイル/フォルダを分類するための拡張属性 • ローカル属性 • FSRM管理コンソール、または Windows PowerShell で管理 • グローバル属性 • Active Directory のオブジェクトとして定義し、GPO を使用して Schema に反映 • Update-FsrmClassificationPropertyDefinition で属性としてコミット Fsrm protocol グローバルタイプの分類属性 は AD 上に格納されている グローバル 分類属性 • AD DS 側で属性リストを集中管理し、グループポリシーとして配布可能 ※FSRM 側は Windows Server 2012 または Windows 8 AD DS Fsrm protocol ファイルサーバー + ファイルサーバーリソースマネージャー (Windows Server 2012 or Windows 8) PAC (参考)Windows Azure Active Directory Identity Technology の課題 • • • • ROI(投資収益率) が見えずらい アーキテクチャが複雑でエンジニアがいない 導入コストと管理コストが結構大きい “変化”が外部に与える影響が大きい Forefront Identity Manager OTP ldap NTLM radius SM B IRM nis OAuth セキュリティトークン 802.1x 同期 ACL メタディレクトリ SAML WS-Federation Kerberos フェデレーション Nis+ ACS CHAP PIN クレーム認証 Provisioning Active Directory Service for UNIX 統合認証 マルチマスター ACE SCIM パスワード 認可 OpenID ICカード 信頼関係 IdM 信頼関係 証明書 NDS SSO ACE アサーション 2要素認証 OpenID Connect WS-Trust ADSI 267 Windows Azure Active Directory ~2013年4月リリース IdM as a Service • マルチテナント • 認証 HUB(トークンゲートウェイ) • ID ストア External IdP • REST API LIVE 連携 Sync Windows Server Active Directory or Shibboleth or PingFederate Access Control Directory Graph API Windows Azure Auth. Library Active Directory 3rd Party Services Apps in Azure 268 Windows Azure Active Directory definitely not ! Windows Server Active Directory (on premise / on Azure IaaS) 269 CoreIO(Core Infrastructure Optimization) • ID を中心に、すべてのリソースを結合 • End to End のセキュリティポリシー • IdM により関係性が管理されている IdM の役割 Network Devices IdM • Digital Identity の Provisioning • Create Users, Devices, Services • Retrieve(Read) Groups • Update Attributes • Delete • 最新状態の維持 IdM の目的 Digital Identity Data Services • • • • ただしく認証、ただしく認可 適切なアクセス権管理 リソースの保護 セキュリティポリシーの管理 270 従来の ID 管理 ~ Domain-based Identity Management • ドメイン境界内の保護 • ID による企業統制 • セキュリティポリシーの集中管理 ドメイン境界(Firewall) Active Directory ドメイン 271 IdP の乱立問題をどう回避したのか? 回避は........できませんでした... そのかわり...こんな方法で対応してきました 統合認証 同期 認証サーバー 業務 業務 Metadata 業務 業務 業務 272 組織間、企業間連携のニーズ サービス(Service Provider: SP)には、認証と認可がつきもの • ドメインの異なる組織、企業間でサービス連携を行いたい • Active Directory 以外のドメインとの連携 Active Directory ドメイン Active Directory ドメイン 連携 273 パブリッククラウド連携へのニーズ • 企業向け サービス(Service SaaS(Office Provider: 365, GAE, Saleceforce など) SP)には、認証と認可がつきもの • SNS との連携 Web Service Web Service Salesforce.com Web Service office365 Web Service Google.com Web Service Facebook.com Web Service Web Service Outlook.com Active Directory ドメイン 274 新たな課題 IdP(Identity Provider)として • 企業ドメインの ”境界” を超えたリソース利用 • パブリッククラウド上での Identity 管理 SP(RP)として • 複数企業の受け入れ方法(コードを書き換える!?) • テナントごとのアクセス管理 • 受け入れ企業の Digital Identity 管理、保守 • 「パスワード管理なんてやってられっか!」 275 Identity Federation Model • ドメインベースモデルの大いなる拡張! • ドメイン外サービスとの連携 • 認証と認可の分離(IDとリソースが同一ドメイン内でなくてもよい) 認可 認証 同一人物 IdP(CP) PROVES WHO SHE IS SP(RP) CLAIMS WHO AM I? 276 クレーム ベース の認証と認可 IdP :ユーザー認証、デバイス認証を行いトークン(アサーション)を発行 SP :トークンから本人を識別し、ロールを決定してアクセスを認可する クレーム ベースの認証と認可 IdP(認証) 信頼 クレームを格納 ユーザー 情報 トークン トークン SP(認可) 業務 ロール 管理簿 トークンを解析 • 本人識別 • ロール決定 属性ストア 利用者 プロトコルが存在する 277 アクセス権はロールによって決定される • ロールを決定するための「クレーム」は SP が提示する • アプリケーションには「ロール」決定のためのロジックを実装 Token IdP(認証) Claims mail 値 ユーザー 情報 属性ストア SP(認可) 値 name 値 company 値 title 提 示 業務 ロール 管理簿 トークンを解析 • 本人識別 • ロール決定 署名 278 アイデンティティフェデレーションのメリット • ドメイン(Firewall)を超えたリソースの利用 • 以下の2要素が一致しており、相互に信頼関係が成立していれば連携が可能 • プロトコル(SAML 2.0、WS-Federation、WS-Trust)& プロファイル • トークン(アサーション)のフォーマット(SAML 1.1、SAML 2.0) • IdP の違い(認証方式の違い)がアプリケーションに影響しない C 社 IdP B 社 IdP A 社 IdP Security Token Service(STS) SP 側は STS に IdP を登録。STS が IdP の違いを吸収する。 必要なクレームは SP 側が IdP に 提示する。 CRM ロール 管理簿 Domain-Based Identity Management モデルの延長でしかない Active Directory ドメイン トークンの やり取り 業務サービス クラウド上の 業務サービス クラウド上の 業務サービス IdM as a Service CoreIO Network Devices IdM Digital Identity Data Services Windows Azure Active Directory IdM as a Service • マルチテナント • 認証 HUB(トークンゲートウェイ) • ID ストア External IdP • REST API LIVE 連携 Sync Windows Server Active Directory or Shibboleth or PingFederate Access Control Directory Graph API Windows Azure Auth. Library Active Directory 3rd Party Services Apps in Azure 282 WAAD ー Directory Service • ユーザー情報の格納庫 • ユーザー認証 • トークン発行 Directory Service Graph アカウント情報への (REST API) アクセス • ユーザー • グループ • デバイス ID Store Federation Gateway (STS) SAML2.0 WS-Fed OAuth 2.0 Application Web Service SAML 2.0(限定的サポート) WS-Fed STS IdP • • • Windows Server Active Directory Shibboleth PingFederate 283 マルチテナント対応アプリケーションの実現 http://msdn.microsoft.com/en-us/library/windowsazure/dn151789.aspx 284 WAAD ー Directory Service 2要素認証(プレビュー) • Windows Azure Active Directory の追加認証要素として実装 • サービスプロバイダーから透過的 • 携帯電話(スマートフォン)を使用することで認証チャネルを分離 • 現時点では WAAD で認証を行うユーザーにのみ適用可能 • ブラウザ利用のみ Token Directory Service SP Token Access IE ID/Password PhoneFactor # Application Web Service 285 WAAD - Access Control Service • 外部 IdP から SP に対するトークンゲートウェイ • オンプレミス Active Directory との ID フェデレーション OpenID WAAD Application IdP STS Directory Service Oauh 2.0 WS-Fed トークン 変換 WS-Fed SP OAuth Wrap STS IdP WS-Fed をサポートしている IdP Application Access Control Service 286 287 Graph API • API 認可(OAuth 2.0)による情報保護 • RESTful Graph API を使用した Directory へのアクセス • JSON/XML で応答を受信 • API エコノミーを支えるアセット 対称キーや証明書を共有 OAuth 2.0 Endpoint Graph API Endpoint Check Token Request JWT Request w/ JWT Response LOB Windows Azure Active Directory 288 Top-Level Resources Query Results URI (for contoso.com) Top-level resources Returns URI list of the top-level resources for directory https://graph.windows.net/contoso.com/ services (also listed below) Company information Returns company information https://graph.windows.net/contoso.com/Tenant Details Contacts Returns contact information https://graph.windows.net/contoso.com/Contac ts Users Returns user information https://graph.windows.net/contoso.com/Users Groups Returns group data https://graph.windows.net/contoso.com/Groups Roles Returns all roles that have users or groups assigned to them https://graph.windows.net/contoso.com/Roles 289 まとめ IdMaaS は • 企業ドメインの枠を超えて、あらゆる Digital Identity と あらゆ る Service を結び付け、パブリッククラウド上の様々なサービス (API)とともに “API エコノミー” を構成します • 将来、企業のソーシャルグラフとなり、Enterprise Social Network を実現します 290 まとめ IdMaaS は企業組織のソーシャルグラフである Enterprise Social Network Partners IdMaaS 業務 システム IdM Customers Digital Identity Employees 顧客 サービス 291 (参考)Kerberos と Windows について Kerberos の歴史 ~ KDC(Key Distribution Center)の誕生 KDC と各サイト用マスターキー マスターキーDB KDC を使用した間接認証の基本概念 マスターキーDB ②ランダムな暗号化キーを生成 ③キーを暗号化して送付 (いまさらですが)チャレンジレスポンス認 証 Kerberos マスターキーDB TGT(Ticket-Granting Tickets) マスターキーDB マスターキーDB Windows ログオン = PC の利用権を得ること マスターキーDB PCとの共有秘密鍵がPC のマスターキーで暗号化 された状態で含まれる
© Copyright 2024 ExpyDoc