Slide 1

Slide 1 text

AWSエンジニアのための Active Directory入門 2020.05.12 第42回このサービスは俺に聞け勉強会 (クラスメソッド社内勉強会) Takuya Shibata

Slide 2

Slide 2 text

2 自己紹介 Takuya Shibata - AWS事業本部 コンサルティング部 - ソリューションアーキテクト - 2018年12月入社 - Microsoft MVP (PowerShell) - 好きなAWSサービス

Slide 3

Slide 3 text

3 はじめに わたしは PowerShell のMVPですが、 Active Directory のMVPではないので 過度な期待はしないでネ!

Slide 4

Slide 4 text

4 アジェンダ 1. Active Directoryとは 2. AWS と Active Directory 3. AWS 環境での Active Directory 構成例 4. その他もろもろ (時間があれば)

Slide 5

Slide 5 text

5 Active Directoryとは

Slide 6

Slide 6 text

6 Active Directoryとは Microsoftの提供する「ディレクトリサービス」 とりあえずは 「組織内のコンピューターとユーザーを一元管理する やつ」くらいの認識でOK • コンピューター • コンピューター名、OS • ユーザー、グループ • ユーザーアカウント、各種属性 • 権限まわり • 認証まわり

Slide 7

Slide 7 text

7 基本的な概念 ドメイン、フォレスト、信頼関係

Slide 8

Slide 8 text

8 基本的な概念 信頼関係の方向 • 信頼関係には「方向」がある(片方向、双方向)

Slide 9

Slide 9 text

9 基本的な概念 オブジェクト • ドメインにおける管理対象のこと • 主なオブジェクトは以下 (他にももっとあるヨ) オブジェクト 説明 特記事項 ユーザー ドメインに参加するユーザー Windowsのログオンユーザー コンピューター ドメインに参加するコンピューター プリンター ドメインで使用するプリンター 共有フォルダ ドメインで使用する共有フォルダ グループ ユーザーをまとめる器 ・主にアクセス権設定に使用 セキュリテグループ、配布グループ の種別がある 組織単位 (OU) ADのオブジェクトをまとめる器 ・グループポリシーの適用単位 ・権限委任の適用単位 名前に反して実際の組織構造を反映 させる必要は無い (もちろん反映しても良い)

Slide 10

Slide 10 text

10 基本的な概念 グループポリシー • ドメインに参加しているコンピューターおよび ユーザーに対して可能な一括設定(大抵は機能制限)

Slide 11

Slide 11 text

11 基本的な概念 グループポリシー • ポリシーの適用単位は “基本”OU • サイトポリシー、ドメインポリシーもある (必要になるケースはそう多くない) • セキュリティフィルターといった適用条件も設定可能 (必要なときだけ使う)

Slide 12

Slide 12 text

12 基本的な概念 グループポリシー • グループポリシーの実体は所定のレジストリキー • クライアントPCがドメインコントローラーから ポリシー設定を取得し反映される • ポリシーは 基本3値フラグ (もちろん、そうでないものも沢山ある) 状態 レジストリ設定 特記事項 未構成 レジストリキーが無い状態 この場合OS既定の設定となる 有効 キーに 有効値が設定される 1(DWORD) などの値 無効 キーに 無効値が設定される 0(DWORD) などの値

Slide 13

Slide 13 text

13 基本的な概念 グループポリシー基本設定 • Windows Server 2008からの機能 • 「基本設定」は通常のポリシーと別物 ドメインに参加するPCやユーザーへ 所定の初期設定を実施する仕組み • 実施するだけなので、 設定を間違えた場合は効果が無い (通常ポリシーの様な強制力が無い) • 通常ポリシーの様に設定を差し戻すことが できない (Tattooing)

Slide 14

Slide 14 text

14 Active Directoryの実体 Active Directoryの各種機能はWindows Serverの “役割”として実装されている • Active Directory Domain Service (ADDS) • Domain Name Service (DNS) • その他ゆかいな仲間たち • Active Directory Certificate Services (ADCS) • Active Directory Federation Services (ADFS) • Active Directory Rights Management Service (ADRMS) • Active Directory Lightweight Directory Service (ADLDS)

