Condividi tramite


Introduzione ad adutil - Utilità di Active Directory

Si applica a: SQL Server - Linux

Lo strumento adutil è un'utilità dell'interfaccia della riga di comando per la configurazione e la gestione dei domini di Windows Active Directory per SQL Server in Linux e contenitori, senza passare tra computer Windows a Linux per gestire Active Directory.

Il supporto per adutil è limitato ai casi d'uso per SQL Server.

Non è necessario usare adutil per abilitare l'autenticazione di Active Directory per SQL Server in Linux o contenitori. È anche possibile usare altre utilità, ad esempio ktpass, come illustrato in Esercitazione: Usare l'autenticazione di Active Directory con SQL Server in Linux.

Lo strumento adutil è progettato come una serie di comandi e sottocomandi, con flag aggiuntivi specificati come ulteriore input. Ogni comando di primo livello rappresenta una categoria di funzioni amministrative. In tale categoria ogni sottocomando è un'operazione. Questo articolo illustra come scaricare e iniziare a usare adutil.

Configurazione di adutil per LDAP su Secure Sockets Layer (SSL)

È consigliabile usare LDAPS (Lightweight Directory Access Protocol su SSL) anziché LDAP (Lightweight Directory Access Protocol). Per altre informazioni su LDAP, vedere Lightweight Directory Access Protocol (LDAP).

È possibile impostare l'opzione useLdaps su true nel file di configurazione adutil.json che si trova in /var/opt/mssql/.adutil/adutil.json quando viene eseguito nell'ambito dell'utente mssql. Questo esempio di codice JSON illustra come configurare l'impostazione:

{
    "useLdaps": "true"
}

Il valore predefinito dell'impostazione useLDAPS è false. Quando configuri questa impostazione e usi mssql-conf per creare il keytab (tabella delle chiavi), esegui mssql-conf come utente mssql, che puoi fare eseguendo il comando seguente:

sudo su mssql

Per configurare il keytab usando mssql-conf, vedi Creare il file keytab del servizio SQL Server usando mssql-conf.

Installare adutil

Se non si accetta il contratto di licenza con l'utente finale durante l'installazione, quando si esegue il comando adutil per la prima volta, è necessario eseguirlo con il --accept-eula flag (per tutte le distribuzioni).

  1. Scaricare il file di configurazione del repository Microsoft per Red Hat.

    RHEL 9

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/9/prod.repo
    

    RHEL 8

    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/8/prod.repo
    
  2. Se è stata installata una versione di anteprima precedente di adutil, rimuovere eventuali pacchetti adutil meno recenti usando il comando seguente.

    sudo yum remove adutil-preview
    
  3. Eseguire questi comandi per installare adutil. ACCEPT_EULA=Y accetta il contratto di licenza per adutil. Il contratto di licenza è disponibile nel percorso /usr/share/adutil/.

    sudo ACCEPT_EULA=Y yum install -y adutil
    

Uso di adutil per gestire Windows Active Directory

Scarica adutil in un host già aggiunto a un dominio di Active Directory. È anche necessario ottenere o rinnovare il ticket-granting ticket (TGT) di Kerberos con il comando kinit e un account di dominio con privilegi. L'account usato deve disporre dell'autorizzazione per creare account e nomi SPN (nomi dell'entità servizio) nel dominio.

Ecco alcuni esempi di azioni che è possibile eseguire con adutil. Per visualizzare un elenco di comandi di primo livello, digitare adutil --help. Il comando mostra i comandi di primo livello che è possibile usare per gestire e interagire con Active Directory.

$ adutil --help
adutil - A general AD utility
  Usage:
    adutil [account|delegation|group|keytab|machine|ou|spn|user|config]
  Subcommands:
    account      Functions for generic account operations
    delegation   Functions for configuring delegation permissions
    group        Functions for group management
    keytab       Functions for keytab management
    machine      Functions for managing machine accounts
    ou           Functions for managing organizational units
    spn          Functions for service principal name (SPN) management
    user         Functions for user account management
    config       Functions for modifying adutil configuration
  Flags:
       --version       Displays the program version string.
    -h --help          Displays help with available flag, subcommand, and positional value parameters.
    -d --debug         Display additional debugging information when making LDAP/Kerberos calls.
       --accept-eula   Accepts the current EULA for adutil. This has no effect if the EULA has already been accepted.

Per ottenere assistenza con il livello successivo di comandi, è possibile eseguire l’opzione della Guida seguente:

$ adutil spn --help
spn - Functions for service principal name (SPN) management
  Usage:
    spn [add|addauto|delete|search|show]
  Subcommands:
    add       Adds the provided SPNs to an account
    addauto   Automatically generate SPNs based on SPN component inputs and add them to an account
    delete    Deletes the provided SPNs from an account
    search    Search for an SPN by name or list all SPNs in the directory
    show      Get the list of SPNs assigned to an account
  Flags:
    --version       Displays the program version string.
    -h --help          Displays help with available flag, subcommand, and positional value parameters.
    -d --debug         Display additional debugging information when making LDAP/Kerberos calls.
       --accept-eula   Accepts the current EULA for adutil. This has no effect if the EULA has already been accepted.
$ adutil spn search --help
search - Search for an SPN by name or list all SPNs in the directory
  Usage:
     search [name]
  Positional Variables:
    name   OPTIONAL: Name of the SPN to search for in the directory. * can be used as a wildcard
  Flags:
    --version       Displays the program version string.
    -h --help          Displays help with available flag, subcommand, and positional value parameters.
    -n --name          OPTIONAL: Name of the SPN to search for in the directory. * can be used as a wildcard
    -f --filter        OPTIONAL: Filter for the search (User,Machine,Group)
    -o --ouname        OPTIONAL: Distinguished name of OU in which SPNs should be searched. If omitted, the entire directory will be searched.
    -d --debug         Display additional debugging information when making LDAP/Kerberos calls.
       --accept-eula   Accepts the current EULA for adutil. This has no effect if the EULA has already been accepted.

Esempi

Ogni comando è documentato in modo che sia possibile iniziare subito. Ecco alcune attività tipiche per cui si usa adutil per la configurazione o l'amministrazione dell'autenticazione di Active Directory per SQL Server in Linux e contenitori:

  • Creare un account in Active Directory:

    adutil user create --name sqluser --distname CN=sqluser,CN=Users,DC=CONTOSO,DC=COM
    
  • Creare nomi SPN associati a un account oppure a un servizio:

    adutil spn addauto -n sqluser -s MSSQLSvc -H mymachine.contoso.com -p 1433
    
  • Creare keytab tramite adutil:

    adutil keytab createauto -k /var/opt/mssql/secrets/mssql.keytab -p 1433 -H mymachine.contoso.com --password '<password>' -s MSSQLSvc
    

    Attenzione

    La password deve seguire i criteri password predefiniti di SQL Server. Per impostazione predefinita, la password deve essere composta da almeno otto caratteri e contenere caratteri di tre delle quattro categorie seguenti: lettere maiuscole, lettere minuscole, cifre in base 10 e simboli. Le password possono contenere fino a 128 caratteri. Usare password il più possibile lunghe e complesse.

È possibile vedere la pagina di manuale di riferimento di adutil con il comando man adutil.