

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# LDAP(S) クラスター設定 AWS Managed Microsoft AD の例
<a name="examples-addir-v3"></a>

AWS ParallelCluster は、Lightweight Directory Access Protocol (LDAP) AWS Directory Service 経由の または TLS/SSL (LDAPS) 経由の LDAP と統合することで、複数のユーザーアクセスをサポートします。

以下の例は、LDAP を介して AWS Managed Microsoft AD と統合するクラスター設定を作成する方法を示しています。

## AWS Managed Microsoft AD 証明書検証による LDAPS 経由
<a name="LDAP-example-1"></a>

この例を使用して、証明書の検証により、クラスターを LDAPS AWS Managed Microsoft AD 経由の と統合できます。

**証明書設定を使用した LDAPS AWS Managed Microsoft AD 経由の の特定の定義:**
+ 証明書検証付きの LDAPS では、[`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsReqCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsReqCert) を `hard` (デフォルト) に設定する必要があります。
+ [`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsCaCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsCaCert) には認証局 (CA) 証明書のパスを指定する必要があります。

  CA 証明書は、AD ドメインコントローラーの証明書を発行した CA チェーン全体の証明書を含む証明書バンドルです。

  CA 証明書と証明書はクラスターノードにインストールする必要があります。
+ コントローラーのホスト名は IP アドレスではなく [`DirectoryService`](DirectoryService-v3.md)/[`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr) に指定する必要があります。
+ [`DirectoryService`](DirectoryService-v3.md)/[`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 構文は次のようである必要があります。

  ```
  cn=ReadOnly,ou=Users,ou=CORP,dc={{corp}},dc={{example}},dc={{com}}
  ```

**LDAPS を介した AD を使用する場合のクラスター設定ファイルの例。**

```
Region: region-id
Image:
  Os: alinux2
HeadNode:
  InstanceType: t2.micro
  Networking:
    SubnetId: subnet-1234567890abcdef0
  Ssh:
    KeyName: pcluster
  Iam:
    AdditionalIamPolicies:
      - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
  CustomActions:
    OnNodeConfigured:
      Script: s3://&example-s3-bucket;/scripts/pcluster-dub-msad-ldaps.post.sh
Scheduling:
  Scheduler: slurm
  SlurmQueues:
    - Name: queue1
      ComputeResources:
        - Name: t2micro
          InstanceType: t2.micro
          MinCount: 1
          MaxCount: 10
      Networking:
        SubnetIds:
          - subnet-abcdef01234567890
      Iam:
        AdditionalIamPolicies:
          - Policy: arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
      CustomActions:
        OnNodeConfigured:
          Script: s3://&example-s3-bucket;/scripts/pcluster-dub-msad-ldaps.post.sh
DirectoryService:
  DomainName: dc=corp,dc=example,dc=com
  DomainAddr: ldaps://win-abcdef01234567890.corp.example.com,ldaps://win-abcdef01234567890.corp.example.com
  PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:MicrosoftAD.Admin.Password-1234
  DomainReadOnlyUser: cn=ReadOnly,ou=Users,ou=CORP,dc=corp,dc=example,dc=com
  LdapTlsCaCert: /etc/openldap/cacerts/corp.example.com.bundleca.cer
  LdapTlsReqCert: hard
```

**インストール後のスクリプトで証明書を追加し、ドメインコントローラーを設定します。**

```
*#!/bin/bash*
set -e

AD_CERTIFICATE_S3_URI="s3://{{amzn-s3-demo-bucket}}/bundle/corp.example.com.bundleca.cer"
AD_CERTIFICATE_LOCAL="/etc/openldap/cacerts/corp.example.com.bundleca.cer"

AD_HOSTNAME_1="win-abcdef01234567890.corp.example.com"
AD_IP_1="192.0.2.254"

AD_HOSTNAME_2="win-abcdef01234567890.corp.example.com"
AD_IP_2="203.0.113.225"

# Download CA certificate
mkdir -p $(dirname "${AD_CERTIFICATE_LOCAL}")
aws s3 cp "${AD_CERTIFICATE_S3_URI}" "${AD_CERTIFICATE_LOCAL}"
chmod 644 "${AD_CERTIFICATE_LOCAL}"

# Configure domain controllers reachability
echo "${AD_IP_1} ${AD_HOSTNAME_1}" >> /etc/hosts
echo "${AD_IP_2} ${AD_HOSTNAME_2}" >> /etc/hosts
```

**以下の例のように、ドメインに参加しているインスタンスからドメインコントローラーのホスト名を取得できます。**

**Windows インスタンスから**

```
$ nslookup {{192.0.2.254}}
```

```
Server:  corp.example.com
Address:  192.0.2.254

Name:    win-abcdef01234567890.corp.example.com
Address:  192.0.2.254
```

**Linux インスタンスから**

```
$ nslookup {{192.0.2.254}}
```

```
192.0.2.254.in-addr.arpa   name = corp.example.com
192.0.2.254.in-addr.arpa   name = win-abcdef01234567890.corp.example.com
```

## AWS Managed Microsoft AD 証明書の検証なしの LDAPS 経由
<a name="LDAP-example-2"></a>

この例を使用して、証明書の検証なしで、クラスターを LDAPS AWS Managed Microsoft AD 経由で と統合できます。

**証明書検証設定のない LDAPS AWS Managed Microsoft AD 経由の の特定の定義:**
+ [`DirectoryService`](DirectoryService-v3.md)/[`LdapTlsReqCert`](DirectoryService-v3.md#yaml-DirectoryService-LdapTlsReqCert) を `never` に設定する必要があります。
+ [`DirectoryService`](DirectoryService-v3.md)/[`DomainAddr`](DirectoryService-v3.md#yaml-DirectoryService-DomainAddr) にはコントローラーのホスト名または IP アドレスのいずれかを指定できます。
+ [`DirectoryService`](DirectoryService-v3.md)/[`DomainReadOnlyUser`](DirectoryService-v3.md#yaml-DirectoryService-DomainReadOnlyUser) 構文は次のようである必要があります。

  ```
  cn=ReadOnly,ou=Users,ou=CORP,dc={{corp}},dc={{example}},dc={{com}}
  ```

**証明書の検証なしで LDAPS AWS Managed Microsoft AD 経由で を使用するためのクラスター設定ファイルの例:**

```
Region: region-id
Image:
  Os: alinux2
HeadNode:
  InstanceType: t2.micro
  Networking:
    SubnetId: subnet-1234567890abcdef0
  Ssh:
    KeyName: pcluster
Scheduling:
  Scheduler: slurm
  SlurmQueues:
    - Name: queue1
      ComputeResources:
        - Name: t2micro
          InstanceType: t2.micro
          MinCount: 1
          MaxCount: 10
      Networking:
        SubnetIds:
          - subnet-abcdef01234567890
DirectoryService:
  DomainName: dc=corp,dc=example,dc=com
  DomainAddr: ldaps://203.0.113.225,ldaps://192.0.2.254
  PasswordSecretArn: arn:aws:secretsmanager:region-id:123456789012:secret:MicrosoftAD.Admin.Password-1234
  DomainReadOnlyUser: cn=ReadOnly,ou=Users,ou=CORP,dc=corp,dc=example,dc=com
  LdapTlsReqCert: never
```