Slide 15

Slide 15 text

15 Active Directory Domain Service (ADDS) と DNS こいつがいわゆるActive Directory本体 • みんなが「ドメインコントローラー」って言ってるやつ • Active Directoryは内部でDNSを使うので ほぼ全ての場合でDNSサーバーと兼務される (Active Directory統合DNSゾーン) • ADDSが落ちるとADは死ぬので冗長化が必須 • 複数台によるレプリケーションが標準装備 • Flexible Single Master Operation (FSMO : フィズモ) • 操作マスタとも • ADは基本Multi-Masterだが、特定機能だけはSingle-Masterである必要 があり、それがFSMO

Slide 16

Slide 16 text

16 Active Directory Domain Service (ADDS) と DNS ADにおけるDNSの使いどころ • 特殊なゾーンにADに係る情報を格納している

Slide 17

Slide 17 text

17 Active Directory Domain Service (ADDS) と DNS レプリケーション • サイト : 雑に言うとレプリケーション境界 • 基本的には地理境界と合わせる(AWSにおいては AZ や Region) • 設定としてはサブネット単位でサイト分割 • クライアントの認証先を決めるのにも使われる

Slide 18

Slide 18 text

18 Azure Active Directory (Azure AD) Active Directory と Azure Active Directory は まったくの別物だよ!気を付けてね! • さらにややこしい話をすると、 Azure Active Directory Domain Services も別物だよ! • こっちはAzure AD Domain Services とも言われ、 AWSで言うところのAWS Managed Microsoft AD と同等のサービス

Slide 19

Slide 19 text

19 Azure Active Directory (Azure AD) https://jpazureid.github.io/blog/azure-active-directory/azure-ad-ds-scenario/ 今日は ここの話!

Slide 20

Slide 20 text

20 AWS と Active Directory

Slide 21

Slide 21 text

21 AWS Directory Service

Slide 22

Slide 22 text

22 AWS Directory Service

Slide 23

Slide 23 text

23 Simple AD できること • ユーザー、グループ管理 (最大ユーザー数制限あり) • グループポリシー • Kerberos認証SSO ADDSでなくて Samba 4 によるAD互換サービス • 名前のとおり機能は限定的 できないこと • 信頼関係の構築 • Active Directory管理センター • PowerShell管理 • ごみ箱機能 • gMSO • スキーマ拡張

Slide 24

Slide 24 text

24 AWS Managed Microsoft AD (Microsoft AD) AWSが管理する Windows Server 2012 R2 による Active Directoryサービス • 最低 2AZ (2Subnet) に2台のADDS + DNS • 設定でサーバー台数は 増やせる • マネージドサービスなので サーバー運用はAWSが やってくれる (自動メンテナンス)

Slide 25

Slide 25 text

25 AWS Managed Microsoft AD (Microsoft AD) AWSが管理するのでADのすべての機能は使えない (=サーバーやドメインの管理者にはなれない) • 管理者ユーザーは admin (≠ administrator) • AWS Delegated Administrators グループ (≠ Domain Admins / Enterprise Admins) • ユーザーが使えるOUが限定されている • [NetBIOS名] OU • Computers OU / Users OU • 上記OUの配下に独自のOUをつくって運用

Slide 26

Slide 26 text

26 AWS Managed Microsoft AD (Microsoft AD) 基本的なところは Developers.IO 見て! • AWS Managed Microsoft ADを試してみた (2019年版) • https://dev.classmethod.jp/articles/try-microsoft-ad-2019/ • Microsoft AD(AWS Directory Service)を利用する上で注意すること • https://dev.classmethod.jp/articles/notes-for-microsoft-ad-aws-directory-service/ • Microsoft AD(AWS Directory Service)でパスワードポリシーが管理できる ようになりました • https://dev.classmethod.jp/articles/aws-directory-service-microsoft-ad-password-policy/ • [アップデート]Microsoft AD(AWS Directory Service)でDCを追加して 冗長性と性能を向上できます • https://dev.classmethod.jp/articles/microsoft-ad-aws-directory-service-increase-dc/ 他にもいっぱい記事はあるヨ!

