Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Unisci manualmente un'istanza Amazon EC2 Linux al tuo Simple AD Active Directory
Oltre alle istanze Amazon EC2 Windows, puoi anche aggiungere determinate istanze Amazon EC2 Linux al tuo Simple AD Active Directory. Sono supportate le seguenti distribuzioni e versioni di istanze Linux:
-
AMI Amazon Linux 2018.03.0
-
Amazon Linux 2 (64-bit x86)
-
AMI Amazon Linux 2023
-
Red Hat Enterprise Linux 8 (HVM) (64-bit x86)
-
Ubuntu Server 18.04 LTS e Ubuntu Server 16.04 LTS
-
CentOS 7 x86-64
-
SUSE Linux Enterprise Server 15 SP1
Le altre distribuzioni e versioni di Linux potrebbero non funzionare, sebbene non siano state testate.
Prerequisiti
Prima di poter collegare un'istanza Amazon Linux, CentOS, Red Hat o Ubuntu alla tua directory, l'istanza deve essere avviata come specificato in Unisci senza problemi un'istanza Amazon EC2 Linux al tuo Simple AD Active Directory.
Alcune delle procedure seguenti, se non eseguite correttamente, possono rendere l'istanza non raggiungibile o inutilizzabile. Pertanto, ti consigliamo vivamente di effettuare un backup o effettuare uno snapshot dell'istanza prima di eseguire queste procedure.
Per collegare un'istanza Linux alla tua directory
Segui i passaggi descritti per l'istanza Linux specifica utilizzando una delle seguenti schede:
- Amazon Linux
-
-
Connettiti all'istanza tramite qualsiasi client SSH.
-
Configura l'istanza Linux per utilizzare gli indirizzi IP dei server DNS dei server DNS AWS Directory Service forniti. A tale scopo, puoi configurare l'istanza nel set di opzioni DHCP collegato al VPC o effettuare la configurazione manualmente sull'istanza. Se desideri impostarlo manualmente, consulta Come posso assegnare un server DNS statico a un' EC2 istanza Amazon privata nel AWS
Knowledge Center per indicazioni sull'impostazione del server DNS persistente per la tua particolare distribuzione e versione Linux.
-
Assicurati che l'istanza di Amazon Linux a 64 bit sia aggiornata.
sudo yum -y update
-
Installa i pacchetti Amazon Linux necessari sull'istanza Linux.
Alcuni di questi pacchetti potrebbero essere già installati.
Quando installi i pacchetti, potrebbero essere visualizzate diverse schermate popup di configurazione. In generale, puoi lasciare vuoti i campi di queste schermate.
- Amazon Linux
-
sudo yum install samba-common-tools realmd oddjob oddjob-mkhomedir sssd adcli krb5-workstation
-
Collega l'istanza alla directory tramite il comando seguente.
sudo realm join -U join_account@EXAMPLE.COM
example.com
--verbose
...
* Successfully enrolled machine in realm
-
Imposta il servizio SSH per permettere l'autenticazione della password.
-
Apri il file /etc/ssh/sshd_config
in un editor di testo.
sudo vi /etc/ssh/sshd_config
-
Imposta PasswordAuthentication
su yes
.
PasswordAuthentication yes
-
Riavvia il servizio SSH.
sudo systemctl restart sshd.service
In alternativa:
sudo service sshd restart
-
Dopo il riavvio dell'istanza, connettiti a essa tramite qualsiasi client SSH, quindi aggiungi il gruppo di amministratori di dominio all'elenco dei sudoers seguendo la procedura seguente:
-
Apri il file sudoers
tramite il comando seguente:
sudo visudo
-
Aggiungi il codice seguente alla fine del file sudoers
e salva il file.
## Add the "Domain Admins" group from the example.com
domain.
%Domain\ Admins@example.com
ALL=(ALL:ALL) ALL
(L'esempio precedente utilizza "\<space>" per creare il carattere di spazio di Linux).
- CentOS
-
-
Connettiti all'istanza tramite qualsiasi client SSH.
-
Configura l'istanza Linux per utilizzare gli indirizzi IP del server DNS dei server DNS AWS Directory Service forniti. A tale scopo, puoi configurare l'istanza nel set di opzioni DHCP collegato al VPC o effettuare la configurazione manualmente sull'istanza. Se desideri impostarlo manualmente, consulta Come posso assegnare un server DNS statico a un' EC2 istanza Amazon privata nel AWS
Knowledge Center per indicazioni sull'impostazione del server DNS persistente per la tua particolare distribuzione e versione Linux.
-
Assicurati che l'istanza di CentOS 7 sia aggiornata.
sudo yum -y update
-
Installa i pacchetti CentOS 7 necessari sull'istanza Linux.
Alcuni di questi pacchetti potrebbero essere già installati.
Quando installi i pacchetti, potrebbero essere visualizzate diverse schermate popup di configurazione. In generale, puoi lasciare vuoti i campi di queste schermate.
sudo yum -y install sssd realmd krb5-workstation samba-common-tools
-
Collega l'istanza alla directory tramite il comando seguente.
sudo realm join -U join_account@example.com
example.com
--verbose
...
* Successfully enrolled machine in realm
-
Imposta il servizio SSH per permettere l'autenticazione della password.
-
Apri il file /etc/ssh/sshd_config
in un editor di testo.
sudo vi /etc/ssh/sshd_config
-
Imposta PasswordAuthentication
su yes
.
PasswordAuthentication yes
-
Riavvia il servizio SSH.
sudo systemctl restart sshd.service
In alternativa:
sudo service sshd restart
-
Dopo il riavvio dell'istanza, connettiti a essa tramite qualsiasi client SSH, quindi aggiungi il gruppo di amministratori di dominio all'elenco dei sudoers seguendo la procedura seguente:
-
Apri il file sudoers
tramite il comando seguente:
sudo visudo
-
Aggiungi il codice seguente alla fine del file sudoers
e salva il file.
## Add the "Domain Admins" group from the example.com
domain.
%Domain\ Admins@example.com
ALL=(ALL:ALL) ALL
(L'esempio precedente utilizza "\<space>" per creare il carattere di spazio di Linux).
- Red hat
-
-
Connettiti all'istanza tramite qualsiasi client SSH.
-
Configura l'istanza Linux per utilizzare gli indirizzi IP del server DNS dei server DNS AWS Directory Service forniti. A tale scopo, puoi configurare l'istanza nel set di opzioni DHCP collegato al VPC o effettuare la configurazione manualmente sull'istanza. Se desideri impostarlo manualmente, consulta Come posso assegnare un server DNS statico a un' EC2 istanza Amazon privata nel AWS
Knowledge Center per indicazioni sull'impostazione del server DNS persistente per la tua particolare distribuzione e versione Linux.
-
Assicurati che l'istanza Red Hat - 64bit sia aggiornata.
sudo yum -y update
-
Installa i pacchetti Red Hat necessari nell'istanza Linux.
Alcuni di questi pacchetti potrebbero essere già installati.
Quando installi i pacchetti, potrebbero essere visualizzate diverse schermate popup di configurazione. In generale, puoi lasciare vuoti i campi di queste schermate.
sudo yum -y install sssd realmd krb5-workstation samba-common-tools
-
Collega l'istanza alla directory tramite il comando seguente.
sudo realm join -v -U join_account
example.com
--install=/
...
* Successfully enrolled machine in realm
-
Imposta il servizio SSH per permettere l'autenticazione della password.
-
Apri il file /etc/ssh/sshd_config
in un editor di testo.
sudo vi /etc/ssh/sshd_config
-
Imposta PasswordAuthentication
su yes
.
PasswordAuthentication yes
-
Riavvia il servizio SSH.
sudo systemctl restart sshd.service
In alternativa:
sudo service sshd restart
-
Dopo il riavvio dell'istanza, connettiti a essa tramite qualsiasi client SSH, quindi aggiungi il gruppo di amministratori di dominio all'elenco dei sudoers seguendo la procedura seguente:
-
Apri il file sudoers
tramite il comando seguente:
sudo visudo
-
Aggiungi il codice seguente alla fine del file sudoers
e salva il file.
## Add the "Domain Admins" group from the example.com
domain.
%Domain\ Admins@example.com
ALL=(ALL:ALL) ALL
(L'esempio precedente utilizza "\<space>" per creare il carattere di spazio di Linux).
- Ubuntu
-
-
Connettiti all'istanza tramite qualsiasi client SSH.
-
Configura l'istanza Linux per utilizzare gli indirizzi IP dei server DNS dei server DNS AWS Directory Service forniti. A tale scopo, puoi configurare l'istanza nel set di opzioni DHCP collegato al VPC o effettuare la configurazione manualmente sull'istanza. Se desideri impostarlo manualmente, consulta Come posso assegnare un server DNS statico a un' EC2 istanza Amazon privata nel AWS
Knowledge Center per indicazioni sull'impostazione del server DNS persistente per la tua particolare distribuzione e versione Linux.
-
Assicurati che l'istanza Ubuntu - 64bit sia aggiornata.
sudo apt-get update
sudo apt-get -y upgrade
-
Installa i pacchetti Ubuntu necessari nell'istanza Linux.
Alcuni di questi pacchetti potrebbero essere già installati.
Quando installi i pacchetti, potrebbero essere visualizzate diverse schermate popup di configurazione. In generale, puoi lasciare vuoti i campi di queste schermate.
sudo apt-get -y install sssd realmd krb5-user samba-common packagekit adcli
-
Disattivare la risoluzione DNS inversa e impostare l'area di autenticazione predefinita sul nome di dominio completo del dominio. Perché un realm possa funzionare, le istanze Ubuntu devono essere risolvibili in modo inverso nel DNS. Altrimenti, devi disabilitare reverse DNS in /etc/krb 5.conf come segue:
sudo vi /etc/krb5.conf
[libdefaults]
default_realm = EXAMPLE.COM
rdns = false
-
Collega l'istanza alla directory tramite il comando seguente.
sudo realm join -U join_account example.com
--verbose
join_account@example.com
-
Il AMAccountnome s di un account nel example.com
dominio che dispone dei privilegi di accesso al dominio. Inserisci la password dell'account quando richiesta. Per ulteriori informazioni sulla delega di questi privilegi, consulta Delega dei privilegi di accesso alle directory per Managed AWS Microsoft AD.
example.com
-
Il nome completo del DNS della directory.
...
* Successfully enrolled machine in realm
-
Imposta il servizio SSH per permettere l'autenticazione della password.
-
Apri il file /etc/ssh/sshd_config
in un editor di testo.
sudo vi /etc/ssh/sshd_config
-
Imposta PasswordAuthentication
su yes
.
PasswordAuthentication yes
-
Riavvia il servizio SSH.
sudo systemctl restart sshd.service
In alternativa:
sudo service sshd restart
-
Dopo il riavvio dell'istanza, connettiti a essa tramite qualsiasi client SSH, quindi aggiungi il gruppo di amministratori di dominio all'elenco dei sudoers seguendo la procedura seguente:
-
Apri il file sudoers
tramite il comando seguente:
sudo visudo
-
Aggiungi il codice seguente alla fine del file sudoers
e salva il file.
## Add the "Domain Admins" group from the example.com
domain.
%Domain\ Admins@example.com
ALL=(ALL:ALL) ALL
(L'esempio precedente utilizza "\<space>" per creare il carattere di spazio di Linux).
Quando si utilizza Simple AD, se crei un account utente su un'istanza Linux con l'opzione "Richiedi all'utente di modificare la password al primo accesso", tale utente non sarà in grado di modificare inizialmente la password utilizzando kpasswd. Per modificare la password la prima volta, un amministratore del dominio deve aggiornare la password utente tramite gli strumenti di gestione di Active Directory.
Gestione di account da un'istanza Linux
Per gestire gli account in Simple AD da un'istanza Linux, è necessario aggiornare file di configurazione specifici dell'istanza Linux come segue:
-
Imposta krb5_use_kdcinfo su False nel file/.conf. etc/sssd/sssd Per esempio:
[domain/example.com]
krb5_use_kdcinfo = False
-
Perché la configurazione diventi effettiva, devi riavviare il servizio sssd:
$ sudo systemctl restart sssd.service
In alternativa, puoi usare:
$ sudo service sssd start
-
Se si gestiscono utenti da un'istanza Linux CentOS, è anche necessario modificare il file /etc/smb.conf per includere:
[global]
workgroup = EXAMPLE.COM
realm = EXAMPLE.COM
netbios name = EXAMPLE
security = ads
Limitazioni di accesso all'account
Poiché tutti gli account vengono definiti in Active Directory, per impostazione predefinita tutti gli utenti nella directory possono accedere all'istanza. Puoi permettere solo a utenti specifici di accedere all'istanza con ad_access_filter in sssd.conf. Per esempio:
ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)
memberOf
-
Indica che agli utenti è consentito solo l'accesso all'istanza se membri di un determinato gruppo.
cn
-
Il nome canonico del gruppo a cui è consentito l'accesso. In questo esempio, il nome del gruppo admins
è.
ou
-
È l'unità organizzativa in cui si trova il gruppo di cui sopra. In questo esempio, l'unità organizzativa èTestou
.
dc
-
È il componente di dominio del tuo dominio. In questo esempio, example
.
dc
-
È un componente di dominio aggiuntivo. In questo esempio, com
.
È necessario aggiungere manualmente ad_access_filter a /etc/sssd/sssd.conf.
Apri il file /etc/sssd/sssd.conf in un editor di testo.
sudo vi /etc/sssd/sssd.conf
A questo punto, il tuo sssd.conf potrebbe avere questo aspetto:
[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)
Perché la configurazione diventi effettiva, devi riavviare il servizio sssd:
sudo systemctl restart sssd.service
In alternativa, puoi usare:
sudo service sssd restart
Mappatura degli ID
La mappatura degli ID può essere eseguita con due metodi per mantenere un'esperienza unificata tra UNIX/Linux User Identifier (UID) e Group Identifier (GID) e Windows e Active Directory Identità SID (Security Identifier). Questi metodi sono:
Mappatura centralizzata delle identità degli utenti in Active Directory richiede Portable Operating System Interface o POSIX.
Mappatura centralizzata dell'identità degli utenti
Active Directory o un altro servizio LDAP (Lightweight Directory Access Protocol) fornisce UID e GID agli utenti Linux. In Active Directory, questi identificatori vengono memorizzati negli attributi degli utenti se l'estensione POSIX è configurata:
UID - Il nome utente Linux (String)
Numero UID: il numero ID utente Linux (numero intero)
Numero GID: il numero ID del gruppo Linux (numero intero)
Per configurare un'istanza Linux in cui utilizzare l'UID e il GID di Active Directory, impostato ldap_id_mapping = False
nel file sssd.conf. Prima di impostare questo valore, verifica di aver aggiunto un UID, un numero UID e un numero GID agli utenti e ai gruppi in Active Directory.
Mappatura distribuita delle identità degli utenti
Se Active Directory non ha l'estensione POSIX o se scegli di non gestire centralmente la mappatura delle identità, Linux può calcolare i valori UID e GID. Linux utilizza l'identificatore di sicurezza (SID) univoco dell'utente per mantenere la coerenza.
Per configurare la mappatura distribuita degli ID utente, impostala ldap_id_mapping = True
nel file sssd.conf.
Problemi comuni
Se lo impostildap_id_mapping = False
, a volte l'avvio del servizio SSSD fallirà. Il motivo di questo errore è dovuto al fatto che le modifiche UIDs non sono supportate. Ti consigliamo di eliminare la cache SSSD ogni volta che passi dalla mappatura degli ID agli attributi POSIX o dagli attributi POSIX alla mappatura degli ID. Per ulteriori dettagli sulla mappatura degli ID e sui parametri ldap_id_mapping, consultate la pagina man sssd-ldap (8) nella riga di comando di Linux.
Connect all'istanza Linux
Quando un utente effettua la connessione all'istanza tramite un client SSH, gli verrà richiesto di inserire il proprio nome utente. L'utente può immettere il nome utente nei formati username@example.com
o EXAMPLE\username
. La risposta apparirà simile alla seguente, a seconda della distribuzione Linux utilizzata:
Amazon Linux, Red Hat Enterprise Linux e 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%