Menggabungkan instans Amazon EC2 Linux secara manual ke Simple AD Active Directory - AWS Directory Service

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 Simple AD Active Directory

Selain instans Amazon EC2 Windows, Anda juga dapat menggabungkan instans Amazon EC2 Linux tertentu ke Simple AD Active Directory. Distribusi instans Linux dan versi berikut ini didukung:

  • Amazon Linux AMI 2018.03.0

  • Amazon Linux 2 (64-bit x86)

  • Amazon Linux 2023 AMI

  • Perusahaan Topi Merah Linux 8 (HVM) (64-bit x86)

  • Server Ubuntu 18.04 LTS & Server Ubuntu 16.04 LTS

  • CentOS 7 x86-64

  • SUSELinux Server Perusahaan 15 SP1

catatan

Distribusi dan versi Linux lainnya mungkin bekerja namun belum diuji.

Prasyarat

Sebelum Anda dapat menggabungkan instans Amazon Linux, CentOS, Red Hat, atau Ubuntu ke direktori Anda, instans harus terlebih dahulu diluncurkan sebagaimana ditentukan dalam Bergabunglah dengan instans Amazon EC2 Linux dengan mulus ke Simple AD Active Directory.

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
  1. Connect ke instance menggunakan SSH klien apa pun.

  2. Konfigurasikan instance Linux untuk menggunakan alamat IP DNS server dari DNS server AWS Directory Service yang disediakan. Anda dapat melakukan ini dengan mengaturnya di set DHCP Opsi yang dilampirkan ke VPC atau dengan mengaturnya secara manual pada instance. Jika Anda ingin mengaturnya secara manual, lihat Bagaimana cara menetapkan DNS server statis ke EC2 instance Amazon pribadi di Pusat AWS Pengetahuan untuk panduan tentang pengaturan DNS server persisten untuk distribusi dan versi Linux tertentu Anda.

  3. Pastikan instans Amazon Linux - 64bit Anda adalah yang terbaru.

    sudo yum -y update
  4. Instal paket Amazon Linux yang diperlukan pada instans Linux Anda.

    catatan

    Beberapa paket ini mungkin sudah diinstal.

    Ketika Anda menginstal paket, Anda mungkin akan disajikan dengan beberapa layar konfigurasi pop-up. Anda biasanya dapat membiarkan bidang di layar ini kosong.

    Amazon Linux
    sudo yum install samba-common-tools realmd oddjob oddjob-mkhomedir sssd adcli krb5-workstation
    catatan

    Untuk bantuan dalam menentukan versi Amazon Linux yang Anda gunakan, lihat Mengidentifikasi gambar Amazon Linux di Panduan EC2 Pengguna Amazon untuk Instans Linux.

  5. Menggabungkan instans ke direktori dengan perintah berikut.

    sudo realm join -U join_account@EXAMPLE.COM example.com --verbose
    join_account@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 .

    example.com

    DNSNama direktori Anda yang sepenuhnya memenuhi syarat.

    ... * Successfully enrolled machine in realm
  6. Atur SSH layanan untuk mengizinkan otentikasi kata sandi.

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

      sudo vi /etc/ssh/sshd_config
    2. Atur pengaturan PasswordAuthentication ke yes.

      PasswordAuthentication yes
    3. Mulai ulang layanan SSH.

      sudo systemctl restart sshd.service

      Atau:

      sudo service sshd restart
  7. Setelah instance dimulai ulang, sambungkan dengan SSH klien mana pun dan tambahkan grup admin domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

    1. Buka file sudoers dengan perintah berikut:

      sudo visudo
    2. Tambahkan hal berikut ini ke bagian bawah file sudoers dan simpan.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

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

