
Servicios de identidad para infraestructura tradicional, aplicaciones y contenedores.
Project Lightwave es un proyecto de código abierto que comprende servicios de gestión de identidad y acceso de nivel empresarial, dirigidos a los desafíos críticos de seguridad, gobierno y cumplimiento para aplicaciones nativas de la nube dentro de la empresa. Mediante la integración con Project Photon, Project Lightwave puede proporcionar seguridad y gobierno para cargas de trabajo en contenedores. Project Lightwave también puede servir a una variedad de casos de uso, como inicio de sesión único, autenticación, autorización y autoridad certificadora, así como servicios de gestión de claves y certificados en toda la infraestructura y la pila de aplicaciones. Project Lightwave se basa en un código de calidad de producción y una arquitectura de nivel empresarial que es multiinquilino, escalable y con una topología de replicación multimáster altamente disponible.
Project Lightwave está compuesto por los siguientes elementos clave de infraestructura de identidad:
Lightwave utiliza los siguientes paquetes de código abierto existentes.
OpenLDAP se utiliza para el protocolo del servidor LDAP y la base de datos integrada OpenLDAP Lightning MDB se utiliza como almacén LDAP subyacente.
La pila Heimdal Kerberos se utiliza como cabecera del protocolo Kerberos.
DCE/RPC se utiliza como infraestructura de control para la configuración del servicio de directorio LDAP de Lightwave.
La pila Likewise Open se utiliza por su infraestructura de control de servicios, su infraestructura de registro y su soporte de descriptores de seguridad NT. Likewise Open también proporciona un mecanismo sencillo para ofrecer soporte ssh a los clientes de Lightwave. Los primeros tres paquetes se encuentran dentro del proyecto Lightwave. El proyecto Likewise Open es un proyecto separado y debe compilarse desde un repositorio git separado. También hay disponible un RPM binario; consulte las instrucciones a continuación para agregar el repositorio.
git clone ssh://[email protected]/vmware/lightwave.git
Estas instrucciones de compilación son para compilar Lightwave en la distribución Linux Photon de VMware. (Consulte la wiki para compilar en otras plataformas)
Clone el repositorio git de lightwave en su instalación de Photon (Full).
Asegúrese de que likewise-open-devel-6.2..x86_64.rpm esté instalado en su sistema Photon.
Ejecute ./build_photon.sh* en [workspace]/build
Como parte de una compilación exitosa, los siguientes RPM deberían crearse en el directorio [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 plataforma Lightwave comprende controladores de dominio Lightwave y clientes de dominio Lightwave.
Los binarios precompilados de Lightwave están disponibles a través de los siguientes repositorios YUM, que pueden configurarse en su implementación de Photon.
Después de configurar los siguientes repositorios YUM, debería ser posible instalar el Controlador de dominio Lightwave y los clientes de Lightwave usando "tdnf install vmware-lightwave-server" y "tdnf install vmware-lightwave-clients" respectivamente.
Nota : Después de configurar los siguientes repositorios YUM, deshabilite photon-iso.repo; esto se logra estableciendo "enabled=0" en /etc/yum.repos.d/photon-iso.repo.
Cree el archivo "/etc/yum.repos.d/lightwave.repo" con el siguiente contenido.
[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
Cree el archivo "/etc/yum.repos.d/photon-extras.repo" con el siguiente contenido.
[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
Primero debe instalar los siguientes paquetes en su instancia de Photon
Para instalarlos, simplemente ejecute los siguientes comandos 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
Esto debería instalar todas las dependencias requeridas para lightwave.
Este paso es necesario para cada nodo de Lightwave. Edite el archivo /etc/hosts para que se vea como se muestra a continuación: NOTA Debe reemplazar las variables con los valores apropiados, ya que es posible que no estén establecidos por defecto en una instalación nueva de 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}
Tenga en cuenta que VM_DOMAIN_NAME puede elegirse para el primer servidor y debe ser el mismo para todos los nodos asociados en un clúster.
/opt/vmware/bin/configure-lightwave-server --password <password>
/opt/vmware/bin/configure-lightwave-server --password <password> \
--server <hostname or ip-address of partner instance>
Notas:
La contraseña especificada para el administrador del dominio debe tener al menos 8 caracteres, incluir una letra mayúscula, una letra minúscula, un dígito y un carácter especial.
Asegúrese de asignar una dirección IP estática o una dirección dhcp con reserva al sistema antes de promoverlo a controlador de dominio.
Los siguientes paquetes son necesarios para unir el sistema Photon al dominio Lightwave.
Si utiliza los repositorios YUM para los binarios precompilados, instale el Cliente de dominio Lightwave usando "tdnf install vmware-lightwave-clients".
/opt/vmware/bin/domainjoin join <domain hostname>
Está invitado a contribuir con nuevas funciones, correcciones o actualizaciones, grandes o pequeñas; siempre estamos encantados de recibir pull requests y hacemos todo lo posible por procesarlos lo más rápido posible. Si desea contribuir con código y no ha firmado nuestro acuerdo de licencia de contribuyente (CLA), nuestro bot actualizará el problema cuando abra un Pull Request. Para cualquier pregunta sobre el proceso de CLA, consulte nuestro FAQ.
Antes de comenzar a codificar, le recomendamos discutir sus planes a través de un GitHub issue o discutirlo primero con los mantenedores oficiales del proyecto a través del #Lightwave Slack Channel, especialmente para contribuciones más ambiciosas. Esto da a otros contribuyentes la oportunidad de orientarlo en la dirección correcta, darle comentarios sobre su diseño y ayudarle a saber si alguien más está trabajando en lo mismo.
Lightwave está disponible bajo la licencia Apache 2.