

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggabungkan instans Amazon EC2 Linux secara manual ke Direktori Aktif AWS Microsoft AD Terkelola menggunakan Winbind
<a name="join_linux_instance_winbind"></a>

Anda dapat menggunakan layanan Winbind untuk menggabungkan instans Amazon EC2 Linux secara manual ke domain Direktori Aktif Microsoft AD AWS Terkelola. Ini memungkinkan pengguna Active Directory lokal Anda yang ada untuk menggunakan kredenal Active Directory mereka saat mengakses instance Linux yang bergabung dengan Direktori Aktif AWS Microsoft AD Terkelola Anda. Distribusi instans Linux dan versi berikut ini didukung:
+ Amazon Linux AMI 2018.03.0
+ Amazon Linux 2 (64-bit x86)
+ Amazon Linux 2023 AMI
+ Red Hat Enterprise Linux 8 (HVM) (64-bit x86)
+ Ubuntu Server 18.04 LTS & Ubuntu Server 16.04 LTS
+ CentOS 7 x86-64
+ SUSE Linux Server Perusahaan 15 SP1

**catatan**  
Distribusi dan versi Linux lainnya mungkin bekerja namun belum diuji.

## Bergabunglah dengan instans Linux ke Direktori Aktif Microsoft AD AWS Terkelola
<a name="join_linux_winbind_prereq"></a>

**penting**  
Beberapa prosedur berikut, jika tidak dilakukan dengan benar, dapat membuat instans anda tidak terjangkau atau tidak dapat digunakan. Oleh karena itu, kami sangat menyarankan Anda membuat backup atau mengambil snapshot dari instans Anda sebelum melakukan prosedur ini.

**Untuk menggabungkan instance Linux ke direktori Anda**  
Ikuti langkah-langkah untuk instans Linux tertentu Anda menggunakan salah satu tab berikut:

------
#### [ Amazon Linux/CENTOS/REDHAT ]<a name="amazonlinux"></a>

1. Terhubung ke instans menggunakan klien SSH apa saja.

1. Mengkonfigurasi instans Linux untuk menggunakan alamat IP server DNS dari server DNS yang disediakan Directory Service. Anda dapat melakukan ini baik dengan mengaturnya di set Opsi DHCP yang terlampir pada VPC atau dengan mengaturnya secara manual pada instans. Jika Anda ingin mengaturnya secara manual, lihat [Bagaimana cara menetapkan server DNS statis ke instans Amazon EC2 pribadi](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-static-dns-ubuntu-debian/) di AWS Pusat Pengetahuan untuk panduan tentang pengaturan server DNS persisten untuk distribusi dan versi Linux tertentu Anda.

1. Pastikan instans Linux Anda adalah yang terbaru.

   ```
   sudo yum -y update
   ```

1. Instal paket Samba / Winbind yang diperlukan pada instans Linux Anda.

   ```
   sudo yum -y install authconfig samba samba-client samba-winbind samba-winbind-clients
   ```

1. Buat backup dari file `smb.conf` utama sehingga Anda dapat kembali ke sana jika terjadi kegagalan: 

   ```
   sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
   ```

1. Buka file konfigurasi [`/etc/samba/smb.conf`] asli di editor teks.

   ```
   sudo vim /etc/samba/smb.conf
   ```

   Isi informasi lingkungan domain Active Directory Anda seperti yang ditunjukkan pada contoh di bawah ini:

   ```
   [global]
    workgroup = example
    security = ads
    realm = example.com
    idmap config * : rangesize = 1000000
    idmap config * : range = 1000000-19999999
    idmap config * : backend = autorid
    winbind enum users = no
    winbind enum groups = no
    template homedir = /home/%U@%D
    template shell = /bin/bash
    winbind use default domain = false
   ```

1. Buka file host [`/etc/hosts`] di editor teks.

   ```
   sudo vim /etc/hosts
   ```

   Tambahkan alamat IP privat instans Linux Anda sebagai berikut:

   ```
   10.x.x.x  Linux_hostname.example.com Linux_hostname
   ```
**catatan**  
Jika Anda tidak menentukan alamat IP Anda di file `/etc/hosts`, Anda mungkin menerima error DNS berikut saat menggabungkan instans ke domain.:  
`No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER`  
Error ini berarti bahwa penggabungan berhasil tetapi perintah [net ads] tidak dapat mendaftarkan catatan DNS di DNS.

1. Menggabungkan instans Linux ke Direktori Aktif menggunakan utilitas net. 

   ```
   sudo net ads join -U join_account@example.com
   ```  