CentOS
  1. Connect ke instance menggunakan SSH klien apa pun.

  2. Konfigurasikan instance Linux untuk menggunakan alamat IP DNS server dari DNS server AWS Directory Service yang disediakan. Anda dapat melakukan ini dengan mengaturnya di set DHCP Opsi yang dilampirkan ke VPC atau dengan mengaturnya secara manual pada instance. Jika Anda ingin mengaturnya secara manual, lihat Bagaimana cara menetapkan DNS server statis ke EC2 instance Amazon pribadi di Pusat AWS Pengetahuan untuk panduan tentang pengaturan DNS server persisten untuk distribusi dan versi Linux tertentu Anda.

  3. Pastikan instans CentOS 7 Anda adalah yang terbaru.

    sudo yum -y update
  4. Instal paket CentOS 7 yang diperlukan pada instans Linux Anda.

    catatan

    Beberapa paket ini mungkin sudah diinstal.

    Ketika Anda menginstal paket, Anda mungkin akan disajikan dengan beberapa layar konfigurasi pop-up. Anda biasanya dapat membiarkan bidang di layar ini kosong.

    sudo yum -y install sssd realmd krb5-workstation samba-common-tools
  5. Menggabungkan instans ke direktori dengan perintah berikut.

    sudo realm join -U join_account@example.com example.com --verbose
    join_account@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 .

    example.com

    DNSNama direktori Anda yang sepenuhnya memenuhi syarat.

    ... * Successfully enrolled machine in realm
  6. Atur SSH layanan untuk mengizinkan otentikasi kata sandi.

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

      sudo vi /etc/ssh/sshd_config
    2. Atur pengaturan PasswordAuthentication ke yes.

      PasswordAuthentication yes
    3. Mulai ulang layanan SSH.

      sudo systemctl restart sshd.service

      Atau:

      sudo service sshd restart
  7. Setelah instance dimulai ulang, sambungkan dengan SSH klien mana pun dan tambahkan grup admin domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

    1. Buka file sudoers dengan perintah berikut:

      sudo visudo
    2. Tambahkan hal berikut ini ke bagian bawah file sudoers dan simpan.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

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

Red hat
  1. Connect ke instance menggunakan SSH klien apa pun.

  2. Konfigurasikan instance Linux untuk menggunakan alamat IP DNS server dari DNS server AWS Directory Service yang disediakan. Anda dapat melakukan ini dengan mengaturnya di set DHCP Opsi yang dilampirkan ke VPC atau dengan mengaturnya secara manual pada instance. Jika Anda ingin mengaturnya secara manual, lihat Bagaimana cara menetapkan DNS server statis ke EC2 instance Amazon pribadi di Pusat AWS Pengetahuan untuk panduan tentang pengaturan DNS server persisten untuk distribusi dan versi Linux tertentu Anda.

  3. Pastikan instans Red Hat - 64bit adalah yang terbaru.

    sudo yum -y update
  4. Instal paket Red Hat yang diperlukan pada instans Linux Anda.

    catatan

    Beberapa paket ini mungkin sudah diinstal.

    Ketika Anda menginstal paket, Anda mungkin akan disajikan dengan beberapa layar konfigurasi pop-up. Anda biasanya dapat membiarkan bidang di layar ini kosong.

    sudo yum -y install sssd realmd krb5-workstation samba-common-tools
  5. Menggabungkan instans ke direktori dengan perintah berikut.

    sudo realm join -v -U join_account example.com --install=/
    join_account

    sAMAccountNama untuk 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 .

    example.com

    DNSNama direktori Anda yang sepenuhnya memenuhi syarat.

    ... * Successfully enrolled machine in realm
  6. Atur SSH layanan untuk mengizinkan otentikasi kata sandi.

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

      sudo vi /etc/ssh/sshd_config
    2. Atur pengaturan PasswordAuthentication ke yes.

      PasswordAuthentication yes
    3. Mulai ulang layanan SSH.

      sudo systemctl restart sshd.service

      Atau:

      sudo service sshd restart
  7. Setelah instance dimulai ulang, sambungkan dengan SSH klien mana pun dan tambahkan grup admin domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

    1. Buka file sudoers dengan perintah berikut:

      sudo visudo
    2. Tambahkan hal berikut ini ke bagian bawah file sudoers dan simpan.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

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

