Pam-ldap-debian: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Benutzerauthentifizierung mit LDAP und PAM auf Debian apt-get install slapd libldap2-dev db4.2-util slapd: OpenLDAP Standalone Server libldap2-dev: ent…“)
 
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Benutzerauthentifizierung mit LDAP und PAM  auf Debian  
+
=Benutzerauthentifizierung mit LDAP und PAM  auf Debian=
 
+
==Installation Server==
apt-get install slapd libldap2-dev  db4.2-util  
+
apt-get install slapd libldap2-dev  db4.2-util  
 
+
*slapd: OpenLDAP Standalone Server
 
+
*libldap2-dev: enthält Bibliotheken und Header   
slapd: OpenLDAP Standalone Server
+
*db4.2-util: Tools zum managen der Berkley Datenbank  
 
+
==Installation Clients==
libldap2-dev: enthält Bibliotheken und
+
apt-get install ldap-utils libpam-ldap libnss-ldap
Header   
+
*ldap-utils: Utilities zum Zugriff auf den LDAP Server
 
+
*libpam-ldap: Modules, die LDAP die Möglichkeit geben User mit Programmen die PAM benutzen zu authentifizieren
db4.2-util: Tools zum managen der Berkley Datenbank  
+
*libnss-ldap: Hiermit kann man den Name Service Switch zu konfiguriern das er einenLDAP Server nutzen kann
 
+
=Die Konfigurationdatei des LDAP Servers genannt SLAPD=
 
+
<pre>
apt-get install ldap-utils libpam-ldap libnss-ldap
 
 
 
ldap-utils: Utilities zum Zugriff auf den LDAP Server
 
 
 
libpam-ldap: Modules, die LDAP die Möglichkeit geben User mit Programmen die PAM
 
benutzen zu authentifizieren
 
 
 
libnss-ldap: Hiermit kann man den Name Service Switch zu konfiguriern das er einen
 
LDAP Server nutzen kann
 
 
 
 
 
 
 
Die Konfigurationdatei des LDAP Servers genannt SLAPD
 
 
 
gawron:/etc/ldap# cat slapd.conf
 
gawron:/etc/ldap# cat slapd.conf
 
allow bind_v2
 
allow bind_v2
Zeile 45: Zeile 31:
 
rootdn          "cn=admin,dc=cronos,dc=int"
 
rootdn          "cn=admin,dc=cronos,dc=int"
 
rootpw          "sysadm"
 
rootpw          "sysadm"
 
+
</pre>
Starten des slapd
+
==Starten des slapd==
 
+
gawron:/etc/ldap# /etc/init.d/slapd start
gawron:/etc/ldap# /etc/init.d/slapd start
+
Starting OpenLDAP: slapd.
Stopping OpenLDAP: slapd.
+
==Stoppen des slapd==
 
+
gawron:/etc/ldap# /etc/init.d/slapd stop
 
+
Stopping OpenLDAP: slapd.
Stoppen des slapd
+
==Neustarten des slapd==
 
+
gawron:/etc/ldap# /etc/init.d/slapd restart
gawron:/etc/ldap# /etc/init.d/slapd stop
+
Stopping OpenLDAP: slapd.
Starting OpenLDAP: slapd.
+
Starting OpenLDAP: slapd.Starten des slapd
Starten des slapd
+
==Auf welchem Port lauscht der slapd==
 
+
gawron:/etc/ldap# netstat -lntp | grep slapd
Neustarten des slapd
+
tcp        0      0 0.0.0.0:389            0.0.0.0:*              LISTEN    499/slapd
 
+
==Welche PID hat der slapd==
gawron:/etc/ldap# /etc/init.d/slapd restart
+
  gawron:/etc/ldap# pgrep slapd
Stopping OpenLDAP: slapd.
+
499
Starting OpenLDAP: slapd.Starten des slapd
+
500
 
+
501
Auf welchem Port lauscht der slapd  
+
=Clientkonfiguration von LDAP=
 
+
gawron:/etc/ldap# cat ldap.conf
gawron:/etc/ldap# netstat -lntp | grep slapd
+
base            dc=cronos, dc=int
tcp        0      0 0.0.0.0:389            0.0.0.0:*              LISTEN    499/slapd
+
uri            ldap://127.0.0.1
 
