3.7 Autenticazione LDAP

Oltre all'autenticazione del database, Sentinel Sentinel Rapid Deployment supporta l'autenticazione LDAP. È possibile abilitare gli utenti al login in Sentinel Rapid Deployment utilizzando le rispettive credenziali di Novell eDirectory o Microsoft Active Directory configurando il server Sentinel Rapid Deployment per l'autenticazione LDAP.

3.7.1 Panoramica

È possibile configurare il server Sentinel Rapid Deployment per l'autenticazione LDAP su una connessione SSL sicura con o senza l'impiego di ricerche anonime nella directory LDAP.

NOTA:se si disabilita la ricerca anonima nella directory LDAP, evitare di configurare il server Sentinel Rapid Deployment per l'uso della ricerca anonima.

  • Ricerca anonima: quando si creano account utenti LDAP Sentinel Rapid Deployment, è necessario specificare il nome utente della directory, ma non il nome distinto (DN) dell'utente.

    Quando l'utente LDAP esegue il login a Sentinel Rapid Deployment, il server SRD esegue una ricerca anonima nella directory LDAP in base al nome utente specificato, individua il DN corrispondente, quindi autentica il login utente a fronte della directory LDAP utilizzando il DN.

  • Ricerca non anonima: quando si creano account utenti LDAP Sentinel Rapid Deployment, è necessario specificare sia il nome utente della directory, sia il DN dell'utente.

    Quando l'utente LDAP esegue il login a Sentinel Rapid Deployment, il server SRD autentica il login utente a fronte della directory LDAP utilizzando il DN dell'utente specificato e non esegue alcuna ricerca anonima nella directory LDAP.

    Esiste un ulteriore approccio applicabile solo ad Active Directory. Per ulteriori informazioni, vedere Autenticazione LDAP non anonima utilizzando l'attributo UserPrincipalName in Active Directory.

3.7.2 Prerequisiti

Esportazione del certificato CA del server LDAP

La connessione SSL sicura al server LDAP richiede l'esportazione del certificato CA del server LDAP in un file codificato in base64.

Abilitazione della ricerca anonima nella directory LDAP

Per eseguire l'autenticazione LDAP utilizzando la ricerca anonima, è necessario abilitare questa funzione nella directory LDAP. Per default, la ricerca anonima viene abilitata in eDirectory e disabilitata in Active Directory.

Per abilitare la ricerca anonima nella directory LDAP, fare riferimento a quanto segue:

3.7.3 Configurazione del server Sentinel per l'autenticazione LDAP

  1. Assicurarsi che i prerequisiti riportati inSezione 3.7.2, Prerequisiti siano soddisfatti.

  2. Eseguire il login al server Sentinel Rapid Deployment come utente radice.

  3. Copiare il file del certificato CA del server LDAP nella directory <directory_di_installazione>/config.

  4. Impostare la proprietà e le autorizzazioni del file del certificato come indicato di seguito:

    chown novell:novell <directory_di_installazione>/config/<file-cert>

    chmod 700 <directory_di_installazione>/config/<file-cert>

  5. Passare all'utente novell:

    su - novell
    
  6. Passare alla directory <directory_di_installazione>/bin.

  7. Eseguire lo script di configurazione dell'autenticazione LDAP:

    ./ldap_auth_config.sh

    Lo script esegue un backup dei file di configurazione auth.login e configuration.xml nella directory config come auth.login.sav e configuration.xml.sav prima di modificarli per l'autenticazione LDAP.

  8. Specificare le seguenti informazioni.

    Premere Invio per accettare il valore di default oppure specificare un nuovo valore per ignorare quello di default.

    • Ubicazione installazione di Sentinel: directory di installazione sul server Sentinel.

    • Nome host o indirizzo IP server LDAP: nome host o indirizzo IP del computer in cui è installato il server LDAP. Il valore di default è localhost. Tuttavia, è consigliato non installare il server LDAP sullo stesso computer in cui è installato il server di Sentinel

    • Porta server LDAP: numero di porta per una connessione LDAP sicura. Il numero di porta di default è 636.

    • Ricerche anonime nella directory LDAP: specificare s per eseguire le ricerche anonime. Altrimenti specificare n. Il valore di default è s.

      Se si specifica n, completare la configurazione LDAP e seguire la procedura indicata nella sezione Autenticazione LDAP senza l'esecuzione di ricerche anonime.

    • Directory LDAP utilizzata: questo parametro è visualizzato solo se si è specificato "s" per le ricerche anonime. Specificare 1 per Novell eDirectory o 2 per Active Directory. Il valore di default è 1.

    • Sottoalbero LDAP per ricerca utenti: questo parametro è visualizzato solo se si è specificato "s" per le ricerche anonime. È il sottoalbero della directory che contiene gli oggetti Utente. Di seguito sono riportati alcuni esempi su come specificare il sottoalbero in eDirectory e Active Directory:

      • eDirectory:

        ou=users,o=novell
        

        NOTA:per eDirectory, se non si specifica alcun sottoalbero, la ricerca viene eseguita in tutta la directory.

      • Active Directory:

        CN=users,DC=TESTAD,DC=provo, DC=novell,DC=com
        

        NOTA:per Active Directory, non è possibile lasciare vuoto il sottoalbero.

    • Nome file del certificato server LDAP: nome file del certificato CA di eDirectory/Active Directory copiato al Passaggio 3.

  9. Immettere uno dei seguenti comandi:

    • s per accettare i valori immessi.

    • n per immettere nuovi valori.

    • q per uscire dalla configurazione.

    Al completamento della configurazione:

    • Il certificato del server LDAP viene aggiunto in un archivio chiavi denominato <directory_di_installazione>/config/ldap_server.keystore.

    • I file di configurazione auth.login e configuration.xml nella directory <directory_di_installazione>/config vengono aggiornati per abilitare l'autenticazione LDAP.

  10. Immettere s per riavviare il servizio Sentinel.

    IMPORTANTE:in caso di errori, ripristinare le modifiche apportate ai file di configurazione auth.login e configuration.xml nella directory config:

    cp -p auth.login.sav auth.login
    cp -p configuration.xml.sav configuration.xml
    
  11. (Condizionale) Se si è specificato n per Ricerche anonime nella directory LDAP:, continuare con Autenticazione LDAP senza l'esecuzione di ricerche anonime.