Ubuntu
  1. Connect ke instance menggunakan SSH klien apa pun.

  2. Konfigurasikan instance Linux untuk menggunakan alamat IP DNS server dari DNS server AWS Directory Service yang disediakan. Anda dapat melakukan ini dengan mengaturnya di set DHCP Opsi yang dilampirkan ke VPC atau dengan mengaturnya secara manual pada instance. Jika Anda ingin mengaturnya secara manual, lihat Bagaimana cara menetapkan DNS server statis ke EC2 instance Amazon pribadi di Pusat AWS Pengetahuan untuk panduan tentang pengaturan DNS server persisten untuk distribusi dan versi Linux tertentu Anda.

  3. Pastikan instans Ubuntu - 64bit Anda adalah yang terbaru.

    sudo apt-get update sudo apt-get -y upgrade
  4. Instal paket Ubuntu yang diperlukan pada instans Linux Anda.

    catatan

    Beberapa paket ini mungkin sudah diinstal.

    Ketika Anda menginstal paket, Anda mungkin akan disajikan dengan beberapa layar konfigurasi pop-up. Anda biasanya dapat membiarkan bidang di layar ini kosong.

    sudo apt-get -y install sssd realmd krb5-user samba-common packagekit adcli
  5. Nonaktifkan DNS resolusi Terbalik dan atur ranah default ke domain AndaFQDN. Instans Ubuntu harus dapat diselesaikan secara terbalik DNS sebelum ranah berfungsi. Jika tidak, Anda harus menonaktifkan reverse DNS di /etc/krb5.conf sebagai berikut:

    sudo vi /etc/krb5.conf
    [libdefaults] default_realm = EXAMPLE.COM rdns = false
  6. Menggabungkan instans ke direktori dengan perintah berikut.

    sudo realm join -U join_account example.com --verbose
    join_account@example.com

    sAMAccountNama untuk 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 .

    example.com

    DNSNama direktori Anda yang sepenuhnya memenuhi syarat.

    ... * Successfully enrolled machine in realm
  7. Atur SSH layanan untuk mengizinkan otentikasi kata sandi.

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

      sudo vi /etc/ssh/sshd_config
    2. Atur pengaturan PasswordAuthentication ke yes.

      PasswordAuthentication yes
    3. Mulai ulang layanan SSH.

      sudo systemctl restart sshd.service

      Atau:

      sudo service sshd restart
  8. Setelah instance dimulai ulang, sambungkan dengan SSH klien mana pun dan tambahkan grup admin domain ke daftar sudoers dengan melakukan langkah-langkah berikut:

    1. Buka file sudoers dengan perintah berikut:

      sudo visudo
    2. Tambahkan hal berikut ini ke bagian bawah file sudoers dan simpan.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

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

catatan

Saat menggunakan Simple AD, jika Anda membuat akun pengguna pada instans Linux dengan opsi “Paksa pengguna untuk mengubah kata sandi saat login pertama,” pengguna tersebut tidak akan dapat mengubah kata sandi mereka menggunakan kpasswd. Untuk mengubah kata sandi pertama kalinya, administrator domain harus memperbarui sandi pengguna menggunakan Alat Pengelolaan Direktori Aktif.

Mengelola akun dari instans Linux

Untuk mengelola akun di Simple AD dari instans Linux, Anda harus memperbarui file konfigurasi tertentu pada instans Linux Anda sebagai berikut:

  1. Atur krb5_use_kdcinfo ke Salah di file /etc/sssd/sssd.conf. Sebagai contoh:

    [domain/example.com] krb5_use_kdcinfo = False
  2. Agar konfigurasi mulai berlaku Anda perlu memulai ulang layanan sssd:

    $ sudo systemctl restart sssd.service

    Atau, Anda dapat menggunakan .

    $ sudo service sssd start
  3. Jika Anda akan mengelola pengguna dari instans CentOS Linux, Anda juga harus mengedit file /etc/smb.conf untuk memasukkan:

    [global] workgroup = EXAMPLE.COM realm = EXAMPLE.COM netbios name = EXAMPLE security = ads

