Připojení virtuálního Ubuntu Linux k spravované doméně Azure Active Directory Domain Services

Aby se uživatelé mohli přihlašovat k virtuálním počítačům v Azure pomocí jedné sady přihlašovacích údajů, můžete virtuální počítače připojit ke spravované doméně služby Azure Active Directory Domain Services (Azure AD DS). Když připojíte virtuální počítač k Azure AD DS spravované doméně, můžete k přihlášení a správě serverů použít uživatelské účty a přihlašovací údaje z domény. Členství ve skupinách ze spravované domény vám také umožňují řídit přístup k souborům nebo službám na virtuálním počítači.

V tomto článku se popisuje, jak připojit Ubuntu Linux virtuální počítač ke spravované doméně.

Požadavky

K dokončení tohoto kurzu potřebujete následující prostředky a oprávnění:

  • Musíte mít aktivní předplatné Azure.
  • Tenant Azure Active Directory přidružený k vašemu předplatnému, který je synchronizovaný s místním adresářem nebo adresářem pouze cloudu.
  • Spravovaná Azure Active Directory Domain Services povolená a nakonfigurovaná ve vašem tenantovi Azure AD.
  • Uživatelský účet, který je součástí spravované domény. Ujistěte se, že atribut SAMAccountName pro uživatele není automaticky vygenerovaný. Pokud má více uživatelských účtů v tenantovi Azure AD stejný atribut mailNickname, pro každého uživatele se automaticky vygeneruje atribut SAMAccountName. Další informace najdete v tématu Synchronizace objektů a přihlašovacích údajů ve spravované doméně Azure Active Directory Domain Services.
  • Jedinečné názvy virtuálních počítačů s Linuxem, které mají maximálně 15 znaků, aby se předešlo zkrácení názvů, které můžou způsobovat konflikty ve službě Active Directory.

Vytvoření virtuálního počítače a připojení Ubuntu Linux počítače

Pokud máte existující virtuální Ubuntu Linux v Azure, připojte se k virtuálnímu počítači pomocí SSH a pak pokračujte dalším krokem a spusťte konfiguraci virtuálního počítače.

Pokud potřebujete vytvořit virtuální Ubuntu Linux virtuální počítač nebo chcete vytvořit testovací virtuální počítač pro použití s tímto článkem, můžete použít jednu z následujících metod:

Při vytváření virtuálního počítače věnujte pozornost nastavení virtuální sítě, abyste měli jistotu, že virtuální počítač může komunikovat se spravovanou doménou:

  • Nasaďte virtuální počítač do stejné nebo partnerské virtuální sítě, ve které jste povolili Azure AD Domain Services.
  • Nasaďte virtuální počítač do jiné podsítě než Azure AD Domain Services spravované domény.

Po nasazení virtuálního počítače postupujte podle pokynů pro připojení k virtuálnímu počítači pomocí SSH.

Konfigurace souboru hostitelů

Pokud chcete zajistit, aby byl název hostitele virtuálního počítače správně nakonfigurovaný pro spravovanou doménu, upravte soubor /etc/hosts a nastavte název hostitele:

sudo vi /etc/hosts

V souboru hosts aktualizujte adresu místního hostitele. V následujícím příkladu:

  • aaddscontoso.com je název domény DNS vaší spravované domény.
  • ubuntu je název hostitele virtuálního počítače s Ubuntu, který připojujete ke spravované doméně.

Aktualizujte tyto názvy vlastními hodnotami:

127.0.0.1 ubuntu.aaddscontoso.com ubuntu

Až to bude hotové, uložte a ukončete soubor hosts :wq pomocí příkazu editoru.

Instalace požadovaných balíčků

Virtuální počítač potřebuje k připojení virtuálního počítače ke spravované doméně několik dalších balíčků. Pokud chcete tyto balíčky nainstalovat a nakonfigurovat, aktualizujte a nainstalujte nástroje pro připojení k doméně pomocí . apt-get

Během instalace protokolu Kerberos zobrazí balíček krb5-user výzvu k zadání názvu sféry velkými písmeny. Pokud je název vaší spravované domény například aaddscontoso.com, zadejte AADDSCONTOSO.COM jako smyšlku. Instalace zapíše oddíly [realm] a [domain_realm] do konfiguračního souboru /etc/krb5.conf. Ujistěte se, že zadáte ve směšce všechna velká písmena:

sudo apt-get update
sudo apt-get install krb5-user samba sssd sssd-tools libnss-sss libpam-sss ntp ntpdate realmd adcli

Konfigurace protokolu NTP (Network Time Protocol)

