@edt ASIX M06-ASO Escola del treball de barcelona. Repositori d'imatges Docker de LDAP.
1.9K
Podeu trobar les imatges docker al Dockehub de edtasixm06
Podeu trobar la documentació del mòdul a ASIX-M06
ASIX M06-ASO Escola del treball de barcelona
edtasixm06/ldap22:base Server bàsic ldap, amb base de dades edt.org.
edtasixm06/ldap22:editat Servidor edt.org amb els usuaris identificats per uid, usuaris típics més usuaris user01-user10, passwd de manager xifrat i activant la base de dades cn=config.
edtasixm06/ldap22:config Exemples de configuració i configuració dinàmica del servidor.
acls
edtasixm06/ldap22:schema Servidor LDAP amb la base de dades edt.org S'ha fet el següent:
futbolistaA.schema Derivat de inetorgPerson, structural, injectat dades de dades-futbolA.ldif.
futbolistaB.schema Structural derivat de TOP.
futbolistaC.schema Auxiliary.
edtasixm06/ldap22:practica Imatge de la pràctica de ldap schema. Feta per els alumnes marlene i licas.
edtasixm06/ldap22:grups Imatge final del servei ldap amb usuaris i grups. Els usuaris són identificats pel uid per exemple uid=pere,ou=usuaris,dc=edt,dc=org. S'han afegit grups dins de una ou=grups que conté els grups, i s'hi han posat els usuaris tot validant la coherència de les dades. També s'ha repassat que els homes dels usuaris siguin vàlids.
dn: ou=grups,dc=edt,dc=org
ou: grups
description: Container per a grups del sistema linux
objectclass: organizationalunit
dn: cn=professors,ou=grups,dc=edt,dc=org
objectclass: posixGroup
cn: professors
gidNumber: 601
description: Grup de professors
memberUid: pau
memberUid: pere
memberUid: jordi
utilitzar la imatge latest (és la grups) i es pot desplegar el phpldapadmin
docker build -t edtasixm06/ldap22:latest
docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap22:latest
docker run --rm --name phpldapadmin.edt.org -h phpldapadmin.edt.org --net 2hisx -p 80:80 -d edtasixm06/ldap22:phpldapadmin
docker build -t edtasixm06/ldap22:base .
docker network create 2hisx
docker network inspect 2hisx
docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap21:base
docker ps
nmap <ip-container ldap>
ldapsearch -x -LLL -b 'dc=edt,dc=org'
ldapsearch -x -LLL -h <ip-container> -b 'dc=edt,dc=org'
docker exec -it ldap.edt.org ps ax
$ docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap22:config
d17420f8f77b266c1be84599dea12cb630ad77180776bb06b48257c2790cf1e7
$ docker exec -it ldap.edt.org slappasswd
New password:
Re-enter new password:
{SSHA}oAtPEpCsAdk6SLqmqv+6fkqm2EHELq32
$ docker build -t edtasixm06/ldap22:editat .
$ docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap22:editat
$ ldapsearch -x -LLL -b 'dc=edt,dc=org' | grep dn
dn: dc=edt,dc=org
dn: ou=maquines,dc=edt,dc=org
dn: ou=clients,dc=edt,dc=org
dn: ou=productes,dc=edt,dc=org
dn: ou=usuaris,dc=edt,dc=org
dn: cn=Pau Pou,ou=usuaris,dc=edt,dc=org
dn: cn=Pere Pou,ou=usuaris,dc=edt,dc=org
dn: cn=Anna Pou,ou=usuaris,dc=edt,dc=org
dn: cn=Marta Mas,ou=usuaris,dc=edt,dc=org
dn: cn=Jordi Mas,ou=usuaris,dc=edt,dc=org
dn: cn=Admin System,ou=usuaris,dc=edt,dc=org
$ ldapwhoami -x -D 'cn=Manager,dc=edt,dc=org' -w secret
dn:cn=Manager,dc=edt,dc=org
$ docker exec -it ldap.edt.org slapcat -n0
$ ldapsearch -x -LLL -D 'cn=Sysadmin,cn=config' -w syskey -b 'olcDatabase={1}mdb,cn=config'
dn: olcDatabase={1}mdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcMdbConfig
olcDatabase: {1}mdb
olcDbDirectory: /var/lib/ldap
olcSuffix: dc=edt,dc=org
olcAccess: {0}to * by self write by * read
olcAddContentAcl: FALSE
olcLastMod: TRUE
olcMaxDerefDepth: 15
olcReadOnly: FALSE
olcRootDN: cn=Manager,dc=edt,dc=org
olcRootPW: {SSHA}oAtPEpCsAdk6SLqmqv+6fkqm2EHELq32
olcSyncUseSubentry: FALSE
olcMonitoring: TRUE
olcDbNoSync: FALSE
olcDbIndex: objectClass pres,eq
olcDbMaxReaders: 0
olcDbMaxSize: 10485760
olcDbMode: 0600
olcDbSearchStack: 16
olcDbRtxnSize: 10000
dn: uid=pau,ou=usuaris,dc=edt,dc=org
objectclass: posixAccount
objectclass: inetOrgPerson
cn: Pau Pou
cn: Pauet Pou
sn: Pou
homephone: 555-222-2220
mail: [email protected]
description: Watch out for this guy
ou: Profes
uid: pau
uidNumber: 5000
gidNumber: 100
homeDirectory: /tmp/home/pau
userPassword: {SSHA}NDkipesNQqTFDgGJfyraLz/csZAIlk2/
dn: ou=cfgs,dc=edt,dc=org
ou: cfgs
description: cicle informatica grau superior
objectclass: organizationalunit
dn: cn=cicle01,ou=cfgs,dc=edt,dc=org
objectclass: inetOrgPerson
cn: cicle01
sn: 01
homephone: 555-222-2220
mail: [email protected]
description: Watch out for this guy
$ cat acl-e1.ldif
dn: olcDatabase={1}mdb,cn=config
changetype: modify
delete: olcAccess
-
add: olcAccess
olcAccess: to * by * read
$ ldapmodify -vx -D 'cn=sysadmin,cn=config' -w syskey -f acl-e1.ldif
ldap_initialize( <DEFAULT> )
delete olcAccess:
add olcAccess:
to * by * read
modifying entry "olcDatabase={1}mdb,cn=config"
modify complete
$ ldapsearch -x -LLL -D 'cn=sysadmin,cn=config' -w syskey -b 'olcDatabase={1}mdb,cn=config' olcAccess
dn: olcDatabase={1}mdb,cn=config
olcAccess: {0}to * by * read
$ ldapmodify -cvx -D 'uid=pere,ou=usuaris,dc=edt,dc=org' -w pere -f mod1.ldif
# Atenció no deixar espais als finals de linia
dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPw: jupiter
-
delete: olcAccess
-
add: olcAccess
olcAccess: to * by * write
$ ldapmodify -vx -D 'cn=Sysadmin,cn=config' -w syskey -f mod2.ldif
$ ldapwhoami -x -D 'cn=Manager,dc=edt,dc=org' -w jupiter
$ ldapmodify -x -D 'cn=Anna Pou,ou=usuaris,dc=edt,dc=org' -w anna -f mod.ldif
$ ldapmodify -x -D 'cn=Pere Pou,ou=usuaris,dc=edt,dc=org' -w pere -f mod.ldif
$ ldapsearch -x -LLL -D 'cn=Sysadmin,cn=config' -w syskey -b 'cn=config'
$ ldapsearch -x -LLL -D 'cn=Sysadmin,cn=config' -w syskey -b 'olcDatabase={1}mdb,cn=config'
edtasixm06/ldap22:schema imatge ldap per implementar un schema propi de futbolistes.
futbolistaA.schema Derivat de inetorgPerson, structural, injectat dades de dades-futbolA.ldif.
futbolistaB.schema. Structural derivat de TOP.
futbolistaC.schema. Auxiliary.
$ docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap22:schema
$ docker run --rm --name phpldapadmin.edt.org -h phpldapadmin.edt.org --net 2hisx -p 80:80 -d edtasixm06/ldap22:phpldapadmin
$ ldapadd -xv -D 'cn=Manager,dc=edt,dc=org' -w secret -f data-futbolB.ldif
dn: ou=grups,dc=edt,dc=org
ou: grups
description: Container per a grups del sistema linux
objectclass: organizationalunit
dn: cn=professors,ou=grups,dc=edt,dc=org
objectclass: posixGroup
cn: professors
gidNumber: 601
description: Grup de professors
memberUid: pau
memberUid: pere
memberUid: jordi
docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisx -p 389:389 -d edtasixm06/ldap21:grups
Detach:
docker run --rm --name ldap.edt.org -h ldap.edt.org --net 2hisix -p 389:389 -d edtasixm06/ldap22:acl
Exemples:
access to * by * read
access to * by * write
access to * by self write by * read
access to * by self write by * read
Exemples de modificació dinàmica: fitxer de modificació entry.ldif
dn: olcDatabase={1}mdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: to attrs=UserPassword by self write by * auth
olcAccess: to * by * read
#olcAccess: to * attrs=homePhone by dn.exact="cn=Marta Mas,ou=usuaris,dc=edt,dc=org" write by users write
#olcAccess: to attrs=homePhone by * read
#olcAccess: to * by * write
Modificar amb ldapmodify
ldapmodify -x -h localhost -D ‘cn=Sysadmin,cn=config’ -w syskey -f entry.ldif
Detach:
$ docker run --rm --name phpldapadmin.edt.org -h phpldapadmin.edt.org --net 2hisx -p 80:80 -d edtasixm06/ldap22:phpldapadmin
Content type
Image
Digest
sha256:55ad3a8ea…
Size
105.4 MB
Last updated
almost 4 years ago
docker pull edtasixm06/ldap22