+
ldap_version    3
 
+
rootbinddn      cn=admin, dc=cronos, dc=int
Welche PID hat der slapd
+
pam_password    md5
   
+
==Passwort für den Adminzugang  eintragen==
gawron:/etc/ldap# pgrep slapd
 
499
 
500
 
501
 
 
 
Clientkonfiguration von LDAP
 
 
 
gawron:/etc/ldap# cat ldap.conf
 
base            dc=cronos, dc=int
 
uri            ldap://127.0.0.1
 
ldap_version    3
 
rootbinddn      cn=admin, dc=cronos, dc=int
 
pam_password    md5
 
 
 
 
 
 
 
Passwort für den Adminzugang  eintragen  
 
 
gawron:/etc# echo sysadm > /etc/ldap.secret
 
gawron:/etc# echo sysadm > /etc/ldap.secret
 
+
==Wir benutzen nur eine Konfigurationdatei==
 
+
gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/pam_ldap.conf
Wir benutzen nur eine Konfigurationdatei  
+
gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/libnss-ldap.conf
 
+
==Testen ob Client mit dem Server kommunizieren kann.==
gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/pam_ldap.conf
+
gawron:/etc# ldapsearch -x
gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/libnss-ldap.conf
+
# extended LDIF
 
+
#
 
+
# LDAPv3
Testen ob Client mit dem Server kommunizieren kann.
+
# base <> with scope sub
 
+
# filter: (objectclass=*)
gawron:/etc# ldapsearch -x
+
# requesting: ALL
# extended LDIF
+
#
#
+
# search result
# LDAPv3
+
search: 2
# base <> with scope sub
+
result: 32 No such object
# filter: (objectclass=*)
+
# numResponses: 1
# requesting: ALL
+
=Erstellen der Struktur im LDIF Format=  
#
+
<pre>
 
 
# search result
 
search: 2
 
result: 32 No such object
 
 
 
# numResponses: 1
 
Erstellen der Struktur im LDIF Format   
 
 
 
 
gawron:~# cat struktur.ldif
 
gawron:~# cat struktur.ldif
 
# cronos.int
 
# cronos.int
Zeile 138: Zeile 99:
 
objectClass: organizationalUnit
 
objectClass: organizationalUnit
 
ou: rechner
 
ou: rechner
 
+
</pre>
Erstellen des Adminaccount im LDIF Format
+
==Erstellen des Adminaccount im LDIF Format==
 
+
<pre>
 
gawron:~# cat admin.ldif
 
gawron:~# cat admin.ldif
 
dn: cn=admin,dc=cronos,dc=int
 
dn: cn=admin,dc=cronos,dc=int
Zeile 156: Zeile 117:
 
gecos: admin user
 
gecos: admin user
 
description: admin user
 
description: admin user
 
+
</pre>
 
+
==Datenbank füllen==
 
+
<pre>
 
 
Datenbank füllen
 
 
 
 
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f struktur.ldif
 
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f struktur.ldif
 
adding new entry "dc=cronos,dc=int"
 
adding new entry "dc=cronos,dc=int"
Zeile 170: Zeile 128:
 
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f admin.ldif
 
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f admin.ldif
 
adding new entry "cn=admin,dc=cronos,dc=int"
 
adding new entry "cn=admin,dc=cronos,dc=int"
 +
</pre>
 +
===Erläuterung zu ldapadd===
 +
*-x Saslauth. abschalten  -D DN der gebunden wird
 +
*-w Passwort des gebundenen DN -f LDIF Datei
  
Erläuterung zu ldapadd
+
==Gruppe Ldif erstellen==
 
+
<pre>
-x Saslauth. abschalten  -D DN der gebunden wird
 
-w Passwort des gebundenen DN -f LDIF Datei
 
 
 
Gruppe Ldif erstellen  
 
 
gawron:~# cat gruppe.ldif
 
gawron:~# cat gruppe.ldif
 
dn: cn=benutzer,ou=gruppen,dc=cronos,dc=int
 
dn: cn=benutzer,ou=gruppen,dc=cronos,dc=int
Zeile 183: Zeile 141:
 
