Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Manuelles Hinzufügen einer Amazon EC2 Linux-Instance zu Ihrem Simple AD Active Directory
Neben Amazon EC2 Windows-Instances können Sie auch bestimmte Amazon EC2 Linux-Instances zu Ihrem Simple AD Active Directory hinzufügen. Die folgenden Linux-Instance-Distributionen und -Versionen werden unterstützt:
-
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 und Ubuntu Server 16.04 LTS
-
CentOS 7 x86-64
-
SUSE Linux Enterprise Server 15 SP1
Anmerkung
Andere Linux-Distributionen und -Versionen können funktionieren, sind jedoch nicht getestet worden.
Voraussetzungen
Bevor Sie eine Amazon-Linux-, CentOS-, Red-Hat- oder Ubuntu-Instance mit Ihrem Verzeichnis verbinden können, muss die Instance zunächst wie unter Fügen Sie eine Amazon EC2 Linux-Instance nahtlos zu Ihrem Simple AD Active Directory hinzu beschrieben gestartet werden.
Wichtig
Einige der folgenden Verfahren können, wenn sie nicht richtig durchgeführt werden, Ihre Instance nicht erreichbar oder unbrauchbar machen. Aus diesem Grund empfehlen wir dringend, eine Sicherung anzufertigen oder einen Snapshot der Instance zu machen, bevor diese Verfahren ausgeführt werden.
So fügen Sie Ihrem Verzeichnis eine Linux-Instance hinzu
Folgen Sie den Schritten für Ihre spezifische Linux-Instance unter Verwendung einer der folgenden Registerkarten:
-
Stellen Sie über einen SSH-Client eine Verbindung zur Instance her.
-
Konfigurieren Sie die Linux-Instanz so, dass sie die DNS-Server-IP-Adressen der AWS Directory Service bereitgestellten DNS-Server verwendet. Das können Sie entweder in den DHCP-Optionen der VPC oder manuell auf der Instance einrichten. Wenn Sie ihn manuell einrichten möchten, finden Sie im AWS Knowledge Center unter Wie weise ich einer privaten EC2 Amazon-Instance einen statischen DNS-Server zu
? Anleitungen zur Einrichtung des persistenten DNS-Servers für Ihre spezielle Linux-Distribution und -Version. -
Überprüfen Sie, ob Ihre Amazon-Linux-64bit-Instance auf dem aktuellen Stand ist.
sudo yum -y update
-
Installieren Sie die erforderlichen Amazon-Linux-Pakete auf Ihrer Linux-Instance.
Anmerkung
Einige dieser Pakete sind möglicherweise bereits installiert.
Wenn Sie die Pakete installieren, werden Ihnen mehrere Pop-up-Konfigurationsbildschirme gezeigt. Sie können in der Regel die Felder in diesen Bildschirmen leer lassen.
- Amazon Linux
-
sudo yum install samba-common-tools realmd oddjob oddjob-mkhomedir sssd adcli krb5-workstation
Anmerkung
Hilfe bei der Bestimmung der von Ihnen verwendeten Amazon Linux-Version finden Sie unter Identifizieren von Amazon Linux-Images im EC2 Amazon-Benutzerhandbuch für Linux-Instances.
-
Fügen Sie die Instance mit folgendem Befehl zur Instance hinzu.
sudo realm join -U
join_account@EXAMPLE.COM
example.com
--verbosejoin_account@EXAMPLE.COM
-
Ein Konto in der
example.com
Domain, das über Domänenbeitrittsrechte verfügt. Geben Sie das Passwort für das Konto ein, wenn Sie dazu aufgefordert werden. Weitere Informationen zum Erteilen dieser Berechtigungen finden Sie unter Delegieren von Verzeichnisbeitrittsberechtigungen für AWS Managed Microsoft AD. example.com
-
Der vollständig berechtigte DNS-Name Ihres Verzeichnisses.
... * Successfully enrolled machine in realm
-
Konfigurieren Sie den SSH-Service so, dass die Passwortauthentifizierung zulässig ist.
-
Öffnen Sie die Datei
/etc/ssh/sshd_config
in einem Text-Editor.sudo vi /etc/ssh/sshd_config
-
Setzen Sie die Einstellung
PasswordAuthentication
aufyes
.PasswordAuthentication yes
-
Starten Sie den SSH-Service neu.
sudo systemctl restart sshd.service
Alternative Vorgehensweise:
sudo service sshd restart
-
-
Nachdem die Instance neu gestartet wurde, stellen Sie eine Verbindung zu einem SSH-Client her und fügen Sie dann die Domain-Administratorengruppe der sudoers-Liste hinzu, indem Sie die folgenden Schritte ausführen:
-
Öffnen Sie die
sudoers
- Datei mit dem folgenden Befehl:sudo visudo
-
Fügen Sie Folgendes am Ende der
sudoers
-Datei hinzu und speichern Sie die Datei.## Add the "Domain Admins" group from the
example.com
domain. %Domain\ Admins@example.com
ALL=(ALL:ALL) ALL(Im obigen Beispiel wird „\<space>“ für das Linux-Leerzeichen verwendet.)
-
Anmerkung
Wenn Sie bei der Verwendung von Simple AD ein Benutzerkonto auf einer Linux-Instance mit der Option „Änderung des Passworts bei der nächsten Anmeldung erzwingen“ erstellen, kann dieser Benutzer sein Passwort nicht sofort mit kpasswd ändern. Zur erstmaligen Änderung des Passworts muss ein Domain-Administrator das Benutzerpasswort über die Active-Directory-Verwaltungstools aktualisieren.
Konten von eine Linux-Instance verwalten
Zum Verwalten von Konten in Simple AD über eine Linux-Instance müssen Sie spezifische Konfigurationsdateien folgendermaßen in Ihrer Linux-Instance aktualisieren:
-
Setzen Sie krb5_use_kdcinfo in der Datei/.conf auf False. etc/sssd/sssd Zum Beispiel:
[domain/example.com] krb5_use_kdcinfo = False
-
Damit diese Konfiguration wirksam wird, müssen Sie den sssd-Service neu starten:
$ sudo systemctl restart sssd.service
Alternativ können Sie:
$ sudo service sssd start
-
Falls Sie Benutzer aus einer CentOS-Linux-Instance verwalten, müssen Sie auch die Datei /etc/smb.conf bearbeiten, um Folgendes einzubeziehen:
[global] workgroup = EXAMPLE.COM realm = EXAMPLE.COM netbios name = EXAMPLE security = ads
Einschränken des Kontoanmeldungszugriffs
Da alle Konten in Active Directory standardmäßig definiert sind, können sich alle Benutzer aus dem Verzeichnis bei der Instance anmelden. Mit ad_access_filter in sssd.conf können Sie festlegen, dass sich nur bestimmte Benutzer bei der Instance anmelden können. Zum Beispiel:
ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)
memberOf
-
Gibt an, dass Benutzer nur Zugriff auf die Instance haben, wenn sie Mitglied einer bestimmten Gruppe sind.
cn
-
Der allgemeine Name der Gruppe, die Zugriff haben soll. In diesem Beispiel lautet der Gruppenname.
admins
ou
-
Dies ist die Organisationseinheit, in der sich die oben genannte Gruppe befindet. In diesem Beispiel ist die Organisationseinheit
Testou
. dc
-
Dies ist die Domainkomponente Ihrer Domain. In diesem Beispiel
example
. dc
-
Hierbei handelt es sich um eine zusätzliche Domainkomponente. In diesem Beispiel
com
.
Sie müssen ad_access_filter manuell zu /etc/sssd/sssd.conf hinzufügen.
Öffnen Sie die Datei /etc/sssd/sssd.conf in einem Text-Editor.
sudo vi /etc/sssd/sssd.conf
Danach sieht sssd.conf wie folgt aus:
[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)
Damit die Konfiguration wirksam wird, müssen Sie den sssd-Service neu starten:
sudo systemctl restart sssd.service
Alternativ können Sie:
sudo service sssd restart
ID-Zuordnung
Die ID-Zuordnung kann mit zwei Methoden durchgeführt werden, um ein einheitliches Benutzererlebnis zwischen UNIX/Linux User Identifier (UID) und Group Identifier (GID) und Windows zu gewährleisten Active Directory Identitäten mit Sicherheitsbezeichnungen (SID). Diese Methoden sind:
Zentralisiert
Verteilt
Anmerkung
Zentralisierte Zuordnung von Benutzeridentitäten in Active Directory erfordert Portable Operating System Interface oder POSIX.
Zentralisierte Zuordnung von Benutzeridentitäten
Active Directory oder ein anderer LDAP-Dienst (Lightweight Directory Access Protocol) stellt den Linux-Benutzern UID und GID zur Verfügung. In Active Directory, werden diese Bezeichner in den Benutzerattributen gespeichert, wenn die POSIX-Erweiterung konfiguriert ist:
UID — Der Linux-Benutzername (String)
UID-Nummer — Die Linux-Benutzer-ID-Nummer (Integer)
GID-Nummer — Die Linux-Gruppen-ID-Nummer (Integer)
Um eine Linux-Instanz für die Verwendung der UID und GID von zu konfigurieren Active Directory, wird ldap_id_mapping = False
in der Datei sssd.conf festgelegt. Bevor Sie diesen Wert festlegen, stellen Sie sicher, dass Sie den Benutzern und Gruppen in eine UID, UID-Nummer und GID-Nummer hinzugefügt haben Active Directory.
Zuordnung verteilter Benutzeridentitäten
Wenn Active Directory verfügt nicht über die POSIX-Erweiterung, oder wenn Sie sich dafür entscheiden, die Identitätszuweisung nicht zentral zu verwalten, kann Linux die UID- und GID-Werte berechnen. Linux verwendet den eindeutigen Security Identifier (SID) des Benutzers, um die Konsistenz zu gewährleisten.
Um die verteilte Benutzer-ID-Zuordnung zu konfigurieren, legen Sie dies ldap_id_mapping = True
in der Datei sssd.conf fest.
Häufige Probleme
Wenn Sie dies festlegenldap_id_mapping = False
, schlägt das Starten des SSSD-Dienstes manchmal fehl. Der Grund für diesen Fehler liegt darin, dass Änderungen UIDs nicht unterstützt werden. Wir empfehlen Ihnen, den SSSD-Cache zu löschen, wenn Sie von der ID-Zuordnung zu POSIX-Attributen oder von POSIX-Attributen zur ID-Zuordnung wechseln. Weitere Informationen zur ID-Zuordnung und den ldap_id_mapping-Parametern finden Sie in der Manpage sssd-ldap (8) in der Linux-Befehlszeile.
Connect zur Linux-Instanz her
Wenn ein Benutzer die Verbindung zur Instance über einen SSH-Client herstellt, wird er zur Eingabe des Benutzernamens aufgefordert. Der Benutzer kann den Benutzernamen entweder im Format username@example.com
oder EXAMPLE\username
eingeben. Je nachdem, welche Linux-Distribution Sie verwenden, wird die Antwort etwa wie folgt aussehen:
Amazon Linux, Red Hat Enterprise Linux und 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%