*join\$1account@example.com*  
Akun di *example.com* domain yang memiliki hak istimewa bergabung domain. Masukkan kata sandi untuk akun saat diminta. Untuk informasi selengkapnya tentang mendelegasikan hak istimewa ini, lihat [Mendelegasikan hak istimewa bergabung direktori untuk AWS Microsoft AD yang Dikelola](directory_join_privileges.md).  
*example.com*  
Nama DNS yang memenuhi syarat untuk direktori Anda.

   ```
   Enter join_account@example.com's password:
   Using short domain name -- example
   Joined 'IP-10-x-x-x' to dns domain 'example.com'
   ```

1. Memodifikasi file konfigurasi PAM, Gunakan perintah di bawah ini untuk menambahkan entri yang diperlukan untuk autentikasi winbind:

   ```
   sudo authconfig --enablewinbind --enablewinbindauth  --enablemkhomedir   --update
   ```

1. Mengatur layanan SSH untuk mengizinkan autentikasi kata sandi dengan mengedit file `/etc/ssh/sshd_config`.

   1. Buka file `/etc/ssh/sshd_config` di editor teks.

      ```
      sudo vi /etc/ssh/sshd_config
      ```

   1. Atur pengaturan `PasswordAuthentication` ke `yes`.

      ```
      PasswordAuthentication yes
      ```

   1. Mulai ulang layanan SSH.

      ```
      sudo systemctl restart sshd.service
      ```

      Atau:

      ```
      sudo service sshd restart
      ```