cn: benutzer
 
cn: benutzer
 
gidNumber:  3001
 
gidNumber:  3001
 
+
</pre>
User  Ldif erstellen  
+
==User  Ldif erstellen==
 +
<pre>
 
gawron:~# cat user.ldif
 
gawron:~# cat user.ldif
 
dn: uid=leroy,ou=mitarbeiter,dc=cronos,dc=int
 
dn: uid=leroy,ou=mitarbeiter,dc=cronos,dc=int
Zeile 197: Zeile 156:
 
homeDirectory: /home/leroy
 
homeDirectory: /home/leroy
 
loginShell: /bin/bash
 
loginShell: /bin/bash
 +
</pre>
 +
==User und Gruppe in LDAP einfügen==
 +
root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f gruppe.ldif
 +
adding new entry "cn=benutzer,ou=gruppen,dc=cronos,dc=int"
  
User und Gruppe in LDAP einfügen
+
root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f user.ldif
 
+
adding new entry "uid=leroy,ou=mitarbeiter,dc=cronos,dc=int"
root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f gruppe.ldif
+
==/etc/nsswitch.conf anpassen==
adding new entry "cn=benutzer,ou=gruppen,dc=cronos,dc=int"
+
root@ubuntu:~ # cat /etc/nsswitch.conf
 
+
passwd:        files ldap
root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f user.ldif
+
group:          files ldap
adding new entry "uid=leroy,ou=mitarbeiter,dc=cronos,dc=int"
+
shadow:        files ldap
 
+
 
+
hosts:          files dns
/etc/nsswitch.conf anpassen
+
networks:      files
 
+
root@ubuntu:~ # cat /etc/nsswitch.conf
+
protocols:      db files
 
+
services:      db files
passwd:        files ldap
+
ethers:        db files
group:          files ldap
+
rpc:            db files
shadow:        files ldap
+
 
+
netgroup:      nis
hosts:          files dns
+
==Testen ob die nsswitch Namensauflöung funktioniert==
networks:      files
+
gawron:~# getent passwd leroy
 
+
leroy:x:2001:3001:leroy:/home/leroy:/bin/bash
protocols:      db files
+
=Anpassen der Pam=
services:      db files
+
==Die Authentifizierung==
ethers:        db files
+
gawron:/etc/pam.d# cat common-auth
rpc:            db files
+
auth    sufficient  pam_ldap.so
 
+
auth    required    pam_unix.so nullok_secure use_first_pass
netgroup:      nis
+
==Das Accounting==
 
+
gawron:/etc/pam.d# cat common-account
 
+
account sufficient      pam_ldap.so
 
+
account required        pam_unix.so
Testen ob die nsswitch Namensauflöung funktioniert
+
==Passwort änderungen==
 
+
gawron:/etc/pam.d# cat common-password
gawron:~# getent passwd leroy
+
password    sufficient    pam_ldap.so
leroy:x:2001:3001:leroy:/home/leroy:/bin/bash
+
password    sufficient    pam_unix.so
 
+
password    required      pam_deny.so
 
+
==Die Session==
 
+
gawron:/etc/pam.d# cat common-session
Anpassen der Pam
+
session required pam_mkhomedir.so  skel=/etc/skel umask=0022
 
+
session required        pam_unix.so
 
+
==Passwort für den User setzen==
 
+
gawron:/etc/pam.d# passwd leroy
Die Authentifizierung
+
New password:
gawron:/etc/pam.d# cat common-auth
+
Re-enter new password:
auth    sufficient  pam_ldap.so
+
LDAP password information changed for leroy
auth    required    pam_unix.so nullok_secure use_first_pass
+
passwd: password updated successfully
 
+
==Testen des Accounts==
Das Accounting  
+
gawron:/etc/pam.d# su - nobody
gawron:/etc/pam.d# cat common-account
+
nobody@gawron:~$ su – leroy
account sufficient      pam_ldap.so
+
Password:
account required        pam_unix.so
+
leroy@gawron:~$
 
+
=Apache an LDAP=
Passwort änderungen  
+
<pre>
gawron:/etc/pam.d# cat common-password
 