Aby komunikace v doméně fungovala správně, musí se datum a čas virtuálního počítače s Ubuntu synchronizovat se spravovanou doménou. Přidejte název hostitele NTP spravované domény do souboru /etc/ntp.conf.

  1. Otevřete soubor ntp.conf v editoru:

    sudo vi /etc/ntp.conf
    
  2. V souboru ntp.conf vytvořte řádek pro přidání názvu DNS spravované domény. V následujícím příkladu je přidána položka pro aaddscontoso.com dat. Použijte vlastní název DNS:

    server aaddscontoso.com
    

    Až to bude hotové, uložte a ukončete soubor ntp.conf :wq pomocí příkazu editoru.

  3. Abyste se ujistili, že je virtuální počítač synchronizovaný se spravovanou doménou, je potřeba provést následující kroky:

    • Zastavení serveru NTP
    • Aktualizace data a času ze spravované domény
    • Spuštění služby NTP

    Spuštěním následujících příkazů dokončete tyto kroky. Pomocí příkazu použijte vlastní název ntpdate DNS:

    sudo systemctl stop ntp
    sudo ntpdate aaddscontoso.com
    sudo systemctl start ntp
    

Připojení virtuálního počítače ke spravované doméně

Teď, když jsou na virtuálním počítači nainstalované požadované balíčky a je nakonfigurovaný NTP, připojte virtuální počítač ke spravované doméně.

  1. Pomocí příkazu realm discover zjistěte spravovanou doménu. V následujícím příkladu se zjistí AADDSCONTOSO.COM. Zadejte vlastní název spravované domény v POLI VŠECHNA VELKÁ PÍSMENA:

    sudo realm discover AADDSCONTOSO.COM
    

    Pokud příkaz realm discover nemůže najít spravovanou doménu, projděte si následující kroky pro řešení potíží:

    • Ujistěte se, že je doména z virtuálního počítače dosažitelná. Zkuste ping aaddscontoso.com se podívat, jestli se vrátí kladná odpověď.
    • Zkontrolujte, že je virtuální počítač nasazený do stejné nebo partnerské virtuální sítě, ve které je spravovaná doména dostupná.
    • Ověřte, že nastavení serveru DNS pro virtuální síť byla aktualizována tak, aby odkazovat na řadiče domény spravované domény.
  2. Nyní inicializování protokolu Kerberos pomocí kinit příkazu . Zadejte uživatele, který je součástí spravované domény. V případě potřeby přidejte uživatelský účet do skupiny v Azure AD.

    Název spravované domény musí být znovu zadán velkými písmeny. V následujícím příkladu se účet contosoadmin@aaddscontoso.com s názvem používá k inicializaci protokolu Kerberos. Zadejte vlastní uživatelský účet, který je součástí spravované domény:

    kinit -V contosoadmin@AADDSCONTOSO.COM
    
  3. Nakonec pomocí příkazu připojte virtuální počítač ke spravované realm join doméně. Použijte stejný uživatelský účet, který je součástí spravované domény, kterou jste zadali v předchozím kinit příkazu, například contosoadmin@AADDSCONTOSO.COM :

    sudo realm join --verbose AADDSCONTOSO.COM -U 'contosoadmin@AADDSCONTOSO.COM' --install=/
    

Připojení virtuálního počítače ke spravované doméně chvíli trvá. Následující příklad výstupu ukazuje úspěšné připojení virtuálního počítače ke spravované doméně:

Successfully enrolled machine in realm

Pokud váš virtuální počítač nemůže úspěšně dokončit proces připojení k doméně, ujistěte se, že skupina zabezpečení sítě virtuálního počítače umožňuje odchozí provoz protokolu Kerberos na portu TCP + UDP 464 do podsítě virtuální sítě pro vaši spravovanou doménu.

Pokud se vám zobrazí chyba Nespecifikovaná chyba GSS. Podverší kód může poskytnout další informace (Server nebyl nalezen v databázi Kerberos), otevřete soubor /etc/krb5.conf, přidejte následující kód do části a [libdefaults] zkuste to znovu:

rdns=false

Aktualizace konfigurace SSSD

Jeden z balíčků nainstalovaných v předchozím kroku byl pro proces démon služby Zabezpečení systému (SSSD). Když se uživatel pokusí přihlásit k virtuálnímu počítače pomocí přihlašovacích údajů domény, předá SSSD požadavek poskytovateli ověřování. V tomto scénáři používá SSSD Azure AD DS k ověření požadavku.

  1. Otevřete soubor sssd.conf v editoru:

    sudo vi /etc/sssd/sssd.conf
    
  2. Zakomentování řádku pro use_fully_qualified_names následujícím způsobem:

    # use_fully_qualified_names = True
    

    Až to bude hotové, uložte a ukončete soubor sssd.conf :wq pomocí příkazu editoru.

  3. Pokud chcete změnu použít, restartujte službu SSSD:

    sudo systemctl restart sssd
    

