
Servizi di identità per infrastrutture tradizionali, applicazioni e container.
Project Lightwave è un progetto open source composto da servizi di gestione delle identità e degli accessi di livello enterprise, progettati per affrontare le sfide critiche di sicurezza, governance e conformità per le app cloud-native all'interno dell'impresa. Attraverso l'integrazione con Project Photon, Project Lightwave può fornire sicurezza e governance per i carichi di lavoro containerizzati. Project Lightwave può anche soddisfare una varietà di casi d'uso come single sign-on, autenticazione, autorizzazione e autorità di certificazione, oltre ai servizi di gestione delle chiavi dei certificati nell'intera infrastruttura e nello stack applicativo. Project Lightwave si basa su codice di qualità produttiva e su un'architettura di livello enterprise multi-tenant, scalabile e con una topologia di replica multi-master altamente disponibile.
Project Lightwave è composto dai seguenti elementi chiave dell'infrastruttura delle identità:
Lightwave utilizza i seguenti pacchetti open source esistenti.
OpenLDAP viene utilizzato per l'header del protocollo server LDAP e il database embedded OpenLDAP Lightning MDB viene utilizzato come archivio LDAP sottostante.
Lo stack Heimdal Kerberos viene utilizzato come header del protocollo Kerberos.
DCE/RPC viene utilizzato come infrastruttura di controllo per la configurazione del servizio directory LDAP di Lightwave.
Lo stack Likewise Open viene utilizzato per la sua infrastruttura di controllo dei servizi, la sua infrastruttura di registro e il supporto per i descrittori di sicurezza NT. Likewise Open fornisce inoltre un meccanismo semplice per offrire supporto ssh per i client Lightwave. I primi tre pacchetti sono collocati all'interno del progetto Lightwave. Il progetto Likewise Open è un progetto separato e deve essere compilato da un repository git separato. È disponibile anche un RPM binario; consultare le istruzioni di seguito per aggiungere il repository.
git clone ssh://[email protected]/vmware/lightwave.git
Queste istruzioni di compilazione servono per compilare Lightwave sulla distribuzione Photon Linux di VMware. (Vedi il wiki per la compilazione su altre piattaforme)
Clona il repository git di lightwave sulla tua installazione Photon (Full).
Assicurati che likewise-open-devel-6.2..x86_64.rpm sia installato sul tuo sistema Photon.
Esegui ./build_photon.sh* in [workspace]/build
Al termine di una compilazione riuscita, i seguenti RPM dovrebbero essere creati nella directory [workspace]/build/stage
lightwave-1.3.0-0.x86_64.rpm
lightwave-client-1.3.0-0.x86_64.rpm
lightwave-devel-1.3.0-0.x86_64.rpm
lightwave-post-1.3.0-0.x86_64.rpm
lightwave-mutentca-1.3.0-0.x86_64.rpm
lightwave-server-1.3.0-0.x86_64.rpm
Una piattaforma Lightwave comprende controller di dominio Lightwave e client di dominio Lightwave.
I binari precompilati per Lightwave sono disponibili tramite i seguenti repository YUM che possono essere configurati sulla tua distribuzione Photon.
Dopo aver configurato i seguenti repository YUM, dovrebbe essere possibile installare il Lightwave Domain Controller e i Lightwave Clients usando rispettivamente "tdnf install vmware-lightwave-server" e "tdnf install vmware-lightwave-clients".
Nota : dopo aver configurato i seguenti repository YUM, disabilita photon-iso.repo; questo si ottiene impostando "enabled=0" in /etc/yum.repos.d/photon-iso.repo.
Crea il file "/etc/yum.repos.d/lightwave.repo" con il seguente contenuto.
[lightwave]
name=VMware Lightwave 1.0(x86_64)
baseurl=https://dl.bintray.com/vmware/lightwave
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY
gpgcheck=0
enabled=1
skip_if_unavailable=True
[lightwave]
name=VMware Lightwave for Photon 2.0(x86_64)
baseurl=https://vmware.bintray.com/lightwave-dev/photon_2.0/master
gpgcheck=0
enabled=1
skip_if_unavailable=True
EOM
Crea il file "/etc/yum.repos.d/photon-extras.repo" con il seguente contenuto.
[photon-extras]
name=VMware Photon Extras 1.0(x86_64)
baseurl=https://dl.bintray.com/vmware/photon_extras
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY
gpgcheck=0
enabled=1
skip_if_unavailable=True
[photon-extras]
name=VMware Photon Extras 2.0(x86_64)
baseurl=https://dl.bintray.com/vmware/photon_extras_$releasever_$basearch
gpgkey=file:///etc/pki/rpm-gpg/VMWARE-RPM-GPG-KEY
gpgcheck=1
enabled=1
skip_if_unavailable=True
Devi prima installare i seguenti pacchetti sulla tua istanza Photon
Per installarli, esegui semplicemente i seguenti comandi tdnf:
tdnf makecache
tdnf install lightwave-client lightwave lightwave-server
tdnf makecache
tdnf install lightwave-client-1.3.1 lightwave-1.3.1 lightwave-server-1.3.1
Questo dovrebbe recuperare tutte le dipendenze richieste per lightwave.
Questo passaggio è richiesto per ogni nodo lightwave. Modifica il file /etc/hosts in modo che appaia come di seguito: NOTA Dovresti sostituire le variabili con i valori appropriati poiché potrebbero non essere impostati per impostazione predefinita su una nuova installazione PhotonOS.
echo -e "127.0.0.1\tlocalhost" > /etc/hosts
echo -e "${VM_IP}\t${VM_HOSTNAME}.${VM_DOMAIN_NAME} ${VM_HOSTNAME}" >> /etc/hosts
hostnamectl set-hostname --static ${VM_HOSTNAME}
Nota che VM_DOMAIN_NAME può essere scelto per il primo server e deve essere lo stesso per tutti i nodi partner in un cluster.
/opt/vmware/bin/configure-lightwave-server --password <password>
/opt/vmware/bin/configure-lightwave-server --password <password> \
--server <hostname or ip-address of partner instance>
Note:
La password specificata per l'amministratore di dominio deve essere lunga almeno 8 caratteri e includere una lettera maiuscola, una lettera minuscola, una cifra e un carattere speciale.
Assicurati di assegnare un indirizzo IP statico o un indirizzo DHCP con prenotazione al sistema prima di promuoverlo a controller di dominio.
I seguenti pacchetti sono necessari per aggiungere il sistema Photon al dominio Lightwave.
Se si utilizzano i repository YUM per i binari precompilati, installa il Lightwave Domain Client usando "tdnf install vmware-lightwave-clients".
/opt/vmware/bin/domainjoin join <domain hostname>
Sei invitato a contribuire con nuove funzionalità, correzioni o aggiornamenti, grandi o piccoli; siamo sempre entusiasti di ricevere pull request e facciamo del nostro meglio per elaborarle il più rapidamente possibile. Se desideri contribuire con codice e non hai firmato il nostro contributor license agreement (CLA), il nostro bot aggiornerà la issue quando apri una Pull Request. Per qualsiasi domanda sul processo CLA, fai riferimento alla nostra FAQ.
Prima di iniziare a scrivere codice, consigliamo di discutere i tuoi piani tramite una GitHub issue o di parlarne prima con i maintainer ufficiali del progetto tramite il #Lightwave Slack Channel, soprattutto per contributi più ambiziosi. Questo dà agli altri contributori la possibilità di indicarti la direzione giusta, darti feedback sul tuo design e aiutarti a scoprire se qualcun altro sta lavorando alla stessa cosa.
Lightwave è disponibile sotto la licenza Apache 2.