Slide 27

Slide 27 text

27 Active Directory Connector (AD Connector) AD Connector は、クラウドの情報をキャッシュせず にディレクトリリクエストをオンプレミスの Microsoft Active Directory へリダイレクトするのに 使用するディレクトリゲートウェイです。 - 管理ガイドより引用

Slide 28

Slide 28 text

28 Active Directory Connector (AD Connector) AWSサービスがAWSで管理されていないADへアクセスするための ゲートウェイ、もしくは、 AWSで管理されていないADをAWSから認識可能にする (ディレクトリIDを付ける)ためのサービス

Slide 29

Slide 29 text

29 Active Directory Connector (AD Connector) ディレクトリIDを付けるのが目的のひとつなので、 AD Connector と ドメインは 1対1 で紐づく

Slide 30

Slide 30 text

30 AWS 環境での Active Directory 構成例

Slide 31

Slide 31 text

31 AWS 環境での Active Directory 構成例 ちょっと古いけどこのBlack Beltの資料見て! • https://www.slideshare.net/AmazonWebServicesJapan/aws- black-belt-online-seminar-2016-awsactive-directory

Slide 32

Slide 32 text

32 AWS 環境での Active Directory 構成例 4つのシナリオ 1. オンプレ環境にあるADDSをAWSから使う 2. オンプレ環境とAWS上にADDS(on EC2)を構築 3. AWSにADDS on EC2を構築 4. AWSにAWS Managed Microsoft ADを構築

Slide 33

Slide 33 text

33 1.オンプレ環境にあるADDSをAWSから使う

Slide 34

Slide 34 text

34 1.オンプレ環境にあるADDSをAWSから使う

Slide 35

Slide 35 text

35 1.オンプレ環境にあるADDSをAWSから使う • ADはローカルネットワークで疎通する必要がある • VPNやDirect Connectによる接続が必須 • VPNやDirect Connect回線が死ぬとAWS側接続が全滅する • 単純にEC2がドメインに参加するだけならAD Connector は必須ではない • AD ConnectorはWorkSpacesなどのサービス利用が基本 • DNSがオンプレにあることによるめんどうくささ • Amazon DNSはVPC外からのクエリを受け付けない =Route 53 Resolverといったフォーワーダーが必要になる場合 • VPC Endpoint(Private Link)を使うばあい

Slide 36

Slide 36 text

36 DNSがオンプレにあることによるめんどうくささ

Slide 37

Slide 37 text

37 2.オンプレ環境とAWS上にADDS(on EC2)を構築

Slide 38

Slide 38 text

38 2.オンプレ環境とAWS上にADDS(on EC2)を構築

Slide 39

Slide 39 text

39 2.オンプレ環境とAWS上にADDS(on EC2)を構築

Slide 40

Slide 40 text

40 DNSのフォーワーダー設定はさらにめんどうくさい

Slide 41

Slide 41 text

41 設定を複製させず個別に設定する?

Slide 42

Slide 42 text

42 設定を複製させRoute 53 Resolverに寄せる?

Slide 43

Slide 43 text

43 2.オンプレ環境とAWS上にADDS(on EC2)を構築 • AWSからのアクセスをADDS on EC2に寄せることで 耐障害性を上げる • DNSは個別設定、DHCPオプションセットで分離可能 • 認証は”サイト分割”しないとAWSとオンプレを分離できない • DNSのフォーワーダー設定が異常にめんどうになる • EC2はAmazon DNSへフォーワード可能、 オンプレはAmazon DNSへフォーワード不可 • 一見いいとこ取りに見えるが、結構罠が多い • サイト設計、DNS設計をきちんとできる人向け • 大規模環境でないと構築・運用コストがペイしなそう

Slide 44

Slide 44 text

44 3. AWSにADDS on EC2を構築

Slide 45

Slide 45 text

45 3. AWSにADDS on EC2を構築

Slide 46

Slide 46 text

46 3. AWSにADDS on EC2を構築

Slide 47

Slide 47 text

47 3. AWSにADDS on EC2を構築 • 良くも悪くもADDSをただシフトしただけ • ADの全機能を使いたい人向け • オンプレADからAWSへ移行する人向け