Konfigurace nastavení uživatelského účtu a skupiny

Když je virtuální počítač připojený ke spravované doméně a nakonfigurovaný pro ověřování, je možné provést několik možností konfigurace uživatele. Mezi tyto změny konfigurace patří povolení ověřování pomocí hesla a automatické vytváření domovských adresářů na místním virtuálním počítači při prvním přihlášení uživatelů domény.

Povolit ověřování heslem pro SSH

Ve výchozím nastavení se uživatelé mohou k virtuálnímu počítače přihlašovat pouze pomocí ověřování založeného na veřejném klíči SSH. Ověřování pomocí hesla selže. Když připojíte virtuální počítač ke spravované doméně, musí tyto účty domény používat ověřování pomocí hesla. Následujícím způsobem aktualizujte konfiguraci SSH, aby bylo možné ověřování pomocí hesla.

  1. Otevřete soubor sshd_conf v editoru:

    sudo vi /etc/ssh/sshd_config
    
  2. Aktualizujte řádek pro PasswordAuthentication na yes:

    PasswordAuthentication yes
    

    Až to bude hotové, uložte a ukončete sshd_conf souboru pomocí :wq příkazu editoru.

  3. Pokud chcete tyto změny použít a nechat uživatele přihlásit se pomocí hesla, restartujte službu SSH:

    sudo systemctl restart ssh
    

Konfigurace automatického vytváření domovského adresáře

Pokud chcete povolit automatické vytváření domovského adresáře při prvním přihlášení uživatele, proveďte následující kroky:

  1. V editoru otevřete soubor /etc/pam.d/common-session:

    sudo vi /etc/pam.d/common-session
    
  2. Do tohoto souboru přidejte následující řádek pod řádek session optional pam_sss.so :

    session required pam_mkhomedir.so skel=/etc/skel/ umask=0077
    

    Až to bude hotové, uložte a ukončete soubor common-session :wq pomocí příkazu editoru.

Udělte skupině AAD DC Administrators oprávnění sudo.

Pokud chcete členům skupiny AAD správce řadiče domény udělit oprávnění správce na virtuálním počítači s Ubuntu, přidejte položku do souboru /etc/sudoers. Po přidání můžou členové skupiny AAD DC Administrators použít příkaz na sudo virtuálním počítači s Ubuntu.

  1. Otevřete soubor sudoers pro úpravy:

    sudo visudo
    
  2. Na konec souboru /etc/sudoers přidejte následující položku:

    # Add 'AAD DC Administrators' group members as admins.
    %AAD\ DC\ Administrators ALL=(ALL) NOPASSWD:ALL
    

    Až to bude hotové, uložte a ukončete editor Ctrl-X pomocí příkazu .

Přihlášení k virtuálnímu počítače pomocí účtu domény

Pokud chcete ověřit úspěšné připojení virtuálního počítače ke spravované doméně, spusťte nové připojení SSH pomocí uživatelského účtu domény. Ověřte, že byl vytvořen domovský adresář a že se použilo členství ve skupině z domény.

  1. Z konzoly vytvořte nové připojení SSH. Použijte účet domény, který patří do spravované domény, pomocí příkazu , například a pak zadejte adresu virtuálního počítače, například ssh -l contosoadmin@aaddscontoso.com ubuntu.aaddscontoso.com. Pokud použijete Azure Cloud Shell, místo interního názvu DNS použijte veřejnou IP adresu virtuálního počítače.

    ssh -l contosoadmin@AADDSCONTOSO.com ubuntu.aaddscontoso.com
    
  2. Po úspěšném připojení k virtuálnímu počítači ověřte, že se domovský adresář správně inicializoval:

    pwd
    

    Měli byste být v adresáři /home s vlastním adresářem, který odpovídá uživatelskému účtu.

  3. Teď zkontrolujte, jestli se správně řeší členství ve skupinách:

    id
    

    Měli byste vidět členství ve skupinách ze spravované domény.

  4. Pokud jste se k virtuálnímu počítači přihlásili jako člen skupiny AAD DC Administrators, zkontrolujte, jestli můžete správně použít sudo příkaz :

    sudo apt-get update
    

Další kroky

Pokud máte problémy s připojením virtuálního počítače ke spravované doméně nebo přihlášením pomocí účtu domény, podívejte se na řešení potíží s připojením k doméně.