password    sufficient    pam_ldap.so
 
password    sufficient    pam_unix.so
 
password    required      pam_deny.so
 
 
 
Die Session
 
gawron:/etc/pam.d# cat common-session
 
session required pam_mkhomedir.so  skel=/etc/skel umask=0022
 
session required        pam_unix.so
 
 
 
Passwort für den User setzen  
 
gawron:/etc/pam.d# passwd leroy
 
New password:
 
Re-enter new password:
 
LDAP password information changed for leroy
 
passwd: password updated successfully
 
 
 
 
 
Testen des Accounts
 
gawron:/etc/pam.d# su - nobody
 
 
 
nobody@gawron:~$ su – leroy
 
 
 
Password:
 
leroy@gawron:~$
 
 
 
 
 
 
 
 
 
Apache an LDAP  
 
 
 
 
 
 
 
 
   <Directory /var/www/>
 
   <Directory /var/www/>
 
                 Options Indexes FollowSymLinks MultiViews
 
                 Options Indexes FollowSymLinks MultiViews
Zeile 296: Zeile 226:
 
                 RedirectMatch ^/$ /apache2-default/
 
                 RedirectMatch ^/$ /apache2-default/
 
         </Directory>
 
         </Directory>
 +
</pre>
  
  
 
+
=RECHNER Ldif erstellen=
RECHNER Ldif erstellen  
+
<pre>
 
 
 
gawron:~# cat rechner.ldif
 
gawron:~# cat rechner.ldif
 
dn: cn=pc1,ou=rechner,dc=cronos,dc=int
 
dn: cn=pc1,ou=rechner,dc=cronos,dc=int
Zeile 308: Zeile 238:
 
cn: pc1
 
cn: pc1
 
ipHostNumber: 172.20.103.1
 
ipHostNumber: 172.20.103.1
 
+
</pre>
 
+
==Rechner Liste eintragen==
Rechner Liste eintragen
+
<pre>
 
 
 
  gawron:~# cat ./rechner.sh
 
  gawron:~# cat ./rechner.sh
 
#!/bin/bash
 
#!/bin/bash
Zeile 325: Zeile 254:
 
MARKE
 
MARKE
 
done
 
done
 
+
</pre>
 
 
 
./rechner.sh > rechner.ldif
 
./rechner.sh > rechner.ldif
Service Container erstellen
 
 
gawron:~# cat service-container.ldif
 
# mitarbeiter, cronos.int
 
dn: ou=service,dc=cronos,dc=int
 
objectClass: organizationalUnit
 
ou: service
 
  
 +
==Service Container erstellen==
 +
gawron:~# cat service-container.ldif
 +
# mitarbeiter, cronos.int
 +
dn: ou=service,dc=cronos,dc=int
 +
objectClass: organizationalUnit
 +
ou: service
  
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.-container.ldif
+
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.-container.ldif
 
 
Service Einträge erstellen
 
  
 +
==Service Einträge erstellen==
 +
<pre>
 
gawron:~# cat service.ldif
 
gawron:~# cat service.ldif
 
dn: cn=xinux,ou=service,dc=cronos,dc=int
 
dn: cn=xinux,ou=service,dc=cronos,dc=int
Zeile 348: Zeile 275:
 
ipServiceProtocol: tcp
 
ipServiceProtocol: tcp
 
cn:xinux
 
cn:xinux
 
+
</pre>
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.ldif
+
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.ldif
  
  

Aktuelle Version vom 4. Dezember 2014, 09:28 Uhr

Benutzerauthentifizierung mit LDAP und PAM auf Debian

Installation Server

apt-get install slapd libldap2-dev  db4.2-util 
  • slapd: OpenLDAP Standalone Server
  • libldap2-dev: enthält Bibliotheken und Header
  • db4.2-util: Tools zum managen der Berkley Datenbank

Installation Clients

apt-get install ldap-utils libpam-ldap libnss-ldap
  • ldap-utils: Utilities zum Zugriff auf den LDAP Server
  • libpam-ldap: Modules, die LDAP die Möglichkeit geben User mit Programmen die PAM benutzen zu authentifizieren
  • libnss-ldap: Hiermit kann man den Name Service Switch zu konfiguriern das er einenLDAP Server nutzen kann