1. Setelah instans telah dimulai ulang, hubungkan dengan klien SSH dan tambahkan hak istimewa root untuk pengguna atau grup domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

   1. Buka file `sudoers` dengan perintah berikut:

      ```
      sudo visudo
      ```

   1. Tambahkan grup atau pengguna yang diperlukan dari domain Trusting atau Trusted sebagai berikut, dan kemudian simpan.

      ```
      ## Adding Domain Users/Groups.
      %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL
      %domainname\\groupname ALL=(ALL:ALL) ALL
      domainname\\username ALL=(ALL:ALL) ALL
      %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL
      Trusted_DomainName\\username ALL=(ALL:ALL) ALL
      ```

      (Contoh di atas menggunakan “\$1<space>" untuk membuat karakter spasi Linux.)

------
#### [ SUSE ]<a name="suse"></a>

1. Terhubung ke instans menggunakan klien SSH apa saja.

1. Mengkonfigurasi instans Linux untuk menggunakan alamat IP server DNS dari server DNS yang disediakan Directory Service. Anda dapat melakukan ini baik dengan mengaturnya di set Opsi DHCP yang terlampir pada VPC atau dengan mengaturnya secara manual pada instans. Jika Anda ingin mengaturnya secara manual, lihat [Bagaimana cara menetapkan server DNS statis ke instans Amazon EC2 pribadi](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-static-dns-ubuntu-debian/) di AWS Pusat Pengetahuan untuk panduan tentang pengaturan server DNS persisten untuk distribusi dan versi Linux tertentu Anda.

1. Pastikan instans SUSE Linux 15 Anda adalah yang terbaru.

   1. Hubungkan repositori paket.

      ```
      sudo SUSEConnect -p PackageHub/15.1/x86_64
      ```

   1. Pembaruan SUSE.

      ```
      sudo zypper update -y
      ```

1. Instal paket Samba / Winbind yang diperlukan pada instans Linux Anda.

   ```
   sudo zypper in -y samba samba-winbind
   ```

1. Buat backup dari file `smb.conf` utama sehingga Anda dapat kembali ke sana jika terjadi kegagalan: 

   ```
   sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
   ```

1. Buka file konfigurasi [`/etc/samba/smb.conf`] asli di editor teks.

   ```
   sudo vim /etc/samba/smb.conf
   ```

   Isi informasi lingkungan domain direktori Aktif Anda seperti yang ditunjukkan pada contoh di bawah ini:

   ```
   [global]
    workgroup = example
    security = ads
    realm = example.com
    idmap config * : rangesize = 1000000
    idmap config * : range = 1000000-19999999
    idmap config * : backend = autorid
    winbind enum users = no
    winbind enum groups = no
    template homedir = /home/%U@%D
    template shell = /bin/bash
    winbind use default domain = false
   ```

1. Buka file host [`/etc/hosts`] di editor teks.

   ```
   sudo vim /etc/hosts
   ```

   Tambahkan alamat IP privat instans Linux Anda sebagai berikut:

   ```
   10.x.x.x  Linux_hostname.example.com Linux_hostname
   ```
**catatan**  
Jika Anda tidak menentukan alamat IP Anda di file `/etc/hosts`, Anda mungkin menerima error DNS berikut saat menggabungkan instans ke domain.:  
`No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER`  
Error ini berarti bahwa penggabungan berhasil tetapi perintah [net ads] tidak dapat mendaftarkan catatan DNS di DNS.

1. Menggabungkan instans Linux ke direktori dengan perintah berikut. 

   ```
   sudo net ads join -U join_account@example.com
   ```  
*join\$1account*  
AMAccountNama s di *example.com* domain yang memiliki hak istimewa bergabung domain. Masukkan kata sandi untuk akun saat diminta. Untuk informasi selengkapnya tentang mendelegasikan hak istimewa ini, lihat [Mendelegasikan hak istimewa bergabung direktori untuk AWS Microsoft AD yang Dikelola](directory_join_privileges.md).  
*example.com*  
Nama DNS yang memenuhi syarat untuk direktori Anda.

   ```
   Enter join_account@example.com's password:
   Using short domain name -- example
   Joined 'IP-10-x-x-x' to dns domain 'example.com'
   ```

1. Memodifikasi file konfigurasi PAM, Gunakan perintah di bawah ini untuk menambahkan entri yang diperlukan untuk autentikasi Winbind:

   ```
   sudo pam-config --add --winbind --mkhomedir
   ```

1. Buka file konfigurasi Name Service Switch [`/etc/nsswitch.conf`] di editor teks.

   ```
   vim /etc/nsswitch.conf
   ```

   Tambahkan direktif Winbind seperti yang ditunjukkan di bawah ini.

   ```
   passwd: files winbind
   shadow: files winbind
   group:  files winbind
   ```

1. Mengatur layanan SSH untuk mengizinkan autentikasi kata sandi dengan mengedit file `/etc/ssh/sshd_config`.

   1. Buka file `/etc/ssh/sshd_config` di editor teks.

      ```
      sudo vim /etc/ssh/sshd_config
      ```

   1. Atur pengaturan `PasswordAuthentication` ke `yes`.

      ```
      PasswordAuthentication yes
      ```

   1. Mulai ulang layanan SSH.

      ```
      sudo systemctl restart sshd.service
      ```

      Atau:

      ```
      sudo service sshd restart
      ```

1. Setelah instans telah dimulai ulang, hubungkan dengan klien SSH dan tambahkan hak istimewa root untuk pengguna atau grup domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

   1. Buka file `sudoers` dengan perintah berikut:

      ```
      sudo visudo
      ```

   1. Tambahkan grup atau pengguna yang diperlukan dari domain Trusting atau Trusted sebagai berikut, dan kemudian simpan.

      ```
      ## Adding Domain Users/Groups.
      %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL
      %domainname\\groupname ALL=(ALL:ALL) ALL
      domainname\\username ALL=(ALL:ALL) ALL
      %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL
      Trusted_DomainName\\username ALL=(ALL:ALL) ALL
      ```

      (Contoh di atas menggunakan “\$1<space>" untuk membuat karakter spasi Linux.)

------
#### [ Ubuntu ]<a name="ubuntu"></a>

1. Terhubung ke instans menggunakan klien SSH apa saja.

1. Mengkonfigurasi instans Linux untuk menggunakan alamat IP server DNS dari server DNS yang disediakan Directory Service. Anda dapat melakukan ini baik dengan mengaturnya di set Opsi DHCP yang terlampir pada VPC atau dengan mengaturnya secara manual pada instans. Jika Anda ingin mengaturnya secara manual, lihat [Bagaimana cara menetapkan server DNS statis ke instans Amazon EC2 pribadi](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-static-dns-ubuntu-debian/) di AWS Pusat Pengetahuan untuk panduan tentang pengaturan server DNS persisten untuk distribusi dan versi Linux tertentu Anda.

1. Pastikan instans Linux Anda adalah yang terbaru.

   ```
   sudo apt-get -y upgrade
   ```

1. Instal paket Samba / Winbind yang diperlukan pada instans Linux Anda.

   ```
   sudo apt -y install samba winbind libnss-winbind libpam-winbind
   ```

1. Buat backup dari file `smb.conf` utama sehingga Anda dapat kembali ke sana jika terjadi kegagalan. 

   ```
   sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
   ```

1. Buka file konfigurasi [`/etc/samba/smb.conf`] asli di editor teks.

   ```
   sudo vim /etc/samba/smb.conf
   ```

   Isi informasi lingkungan domain direktori Aktif Anda seperti yang ditunjukkan pada contoh di bawah ini:

   ```
   [global]
    workgroup = example
    security = ads
    realm = example.com
    idmap config * : rangesize = 1000000
    idmap config * : range = 1000000-19999999
    idmap config * : backend = autorid
    winbind enum users = no
    winbind enum groups = no
    template homedir = /home/%U@%D
    template shell = /bin/bash
    winbind use default domain = false
   ```

1. Buka file host [`/etc/hosts`] di editor teks.

   ```
   sudo vim /etc/hosts
   ```

   Tambahkan alamat IP privat instans Linux Anda sebagai berikut:

   ```
   10.x.x.x  Linux_hostname.example.com Linux_hostname
   ```
**catatan**  
Jika Anda tidak menentukan alamat IP Anda di file `/etc/hosts`, Anda mungkin menerima error DNS berikut saat menggabungkan instans ke domain.:  
`No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER`  
Error ini berarti bahwa penggabungan berhasil tetapi perintah [net ads] tidak dapat mendaftarkan catatan DNS di DNS.

1. Menggabungkan instans Linux ke Direktori Aktif menggunakan utilitas net. 

   ```
   sudo net ads join -U join_account@example.com
   ```  
*join\$1account@example.com*  
Akun di *example.com* domain yang memiliki hak istimewa bergabung domain. Masukkan kata sandi untuk akun saat diminta. Untuk informasi selengkapnya tentang mendelegasikan hak istimewa ini, lihat [Mendelegasikan hak istimewa bergabung direktori untuk AWS Microsoft AD yang Dikelola](directory_join_privileges.md).  
*example.com*  
Nama DNS yang memenuhi syarat untuk direktori Anda.

   ```
   Enter join_account@example.com's password:
   Using short domain name -- example
   Joined 'IP-10-x-x-x' to dns domain 'example.com'
   ```

1. Memodifikasi file konfigurasi PAM, Gunakan perintah di bawah ini untuk menambahkan entri yang diperlukan untuk autentikasi Winbind:

   ```
   sudo pam-auth-update --add --winbind --enable mkhomedir
   ```

1. Buka file konfigurasi Name Service Switch [`/etc/nsswitch.conf`] di editor teks.

   ```
   vim /etc/nsswitch.conf
   ```

   Tambahkan direktif Winbind seperti yang ditunjukkan di bawah ini.

   ```
   passwd: compat winbind
   group:  compat winbind
   shadow: compat winbind
   ```

1. Mengatur layanan SSH untuk mengizinkan autentikasi kata sandi dengan mengedit file `/etc/ssh/sshd_config`.

   1. Buka file `/etc/ssh/sshd_config` di editor teks.

      ```
      sudo vim /etc/ssh/sshd_config
      ```

   1. Atur pengaturan `PasswordAuthentication` ke `yes`.

      ```
      PasswordAuthentication yes
      ```

   1. Mulai ulang layanan SSH.

      ```
      sudo systemctl restart sshd.service
      ```

      Atau:

      ```
      sudo service sshd restart
      ```

1. Setelah instans telah dimulai ulang, hubungkan dengan klien SSH dan tambahkan hak istimewa root untuk pengguna atau grup domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

   1. Buka file `sudoers` dengan perintah berikut:

      ```
      sudo visudo
      ```

   1. Tambahkan grup atau pengguna yang diperlukan dari domain Trusting atau Trusted sebagai berikut, dan kemudian simpan.

      ```
      ## Adding Domain Users/Groups.
      %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL
      %domainname\\groupname ALL=(ALL:ALL) ALL
      domainname\\username ALL=(ALL:ALL) ALL
      %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL
      Trusted_DomainName\\username ALL=(ALL:ALL) ALL
      ```

      (Contoh di atas menggunakan “\$1<space>" untuk membuat karakter spasi Linux.)

------

## Connect ke instance Linux
<a name="linux_winbind_connect"></a>

Ketika pengguna terhubung ke instance menggunakan klien SSH, mereka diminta untuk nama pengguna mereka. Pengguna dapat memasukkan nama pengguna dalam `EXAMPLE\username` format `username@example.com` atau. Respons akan muncul mirip dengan yang berikut ini, tergantung pada distribusi Linux yang Anda gunakan:

**Amazon Linux, Red Hat Enterprise Linux, dan CentOS Linux**

```
login as: johndoe@example.com
johndoe@example.com's password:
Last login: Thu Jun 25 16:26:28 2015 from XX.XX.XX.XX
```

**SUSE Linux**

```
SUSE Linux Enterprise Server 15 SP1 x86_64 (64-bit)

As "root" (sudo or sudo -i) use the:
  - zypper command for package management
  - yast command for configuration management

Management and Config: https://www.suse.com/suse-in-the-cloud-basics
Documentation: https://www.suse.com/documentation/sles-15/
Forum: https://forums.suse.com/forumdisplay.php?93-SUSE-Public-Cloud

Have a lot of fun...
```

**Ubuntu Linux**

```
login as: admin@example.com
admin@example.com@10.24.34.0's password:
Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-1057-aws x86_64)

* Documentation:  https://help.ubuntu.com
* Management:     https://landscape.canonical.com
* Support:        https://ubuntu.com/advantage

  System information as of Sat Apr 18 22:03:35 UTC 2020

  System load:  0.01              Processes:           102
  Usage of /:   18.6% of 7.69GB   Users logged in:     2
  Memory usage: 16%               IP address for eth0: 10.24.34.1
  Swap usage:   0%
```