Autenticazione LDAP senza l'esecuzione di ricerche anonime

Se durante la configurazione dell'autenticazione LDAP di Sentinel Rapid Deployment si è specificato "n" per le ricerche anonime nella directory LDAP, l'autenticazione LDAP non esegue la ricerca anonima.

Quando si crea un account utente LDAP da Sentinel Control Center, assicurarsi di specificare DN utente LDAP per l'autenticazione LDAP non anonima. È possibile utilizzare questo approccio sia per eDirectory sia per Active Directory.

Per ulteriori informazioni, vedere Creating an LDAP User Account for Sentinel in Sentinel Rapid Deployment User Guide (in lingua inglese).

Inoltre, per Active Directory, è possibile utilizzare un approccio alternativo per eseguire l'autenticazione LDAP senza ricerche anonime. Per ulteriori informazioni, vedere Autenticazione LDAP non anonima utilizzando l'attributo UserPrincipalName in Active Directory.

Autenticazione LDAP non anonima utilizzando l'attributo UserPrincipalName in Active Directory

Per Active Directory, è altresì possibile eseguire l'autenticazione LDAP senza ricerche anonime, utilizzando l'attributo userPrincipalName:

  1. Assicurarsi che l'attributo userPrincipalName sia impostato a <sAMAccountName@dominio> per l'utente Active Directory.

    Per ulteriori informazioni, vedere User-Principal-Name Attribute (in lingua inglese).

  2. Assicurarsi di aver eseguito dal Passaggio 1 al Passaggio 10 e di aver specificato n per Ricerche anonime nella directory LDAP:.

  3. Nel server Sentinel modificare la sezione LdapLogin nel file <Directory di installazione>/config/auth.login:

    LdapLogin { 
     com.sun.security.auth.module.LdapLoginModule required 
     userProvider="ldap://LDAP server IP:636/DN of the Container that contains the user objects" 
     authIdentity="{USERNAME}@Domain Name" 
     userFilter="(&(sAMAccountName={USERNAME})(objectclass=user))" 
     useSSL=true; 
     }; 
    

    Ad esempio:

    LdapLogin { 
     com.sun.security.auth.module.LdapLoginModule required 
     userProvider="ldap://137.65.151.12:636/DC=Test-AD,DC=provo,DC=novell,DC=com" 
     authIdentity="{USERNAME}@Test-AD.provo.novell.com" 
     userFilter="(&(sAMAccountName={USERNAME})(objectclass=user))" 
     useSSL=true; 
     }; 
    
  4. Riavviare il servizio Sentinel:

    /etc/init.d/sentinel stop
    
    /etc/init.d/sentinel start
    

3.7.4 Configurazione di più server LDAP per failover