Die Konfigurationdatei des LDAP Servers genannt SLAPD

gawron:/etc/ldap# cat slapd.conf
allow 			bind_v2
include         		/etc/ldap/schema/core.schema
include         		/etc/ldap/schema/cosine.schema
include         		/etc/ldap/schema/nis.schema
include         		/etc/ldap/schema/inetorgperson.schema
include         		/etc/ldap/schema/misc.schema
schemacheck     	on
modulepath      	/usr/lib/ldap
moduleload      	back_bdb
pidfile         		/var/run/slapd.pid
argsfile        		/var/run/slapd.args
loglevel        		0
database        		bdb
suffix          		"dc=cronos,dc=int"
directory       		/var/lib/ldap
index           		objectClass eq
rootdn          		"cn=admin,dc=cronos,dc=int"
rootpw          		"sysadm"

Starten des slapd

gawron:/etc/ldap# /etc/init.d/slapd start
Starting OpenLDAP: slapd.

Stoppen des slapd

gawron:/etc/ldap# /etc/init.d/slapd stop
Stopping OpenLDAP: slapd.

Neustarten des slapd

gawron:/etc/ldap# /etc/init.d/slapd restart
Stopping OpenLDAP: slapd.
Starting OpenLDAP: slapd.Starten des slapd

Auf welchem Port lauscht der slapd

gawron:/etc/ldap# netstat -lntp | grep slapd
tcp        0      0 0.0.0.0:389             0.0.0.0:*               LISTEN     499/slapd

Welche PID hat der slapd

gawron:/etc/ldap# pgrep slapd
499
500
501

Clientkonfiguration von LDAP

gawron:/etc/ldap# cat ldap.conf
base            dc=cronos, dc=int
uri             ldap://127.0.0.1
ldap_version    3
rootbinddn      cn=admin, dc=cronos, dc=int
pam_password    md5

Passwort für den Adminzugang eintragen

gawron:/etc# echo sysadm > /etc/ldap.secret

Wir benutzen nur eine Konfigurationdatei

gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/pam_ldap.conf
gawron:/etc# ln -sf /etc/ldap/ldap.conf /etc/libnss-ldap.conf

Testen ob Client mit dem Server kommunizieren kann.

gawron:/etc# ldapsearch -x
# extended LDIF
#
# LDAPv3
# base <> with scope sub
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 32 No such object
# numResponses: 1

Erstellen der Struktur im LDIF Format

gawron:~# cat struktur.ldif
# cronos.int
dn: dc=cronos,dc=int
objectClass: dcObject
objectClass: organization
o: cronos
dc: cronos

# mitarbeiter, cronos.int
dn: ou=mitarbeiter,dc=cronos,dc=int
objectClass: organizationalUnit
ou: mitarbeiter

# gruppen, cronos.int
dn: ou=gruppen,dc=cronos,dc=int
objectClass: organizationalUnit
ou: gruppen

# rechner, cronos.int
dn: ou=rechner,dc=cronos,dc=int
objectClass: organizationalUnit
ou: rechner

Erstellen des Adminaccount im LDIF Format

gawron:~# cat admin.ldif
dn: cn=admin,dc=cronos,dc=int
objectClass: top
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
cn: admin
sn: chef
uid: admin
uidNumber: 0
gidNumber: 0
homeDirectory: /export/home/admin
loginShell: /bin/bash
gecos: admin user
description: admin user

Datenbank füllen

gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f struktur.ldif
adding new entry "dc=cronos,dc=int"
adding new entry "ou=mitarbeiter,dc=cronos,dc=int"
adding new entry "ou=gruppen,dc=cronos,dc=int"
adding new entry "ou=rechner,dc=cronos,dc=int"

gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f admin.ldif
adding new entry "cn=admin,dc=cronos,dc=int"

Erläuterung zu ldapadd

  • -x Saslauth. abschalten -D DN der gebunden wird
  • -w Passwort des gebundenen DN -f LDIF Datei