Membatasi akses login akun

Karena semua akun ditetapkan dalam Direktori Aktif, secara default, semua pengguna dalam direktori tersebut dapat masuk ke instans. Anda dapat mengizinkan hanya pengguna tertentu untuk masuk ke instans dengan ad_access_filter di sssd.conf. Sebagai contoh:

ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)
memberOf

Menunjukkan bahwa pengguna hanya boleh diizinkan akses ke instans jika mereka adalah anggota dari grup tertentu.

cn

Nama umum grup yang harus memiliki akses. Dalam contoh ini, nama grup adalah admins.

ou

Ini adalah unit organisasi tempat grup di atas berada. Dalam contoh ini, OU adalah Testou.

dc

Ini adalah komponen domain dari domain Anda. Dalam contoh ini, example.

dc

Ini adalah komponen domain tambahan. Dalam contoh ini, com.

Anda harus menambahkan ad_access_filter secara manual ke /etc/sssd/sssd.conf.

Buka file /etc/sssd/sssd.conf di editor teks.

sudo vi /etc/sssd/sssd.conf

Setelah melakukan hal ini, sssd.conf Anda mungkin terlihat seperti ini:

[sssd] domains = example.com config_file_version = 2 services = nss, pam [domain/example.com] ad_domain = example.com krb5_realm = EXAMPLE.COM realmd_tags = manages-system joined-with-samba cache_credentials = True id_provider = ad krb5_store_password_if_offline = True default_shell = /bin/bash ldap_id_mapping = True use_fully_qualified_names = True fallback_homedir = /home/%u@%d access_provider = ad ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)

Agar konfigurasi mulai berlaku, Anda perlu memulai ulang layanan sssd:

sudo systemctl restart sssd.service

Atau, Anda dapat menggunakan .

sudo service sssd restart

Pemetaan ID

Pemetaan ID dapat dilakukan dengan dua metode untuk mempertahankan pengalaman terpadu antara identitas UNIX /Linux User Identifier (UID) dan Group Identifier () dan Windows dan Active Directory Security Identifier (GID). SID

  1. Terpusat

  2. Didistribusikan

catatan

Pemetaan identitas pengguna terpusat di Active Directory memerlukan Antarmuka Sistem Operasi Portabel atau. POSIX

Pemetaan identitas pengguna terpusat

Active Directoryatau layanan Lightweight Directory Access Protocol (LDAP) lainnya menyediakan UID dan GID untuk pengguna Linux. DalamActive Directory, pengidentifikasi ini disimpan dalam atribut pengguna:

  • UID- Nama pengguna Linux (String)

  • UIDNomor - Nomor ID Pengguna Linux (Integer)

  • GIDNomor - Nomor ID Grup Linux (Integer)

Untuk mengkonfigurasi instance Linux untuk menggunakan UID dan GID dariActive Directory, atur ldap_id_mapping = False dalam file sssd.conf. Sebelum menyetel nilai ini, verifikasi bahwa Anda telah menambahkanUID, UID GID nomor, dan nomor ke pengguna dan grupActive Directory.

Pemetaan identitas pengguna terdistribusi

Jika Active Directory tidak memiliki POSIX ekstensi atau jika Anda memilih untuk tidak mengelola pemetaan identitas secara terpusat, Linux dapat menghitung UID dan GID nilainya. Linux menggunakan Security Identifier (SID) unik pengguna untuk menjaga konsistensi.

Untuk mengonfigurasi pemetaan ID pengguna terdistribusi, atur ldap_id_mapping = True dalam file sssd.conf.

Connect ke instance Linux

Ketika pengguna terhubung ke instance menggunakan SSH klien, 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

SUSELinux

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%