Per configurare uno o più server LDAP come server di failover per l'autenticazione LDAP:

  1. Assicurarsi di aver seguito la procedura indicata dal Passaggio 2 al Passaggio 10 per configurare il server Sentinel per l'autenticazione LDAP a fronte del server LDAP primario.

  2. Eseguire il login al server Sentinel come utente novell.

  3. Interrompere il servizio Sentinel.

    /etc/init.d/sentinel stop
    
  4. Passare alla directory <directory_di_installazione>/config:

    cd <directory_di_installazione>/config
    
  5. Aprire il file auth.login per modificarlo.

    vi auth.login
    
  6. Aggiornare userProvider nella sezione LdapLogin per specificare più URL LDAP. Separare ciascun URL con spazi.

    Ad esempio:

    userProvider="ldap://ldap-url1 ldap://ldap-url2"
    

    Per Active Directory, assicurarsi che il sottoalbero nell'URL LDAP non sia vuoto.

    Per ulteriori informazioni su come specificare più URL LDAP, vedere la descrizione dell'opzione userProvider in Class LdapLogin Module.

  7. Salvare le modifiche.

  8. Esportare il certificato di ciascun server LDAP di failover e copiare il file del certificato nella directory <directory_di_installazione>/config sul server Sentinel.

    Per ulteriori informazioni, vedere Esportazione del certificato CA del server LDAP.

  9. Assicurarsi che vengano impostate la proprietà e le autorizzazioni necessarie del file del certificato per ciascun server LDAP di failover.

    chown novell:novell <directory_di_installazione>/config/<cert-file>
    
    chmod 700 <directory_di_installazione>/config/<cert-file>
    
  10. Aggiungere ciascun certificato del server LDAP di failover all'archivio chiavi ldap_server.keystore creato al Passaggio 8 nella sezione Configurazione del server Sentinel per l'autenticazione LDAP.

    <directory_di_installazione>/jre64/bin/keytool -importcert -noprompt -trustcacerts -file <certificate-file> -alias <alias_name> -keystore ldap_server.keystore -storepass sentinel
    

    Sostituire <file-certificato> con il nome file del certificato LDAP in formato codificato in base64 e sostituire <nome_alias> con il nome alias del certificato da importare.

    IMPORTANTE:assicurarsi di specificare l'alias. Se non è specificato alcun alias, per default keytool considera mykey come alias. Quando si importano più certificati in un archivio chiavi senza specificare un alias, keytool riporta un errore a indicare che l'alias esiste già.

  11. Avviare il servizio Sentinel.

    /etc/init.d/sentinel start
    

La connessione del servizio al server LDAP di failover potrebbe risultare impossibile se il timeout del server Sentinel si verifica prima che questo rilevi che il server LDAP primario è inattivo. Affinché il server Sentinel si connetta al server LDAP di failover senza timeout:

  1. Eseguire il login al server Sentinel come utente radice.

  2. Aprire il file sysct1.conf per modificarlo:

    vi /etc/sysctl.conf
    
  3. Assicurarsi che il valore net.ipv4.tcp_syn_retries sia impostato a 3. Se la voce non esiste, aggiungere la voce. Salvare il file:

    net.ipv4.tcp_syn_retries = 3
    
  4. Eseguire il comando per applicare le modifiche:

    /sbin/sysctl -p
    
    /sbin/sysctl -w net.ipv4.route.flush=1
    
  5. Impostare il valore di timeout del server Sentinel aggiungendo il parametro -Desecurity.remote.timeout=60 in control_center.sh e solution_designer.sh nella directory <directory_di_installazione>/bin:

    control_center.sh:

    "<directory_di_installazione>/jre/bin/java" $MEMORY -Dcom.esecurity.configurationfile=$ESEC_CONF_FILE -Desecurity.cache.directory="<directory_di_installazione>/data/control_center.cache" -Desecurity.communication.service="sentinel_client" -Dfile.encoding=UTF8 -Desecurity.dataobjects.config.file="/xml/BaseMetaData.xml,/xml/WorkflowMetaData.xml,/xml/ActMetaData.xml" -Djava.util.logging.config.file="<directory_di_installazione>/config/control_center_log.prop" -Djava.security.auth.login.config="<directory_di_installazione>/config/auth.login" $SENTINEL_LANG_PROP $SENTINEL_CTRY_PROP -Dice.pilots.html4.baseFontFamily="Arial Unicode MS" -Desecurity.remote.timeout=60 -jar ../lib/console.jar 
    

    solution_designer.sh:

    "<directory_di_installazione>/jre/bin/java" -classpath $LOCAL_CLASSPATH $MEMORY -Dcom.esecurity.configurationfile="$ESEC_CONF_FILE" -Dsentinel.installer.jar.location="<directory_di_installazione>/lib/contentinstaller.jar" -Desecurity.communication.service="sentinel_client" -Dfile.encoding=UTF8 -Desecurity.dataobjects.config.file="/xml/BaseMetaData.xml,/xml/WorkflowMetaData.xml,/xml/ActMetaData.xml" -Djava.util.logging.config.file="<directory_di_installazione>/config/solution_designer_log.prop" -Djava.security.auth.login.config="<directory_di_installazione>/config/auth.login" $SENTINEL_LANG_PROP $SENTINEL_CTRY_PROP -Desecurity.cache.directory=../data/solution_designer.cache -Desecurity.remote.timeout=60 com.esecurity.content.exportUI.ContentPackBuilder
    