Gruppe Ldif erstellen

 
gawron:~# cat gruppe.ldif
dn: cn=benutzer,ou=gruppen,dc=cronos,dc=int
objectClass: posixGroup
objectClass: top
cn: benutzer
gidNumber:  3001

User Ldif erstellen

gawron:~# cat user.ldif
dn: uid=leroy,ou=mitarbeiter,dc=cronos,dc=int
cn: leroy
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
objectClass: top
uid: leroy
uidNumber: 2001
gidNumber: 3001
homeDirectory: /home/leroy
loginShell: /bin/bash

User und Gruppe in LDAP einfügen

root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f gruppe.ldif
adding new entry "cn=benutzer,ou=gruppen,dc=cronos,dc=int"
root@gawron:~ # ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f user.ldif
adding new entry "uid=leroy,ou=mitarbeiter,dc=cronos,dc=int"

/etc/nsswitch.conf anpassen

root@ubuntu:~ # cat /etc/nsswitch.conf
passwd:         files ldap
group:          files ldap
shadow:         files ldap

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Testen ob die nsswitch Namensauflöung funktioniert

gawron:~# getent passwd leroy
leroy:x:2001:3001:leroy:/home/leroy:/bin/bash

Anpassen der Pam

Die Authentifizierung

gawron:/etc/pam.d# cat common-auth
auth    sufficient   pam_ldap.so
auth    required     pam_unix.so nullok_secure use_first_pass

Das Accounting

gawron:/etc/pam.d# cat common-account
account sufficient      pam_ldap.so
account required        pam_unix.so

Passwort änderungen

gawron:/etc/pam.d# cat common-password
password    sufficient    pam_ldap.so
password    sufficient    pam_unix.so
password    required      pam_deny.so

Die Session

gawron:/etc/pam.d# cat common-session
session required pam_mkhomedir.so  skel=/etc/skel umask=0022
session required        pam_unix.so

Passwort für den User setzen

gawron:/etc/pam.d# passwd leroy
New password:
Re-enter new password:
LDAP password information changed for leroy
passwd: password updated successfully

Testen des Accounts

gawron:/etc/pam.d# su - nobody
nobody@gawron:~$ su – leroy
Password:
leroy@gawron:~$

Apache an LDAP

   <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                SetHandler ldap-status
                Authtype Basic
                AuthName LDAP-AUTHENTIFIKATION
                AuthLDAPEnabled on
                AuthLDAPURL ldap://127.0.0.1/dc=cronos,dc=int?uid?sub
                AuthLDAPAuthoritative on
                require valid-user
                RedirectMatch ^/$ /apache2-default/
        </Directory>


RECHNER Ldif erstellen

gawron:~# cat rechner.ldif
dn: cn=pc1,ou=rechner,dc=cronos,dc=int
objectClass: device
objectClass: top
objectClass: ipHost
cn: pc1
ipHostNumber: 172.20.103.1

Rechner Liste eintragen

 gawron:~# cat ./rechner.sh
#!/bin/bash
for ((n=1;n<10;n++))
do
cat <<MARKE
dn: cn=pc$n,ou=rechner,dc=cronos,dc=int
objectClass: device
objectClass: top
objectClass: ipHost
cn: pc$n
ipHostNumber: 172.20.103.$n
MARKE
done

./rechner.sh > rechner.ldif

Service Container erstellen

gawron:~# cat service-container.ldif
# mitarbeiter, cronos.int
dn: ou=service,dc=cronos,dc=int
objectClass: organizationalUnit
ou: service
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.-container.ldif

Service Einträge erstellen

gawron:~# cat service.ldif
dn: cn=xinux,ou=service,dc=cronos,dc=int
objectClass: top
objectClass: ipService
ipServicePort: 4711
ipServiceProtocol: tcp
cn:xinux
gawron:~# ldapadd -xD cn=admin,dc=cronos,dc=int -w sysadm -f service.ldif


gawron:~# getent services ssh ssh 22/tcp

gawron:~# getent services xinux

gawron:~# cat /etc/nsswitch.conf passwd: files ldap group: files ldap shadow: files ldap hosts: files dns ldap networks: files protocols: db files services: db files ldap ethers: db files rpc: db files netgroup: nis

gawron:~# getent services xinux xinux 4711/tcp