Slide 48

Slide 48 text

48 4. AWSにAWS Managed Microsoft ADを構築

Slide 49

Slide 49 text

49 4. AWSにAWS Managed Microsoft ADを構築

Slide 50

Slide 50 text

50 4. AWSにAWS Managed Microsoft ADを構築

Slide 51

Slide 51 text

51 4. AWSにAWS Managed Microsoft ADを構築 • ADの全機能を使わなくても良い人向け • AWSサービスとの連携でADが欲しい人向け • オンプレADとは信頼関係を結ぶだけで良い人向け

Slide 52

Slide 52 text

52 より高度なActive Directory構成例 re:Inventに良いセッションがあります! ブログ書いてるので見て!! • https://dev.classmethod.jp/articles/re-invent-2019-report-win312-shibata/

Slide 53

Slide 53 text

53 その他もろもろ

Slide 54

Slide 54 text

54 AWSでADを構築する際のサイト設計 地味にちゃんと書いているドキュメントが無い クイックスタートでは Region 毎にサイト分割する 設計になっている • 個人的には Region 毎の分割で良いと思ってる • 対障害性を考えると AZ 毎の分割をしたほうが良い… のだが、現実問題として綺麗なAZ障害なんて無い… • オンプレ環境とAWS環境でサイトを分けるかは、正直、 ケースバイケース • ADDSがオンプレ/AWSに混在する場合は分けておいたほうが 安全

Slide 55

Slide 55 text

55 Active Directoryのバックアップ オフィシャルな方法は、Windows Server Backup によるバックアップのみ • ADは内部でExtensible Storage Engine (ESE) と呼ば れるデータベースを使っている =EBSのスナップショットはバックアップにならない • ADDS on EC2の場合、ADDSの内最低2台以上で バックアップ専用のEBSを追加アタッチしておく • 全ADDSでバックアップを取得する方が設計・運用は楽 • バックアップには有効期限があるので定期的に取得すること • 読み取り専用ドメインコントローラー(RODC)は対象外

Slide 56

Slide 56 text

56 Active Directoryのリストア Active Directoryのデータベースはレプリケーション されている。 このため、ADDS on EC2の場合、何の調整もなく Root Volumeのスナップショットを戻すリストアを してしまうと過去データをレプリケーションしてしまい 不整合に陥る。 • ADDSはEBSスナップショットからリストアしない • Hyper-Vは「VM-generation ID」を導入して この問題を解決(詳細はググって)

Slide 57

Slide 57 text

57 Active Directory障害対策 “プロ”の資料見て! • https://www.slideshare.net/wintechq/active-directory-13260358

Slide 58

Slide 58 text

58 AWS Managed Microsoft ADのバックアップ AWS Managed Microsoft ADでは 「スナップショット」というバックアップがある • 自動バックアップ、手動取得も可能 • バックアップの実体は不明 • リストアはAWSに完全におまかせ (90分程度のダウンタイムが発生する)

Slide 59

Slide 59 text

59 Active Directoryの移行、バージョンアップ ADDSのインプレースアップグレードは切り戻しが できないので極力やらない方が良い ざっくり以下の手順でやるほうが良い 1. 新バージョンのADDSを新たにドメイン参加 2. 新バージョンのADDSをドメインコントローラーに昇格 3. 新バージョンのADDSにFSMOを転送 4. 旧バージョンのADDSを降格 5. 旧バージョンの元ADDSサーバーを脱ドメイン

Slide 60

Slide 60 text

60 ざっくり例 : 初期状態

Slide 61

Slide 61 text

61 ざっくり例 : 移行先EC2の構築

Slide 62

Slide 62 text

62 ざっくり例 : ドメインコントローラー昇格

Slide 63

Slide 63 text

63 ざっくり例 : FSMO転送

Slide 64

Slide 64 text

64 ざっくり例 : 旧サーバーの降格、ドメイン離脱

Slide 65

Slide 65 text

65 まとめ Active Directory完全に理解した? フィードバック、マサカリはいつでも歓迎です

Slide 66

Slide 66 text

66