3.7.5 Configurazione dell'autenticazione LDAP per più domini Active Directory

Se gli utenti LDAP da autenticare risiedono in più domini Active Directory, è possibile configurare il server Sentinel Rapid Deployment per l'autenticazione LDAP come indicato di seguito:

  1. Assicurarsi di aver seguito la procedura indicata dal Passaggio 2 al Passaggio 10 per configurare il server Sentinel per l'autenticazione LDAP a fronte del controller del dominio Active Directory del primo dominio. Assicurarsi inoltre di aver specificato n per Ricerche anonime nella directory LDAP:.

  2. Eseguire il login al server Sentinel come utente novell.

  3. Interrompere il servizio Sentinel.

    /etc/init.d/sentinel stop
    
  4. Passare alla directory <directory_di_installazione>/config:

    cd <directory_di_installazione>/config
    
  5. Aprire il file auth.login per modificarlo.

    vi auth.login
    
  6. Modificare la sezione LdapLogin per specificare più URL LDAP separati da spazi.

    Ad esempio:

    LdapLogin {
            com.sun.security.auth.module.LdapLoginModule required
            userProvider="ldap://<IP of the domain 1 domain controller>:636 ldap://<IP of the domain 2 domain controller>:636"
            authIdentity="{USERNAME}"
            useSSL=true;
    };
    

    Per ulteriori informazioni su come specificare più URL LDAP, vedere la descrizione dell'opzione userProvider in Class LdapLogin Module.

  7. Salvare le modifiche.

  8. Esportare il certificato del controller di ciascun dominio e copiare i file del certificato nella directory <directory_di_installazione>/config sul server Sentinel.

    Per ulteriori informazioni, vedere Esportazione del certificato CA del server LDAP.

  9. Assicurarsi che vengano impostate la proprietà e le autorizzazioni necessarie dei file del certificato.

    chown novell:novell <directory_di_installazione>/config/<cert-file>
    
    chmod 700 <directory_di_installazione>/config/<cert-file>
    
  10. Aggiungere ciascun certificato all'archivio chiavi ldap_server.keystore creato al Passaggio 8 nella sezione Configurazione del server Sentinel per l'autenticazione LDAP.

    <directory_di_installazione>/jre64/bin/keytool -importcert -noprompt -trustcacerts -file <certificate-file> -alias <alias_name> -keystore ldap_server.keystore -storepass sentinel
    

    Sostituire <file-certificato> con il nome file del certificato LDAP in formato codificato in base64 e sostituire <nome_alias> con il nome alias del certificato da importare.

    IMPORTANTE:assicurarsi di specificare l'alias. Se non è specificato alcun alias, per default keytool considera mykey come alias. Quando si importano più certificati in un archivio chiavi senza specificare un alias, keytool riporta un errore a indicare che l'alias esiste già.

  11. Avviare il servizio Sentinel.

    /etc/init.d/sentinel start
    

3.7.6 Login utilizzando le credenziali dell'utente LDAP

Una volta configurato il server Sentinel per l'autenticazione LDAP, in Sentinel Control Center è possibile creare account utenti LDAP di Sentinel. Per ulteriori informazioni sulla creazione di account utenti LDAP, vedere Creating an LDAP User Account for Sentinel in Sentinel Rapid Deployment User Guide (in lingua inglese).

Dopo aver creato l'account utente LDAP, è possibile eseguire il login a interfaccia Web di Sentinel Rapid Deployment, Sentinel Control Center e Sentinel Solution Designer utilizzando il nome utente e la password LDAP.

NOTA:per modificare una configurazione LDAP esistente, eseguire di nuovo lo script ldap_auth_config e specificare i nuovi valori per i parametri.