Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione
Documentazione di Apigee X. Informazioni
Questa sezione fornisce informazioni e indicazioni sulla risoluzione dei problemi relativi a OpenLDAP.
SMTP è disattivato e gli utenti devono reimpostare password
Sintomo
Se SMTP non è configurato nella UI di Edge, i nuovi utenti aggiunti a Edge devono poter impostare password.
Messaggi di errore
Unknown username and password combination.
Possibili cause
I nuovi utenti non riescono a ricevere un'email dal messaggio "Hai dimenticato la password?" link per impostare una password perché SMTP non è configurato.
Risoluzione
Puoi risolvere il problema in uno dei seguenti modi:
Soluzione 1: Configura server SMTP
Configura il server SMTP in modo che imposti una nuova password per l'utente seguendo le istruzioni fornite nella documentazione.
Soluzione 2: utilizzo LDAP
Se non riesci a configurare il server SMTP, utilizza i comandi LDAP seguenti per impostare la nuova password per un utente:
- Un amministratore dell'organizzazione esistente deve aggiungere l'utente specifico tramite la UI Edge, come illustrato di seguito:
- Utilizza il comando ldapsearch per trovare il nome distinto dell'utente
(dn) e reindirizza l'output a un file:
ldapsearch -w Secret123 -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h localhost -p 10389 > ldap.txt
Di seguito è riportato un esempio di voce dn per un utente, insieme agli attributi per l'utente:
dn:uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com mail: apigee_validator@apigee.com userPassword:: e1NTSEF9b0FrMFFXVmFjbWRxM1BVaFZzMnllWGZMdkNvNjMwNTJlUDZYN3c9PQ= = uid: f7a4a4a5-7c43-4168-a47e-6e9a1417cc29 objectClass: inetOrgPerson sn: Validator cn: apigee
- Apri il file ldap.txt e trova il dn del nuovo utente che è stato aggiunto. in base all'attributo email del nuovo utente.
- Esegui il comando ldappassword per aggiungere una password per il nuovo utente
utilizzando il proprio DN. In questo esempio, stai impostando la password dell'utente su Apigee123:
ldappasswd -h localhost -p 10389 -D "cn=manager,dc=apigee,dc=com" -W -s Apigee123 "uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com"
- Accedi alla UI Edge come nuovo utente con la password definita nel passaggio precedente. La l'utente può impostare una nuova password dopo aver eseguito l'accesso alla UI.
Il protocollo LDAP non si sta replicando
Sintomo
Molte installazioni Edge dispongono di più data center, ad esempio DC-1 e DC-2. Durante il logging nella UI Edge di DC-1, in qualità di amministratore dell'organizzazione, puoi visualizzare l'elenco degli utenti, ma non viene visualizzato nella UI di Edge in DC-2.
Messaggi di errore
Non viene visualizzato alcun errore, l'UI Edge semplicemente non mostra l'elenco di utenti che avrebbero dovuto essere replicate in tutti i server OpenLDAP.
Possibili cause
In genere la causa di questo problema è una configurazione di replica OpenLDAP configurata in modo errato, non l'installazione stessa. Inoltre, la replica può interrompersi se la rete tra i server OpenLDAP non consente il traffico sulla porta 10389.
Diagnosi
Per diagnosticare il problema:
- Controlla se ldapsearch restituisce i dati da ciascun server OpenLDAP:
ldapsearch -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -h <host-ip> -p 10389
- Verifica se puoi connetterti a ciascun nodo OpenLDAP dagli altri nodi OpenLDAP sulla porta 10389.
Se telnet è installato, utilizza il seguente comando:
telnet <OpenLDAP_Peer_IP> 10389
-
Se telnet non è disponibile, utilizza netcat per controllare la connettività come segue:
nc -vz <OpenLDAP_Peer_IP> 10389
- Verifica la configurazione della replica nel file seguente:
/opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
Il file deve contenere una configurazione come la seguente:
olcSyncRepl: rid=001 provider=ldap://__OTHER_LDAP_SERVER__/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials=__LDAP_PASSWORD__ searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- Inoltre, verifica nello stesso file il valore dell'attributo olcMirrorMode. Dovrebbe essere
impostato sul valore TRUE:
grep olcMirrorMode /opt/apigee/data/apigee-openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif
- Verifica la presenza di regole wrapper iptables e tcp. Rimuovi tutte le regole che non consentono ai server OpenLDAP peer per comunicare tra loro. Collaborare con l'amministratore di rete per impostare le regole in modo appropriato.
- Assicurati che la password di sistema OpenLDAP sia la stessa su tutti i nodi OpenLDAP.
- Verifica la presenza di caratteri nascosti nei file di configurazione ldif utilizzati per configurare la replica OpenLDAP N-Way eseguendo dos2unix sui file ldif che sono stati per aggiornare la configurazione. Generalmente, un file ldif che contiene caratteri non validi può non sia possibile eseguire il comando ldapmodify, pertanto la replica potrebbe non essere configurata. Rimuovi eventuali problemi e salvare i file di configurazione.
Se il problema persiste, contatta Supporto Apigee per l'assistenza nella configurazione della replica OpenLDAP N-Way.
Impossibile avviare OpenLDAP
Sintomo
OpenLDAP non si avvia.
Messaggi di errore
SLAPD Dead But Pid File Exists
Possibili cause
Questo problema è causato in genere da un file di blocco che viene lasciato nel file system e che richiede da rimuovere.
Diagnosi
Per diagnosticare il problema:
- Verifica la presenza di un file pid o di blocco del processo slapd OpenLDAP nella seguente posizione:
/opt/apigee/var/run/apigee-openldap/apigee-openldap.lock /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- Elimina il file Lock and pid, se trovato, e prova a riavviare openldap.
rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.lock Rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- Se viene avviato il processo slapd OpenLDAP, salta i passaggi seguenti.
- Se il processo slapd OpenLDAP non viene avviato, prova a eseguire slapd in modalità di debug e cerca
eventuali errori:
slapd -h ldap://:10389/ -u apigee -F /opt/apigee/data/apigee-openldap/slapd.d -d 255
- Gli errori possono rimandare a problemi delle risorse. Controlla l'utilizzo di memoria e CPU sul sistema.
- Controlla la versione di OpenLDAP ed esegui l'upgrade se è obsoleta. Verifica la presenza delle versioni supportate di
OpenLDAP nel documento supported Software (Software supportato).
slapd -V
- Utilizza lo strace per risolvere i problemi del processo slapd e per fornire l'output dello strace a
Assistenza Apigee:
strace -tt -T -f -F -i -v -e read=all -s 8192 -e write=all -o /tmp/strace.out -p <pid>
Danneggiamento dei dati OpenLDAP
Sintomo
Gli utenti non possono più eseguire chiamate di gestione o accedere alla UI Edge. Utilizzo di ldapsearch utilità per eseguire query sugli utenti può indicare che l'utente esiste nel datastore LDAP o può identificare di utenti o ruoli mancanti.
Messaggi di errore
Unknown username and password combination.
Possibili cause
In genere, questo problema può essere osservato a causa del danneggiamento dei dati OpenLDAP. Di solito, OpenLDAP i dati non si danneggiano. Ma nei rari casi in cui lo sia, la corruzione potrebbe essere dovuta guasti al disco di sistema o problemi di spazio su disco.
Diagnosi
- Controlla lo spazio su disco nel sistema in cui è installato OpenLDAP utilizzando il seguente comando:
du -m /opt
- Se vedi che lo spazio su disco utilizzato è molto vicino al 100%, la causa potrebbe essere per questo problema è l'esaurimento dello spazio su disco sul sistema.
Risoluzione
Se lo spazio su disco nel sistema è esaurito o è quasi esaurito, aggiungi per assicurarti di avere spazio sufficiente.
Quando disponi di spazio sufficiente su disco, utilizza una delle seguenti soluzioni per gestire i dati LDAP problema di corruzione:
- Ripristina i dati OpenLDAP dal backup.
- Pulisci il database OpenLDAP.
Soluzione 1 - Ripristinare Dati LDAP dal backup
Su un nodo OpenLDAP funzionante, esegui un backup. Il backup deve essere eseguito regolarmente. Consulta Guida operativa di Apigee Private Cloud per le best practice sui backup:
slapcat -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
Puoi seguire questi passaggi per ripristinare i dati OpenLDAP da un backup valido.
- Arresta il nodo OpenLDAP per cui è necessario ripristinare i dati:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Passa alla directory dei dati OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Esegui il backup dei dati OpenLDAP esistenti utilizzando il comando di spostamento:
mv ldap ldap_orig
- Passa all'utente apigee:
su apigee
- Dalla directory
/opt/apigee/data/apigee-openldap
, crea nuovi dati OpenLDAP con il nome originale:mkdir ldap
- Esegui il backup della sottodirectory ldap_orig/DB_CONFIG del passaggio 3 e copialo nel
la directory openldap.
cp ldap_orig/DB_CONFIG ldap
- Per ripristinare i dati dal backup effettuato con slapcat, utilizza slapadd per importare il file ldif che
contiene i dati validi:
slapadd -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
- Avvia il processo OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
Soluzione 2: pulire il LDAP database
I seguenti passaggi cancellano il database OpenLDAP per eseguire un nuovo avvio. Questa soluzione può da utilizzare se non è disponibile un backup dei dati dell'ultimo stato in cui i dati OpenLDAP stavano lavorando.
- Interrompi il servizio OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Passa alla directory dei dati OpenLDAP:
cd /opt/apigee/data/apigee-openldap
- Esegui il backup dei dati OpenLDAP esistenti utilizzando il comando di spostamento:
mv ldap ldap_orig
- Passa all'utente apigee:
su apigee
- Crea una nuova directory di dati OpenLDAP con il nome originale:
mkdir ldap
- Prendi la sottodirectory ldap_orig/DB_CONFIG di backup dal passaggio 3 e copiala in openldap
directory:
cp ldap_orig/DB_CONFIG ldap
- Riavvia il processo OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
- Riavvia il server di gestione per forzare l'aggiornamento delle connessioni a OpenLDAP:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Soluzione 3 - Reimposta OpenLDAP a un'installazione di base
Se la soluzione 2 non risolve il problema, puoi reimpostare OpenLDAP a un'installazione di base. come descritto in questa sezione.
Prerequisiti
Per reimpostare OpenLDAP, sono necessari i seguenti prerequisiti:
- La possibilità di eseguire la configurazione con l'amministratore di sistema e le credenziali LDAP radice.
- Accesso all'utilità
ldapadd
. - Il file di configurazione invisibile originale salvato per il nodo gestione/LDAP.
Per reimpostare OpenLDAP, segui questi passaggi:
- Reinstalla OpenLDAP e Management Server.
- Arresta il server
openldap
:apigee-service apigee-openldap stop
- Elimina la cartella di dati
openldap
danneggiata:rm -rf /opt/apigee/data/apigee-openldap
- Disinstalla il componente
openldap
:apigee-service apigee-openldap uninstall
- Reinstalla il componente
openldap
usando lo stesso file di configurazione usato per l'installazione iniziale:/opt/apigee/apigee-setup/bin/setup.sh -p ld -f configfile
doveconfigfile
è il nome del file di configurazione. - Reinstalla il server di gestione utilizzando il file di configurazione originale:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f configfile
After doing these steps, Management API calls should work again using the
sysadmin
account only. However, it will not be possible to log into the Edge UI, and Management API calls with any other users will not work. - Arresta il server
- Add missing
openldap
entries for orgs that existed prior to the corruption.After the above step is completed,
openldap
will be missing entries for orgs that existed when the corruption occurred. The majority of the actual org data such as proxy bundles is stored in Cassandra or Zookeeper is not lost. However, running the setup-org script will not automatically add the openldap data for the orgs that already exist in Cassandra, and Zookeeper. This data has to be added manually for every org that existed prior to the corruption using the following steps:- Create an ldif file called
missingLDAP.ldif
with the following content:# orgname, organizations, apigee.com dn: o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organization O: orgname # userroles, orgname, organizations, apigee.com dn: ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: userroles objectClass: organizationalUnit # orgadmin, userroles, orgname, organizations, apigee.com dn: cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organizationalRole cn: orgadmin roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com # resources, orgadmin, userroles, orgname, organizations, apigee.com dn: ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: resources objectClass: organizationalUnit # @@@, resources, orgadmin, userroles, orgname, organizations, apigee.com dn: cn=@@@,ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com roleOccupant: ou=delete,ou=permissions,dc=apigee,dc=com roleOccupant: ou=get,ou=permissions,dc=apigee,dc=com roleOccupant: ou=put,ou=permissions,dc=apigee,dc=com labeledURI: / objectClass: organizationalRole objectClass: labeledURIObject cn: @@@
dove orgname è l'organizzazione che stai tentando di ricreare.
- Aggiungi le entità LDAP mancanti utilizzando il seguente comando:
ldapadd -x -w
-D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f missingLDAP.ldif
I passaggi precedenti creeranno le voci mancanti per un'organizzazione esistente e il
orgadmin
autorizzazioni per quell'organizzazione. Ripeti i passaggi per ogni organizzazione da ricreare. A questo punto puoi aggiungereorgadmin
utenti a un'organizzazione, ma i ruoli predefiniti non esistono ancora, quindi dovrai aggiungerli nel prossimo passaggio. - Create an ldif file called
Aggiungi le autorizzazioni e i ruoli predefiniti mancanti a un'organizzazione esistente.
Usando lo stesso file di configurazione usato inizialmente per impostare una delle organizzazioni esistenti, esegui questo comando:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-roles -f configfile
- Aggiungere eventuali ruoli personalizzati esistenti prima del danneggiamento utilizzando l'interfaccia utente o l'API di gestione.
- Aggiungi gli utenti ai ruoli utente pertinenti.
(Facoltativo) Ristabilisci la configurazione dell'autenticazione esternalizzata nella gestione.
Ripristina
/opt/apigee/customer/application/management-server.properties
se la configurazione non è cambiata. Poiché la UI non è stata reinstallata,/opt/apigee/customer/application/ui.properties
dovrebbe rimanere invariato dato il le credenziali per sysadmin sono state ripristinate con la nuova installazione di management.(Facoltativo) Reinstalla Apigee mTLS sul nodo di gestione.
Se Apigee mTLS è già stato installato in precedenza, segui la guida all'installazione di Apigee mTLS per reinstallarlo sul nodo del server di gestione.
Dopo aver seguito questa procedura, dovrai procedere manualmente:
Se il problema persiste, contatta Apigee assistenza per ulteriore assistenza.