Diskussion:Entwicklungsumgebung/LDAP: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 26: Zeile 26:




== Weitere Konfiguration des LDAP hier User- und Rechnerverwaltung (E-Mail von Hans-Dietrich Kirmse): ==
== Weitere Konfiguration des LDAP hier: ==
=== Installation des LDAP (E-Mail von Hans-Dietrich Kirmse) ===
 
1. wir stellen das samba.schema bereit (wer das schon gemacht hatte, dann kann das natürlich jetzt entfallen)
 
aptitude install samba-doc
cd /usr/share/doc/samba-doc/examples/LDAP
gunzip samba.schema.gz
 
2. aptitude install slapd
 
--|Konfiguriere slapd|--
 
Administrator-Passwort:                    geheim
 
3. aptitude install ldap-utils libsasl2-modules
 
4. aptitude install libnss-ldap
 
--|Konfiguriere libnss-ldap|--
 
URI des LDAP-Servers verlangt:              ldap://127.0.0.1:389/
 
 
Eindeutiger Name (DN - ...) der Suchbasis:  dc=delixs-schule,dc=de
 
    Benutzte LDAP-Version:                      3
 
    LDAP-Zugang für Root:                cn=admin,dc=delixs-schule,dc=de
 
    Passwort des LDAP-Zugangs für Root:        geheim
 
 
5. aptitude install libpam-ldap
    (Aufruf entfällt, da gleich bei 3. automatisch mit installiert wurde)
 
    --|Konfiguriere libpam-ldap|--
 
    Lokaler root zum Datenbank-Administrator machen:        Ja
 
    Benötigt die LDAP-Datenbank eine Anmeldung            Nein
 
    LDAP-Zugang für Root:              cn=admin,dc=delixs-schule,dc=de
 
    Passwort des LDAP-Zugangs für root:                    geheim
 
 
6. die /etc/ldap/ldap.conf                                  (Datei im Paket)
 
      BASE dc=delixs-schule,dc=de
      URI  ldap://localhost
 
      SIZELIMIT      12
      TIMELIMIT      15
      DEREF          always
 
7. die /etc/ldap/slapd.conf                                  (Datei im Paket)
 
    das samba-Schema wurde schon am Anfang kopiert, jetzt einbinden:
 
      include /etc/ldap/schema/samba.schema
                              (*hinter* den anderen Zeilen eintragen)
 
      loglevel  384  (wenn Entwicklung abgeschlossen, auf 0 setzen)
      sizelimit 3000
      backend hdb              gelassen
 
      rootdn      "cn=admin,dc=delixs-schule,dc=de"
      rootpw      wieder ergänzt, da in der Literatur so angegeben
                  erstellt mit:
 
                    cd /etc/ldap
                    slappasswd -u >> slapd.conf
 
              (verschüsselte Passwort angehangen, mit mcedit verschieben)
 
8. /etc/libnss-ldap.conf                                    (Datei im Paket)
 
    Anm. von Harry: Bevor man irgendwas mit NSS und/oder PAM testen oder
      konfigurieren will, muss der nscd ausgeschaltet werden:
 
        /etc/init.d/nscd stop
 
      Die /etc/libnss-ldap.conf  wurde folgendermaßen abgeändert
 
        base dc=delixs-schule,dc=de
        deref  always
        uri ldap://127.0.0.1/
        ldap_version 3
        rootbinddn  cn=admin,dc=delixs-schule,dc=de
        scope sub
        bind_timelimit 30
        bind_policy soft
        nss_connect_policy persist
 
    /etc/init.d/nscd start
 
 
9. Neustart des slapd
 
      /etc/init.d/slapd restart
 
10. Test
 
      'slapcat'  sollte 2 Entries anzeigen
        Wenn man die Ausgabe umleitet mit 'slapcat > test.ldif', dann
        kommen 2 Warnungen
 
 
11. diese Warnungen beseitigen              (entfällt bei der Datei im Paket)
 
    in /etc/ldap/slapd.conf  müssen folgende Zeilen (105, 128*)
    bearbeitet werden:
 
      access to attrs=userPassword,shadowLastChange
          by dn="cn=admin,dc=delixs-schule,dc=de" write
          by anonymous auth
          by self write
          by * none
 
      access to *
          by dn="cn=admin,dc=delixs-schule,dc=de" write
          by * read
 
  jeweils die 2. Zeile (also 'by dn="cn=admin,dc=delixs-schule,dc=de"
  write') muss rausgelöscht werden (nicht nur auskommentiert!)
 
12. Initialisierung des LDAPs
 
  Da die smbldap-tools davon ausgehen, dass alle Gruppen unter einer 'ou'
  zu finden sind, wird nun doch diese sehr einfache Struktur gewählt.
 
 
              .----- ou=groups
            /
            /
          /                  .------ ou=people
          /                  /
LDAPBASE -------- ou=accounts
          \                  \
          \                  `------ ou=machines
            \
            \
              `----- cn=admin
 
Anmerkung: die Einträge für sambaDomain und für DHCP kommen später
            die Einträge für LDAPBASE und cn=admin sind schon drin
 
 
das LDIF-File http://www.arktur.th.schule.de/initldap.ldif  (Datei im Paket)
 
wird so eingespielt:
 
  ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/initldap.ldif
 
rückgängig gemacht werden kann es mit dem passenden Killfile    (Datei im Paket)
http://www.arktur.th.schule.de/killinitldap.del
 
  ldapdelete -x -D cn=admin,dc=delixs-schule,dc=de -W -f /root/killinitldap.del
 
 
13. Konfiguration von NSS
 
/etc/nsswitch.conf                                        (Datei im Paket)
-------------------
passwd:      compat ldap
shadow:      compat ldap
group:      compat ldap
 
14. Konfiguration von PAM
 
als root eine 2. Konsole aufgemacht!
 
/etc/pam_ldap.conf                                        (Datei im Paket)
------------------
base dc=delixs-schule,dc=de
uri ldap://127.0.0.1/                        # geändert
ldap_version 3
rootbinddn cn=admin,dc=delixs-schule,dc=de
scope sub                                    # geändert
bind_policy soft                              # geändert
pam_password exop                            # geändert
Anm.: wo geändert steht, da musste ich den Eintrag erstellen.
Die zwei anderen Einträge waren schon so.
 
/etc/pam.d/common-account                                  (Datei im Paket)
-------------------------
account [success=1 default=ignore]  pam_unix.so
account required                    pam_ldap.so
account required                    pam_permit.so
/etc/pam.d/common-auth                                      (Datei im Paket)
----------------------
auth    [success=1 default=ignore]  pam_unix.so
auth    required      pam_ldap.so use_first_pass ignore_authinfo_unavail
auth    required                    pam_permit.so 
 
/etc/pam.d/common-password                                  (Datei im Paket)
--------------------------
password    [success=1 default=ignore]  pam_unix.so nullok obscure min=4
max=8 md5
password    required        pam_ldap.so try_first_pass
password    required        pam_smbpass.so nullok use_authtok
try_first_pass
password    required        pam_permit.so
 
/etc/pam.d/common-session    (im Paket)
-------------------------
session    required          pam_unix.so
session    required          pam_mkhomedir.so skel=/etc/skel umask=0022 
 
 
15. Ergänzungen an der /etc/ldap/slapd.conf              (Datei im Paket)
 
folgende indexe sollten angelegt werden:
 
#index  default                            eq
index  objectClass                        eq
index  uidNumber                          eq
index  gidNumber                          eq
index  uid,displayName                    eq
index  cn,sn                              pres,eq,sub
index  memberUid                          eq
index  sambaSID                            eq
index  sambaPrimaryGroupSID                eq
index  sambaDomainName                    eq
 
bei den ACLs kommentieren wir diese aus:
(Anm.: beim Testen unter Samba ging search nicht)
 
    access to dn.base="" by * read
 
 
16. Neustart des LDAP
 
  /etc/init.d/slapd restart
 
 
17. Testen der PAM-Konfiguration
 
die Datei unter
 
  http://www.arktur.th.schule.de/mmustermann.ldif              (Datei im Paket)
 
in den LDAP einspielen mit
 
    ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/mmustermann.ldif
 
    damit automatisch das Homeverzeichnis erstellt werden kann, legen
    wir noch das Verzeichnis /home/students/ an
 
 
jetzt sollte der Aufruf von
 
a) anmelden auf einer weiteren Console mit 'mmustermann' und dem Passwort 'geheim'
 
b) 'getent passwd mmustermann'  liefert
 
  mmustermann:x:2000:102:Manfred Mustermann,testklasse:/home/schueler/mmustermann:/bin/bash
 
c) 'id mmustermann' liefert
 
    uid=2000(mmustermann) gid=1002(crontab) Gruppen=1002(crontab)
 
d)  mit 'passwd mmustermann' kann man das Passwort ändern
 
Es ging hier nur um den Test der PAM-Konfiguration, also diesen User
wieder löschen.  (eine lange Zeile!)
 
    ldapdelete -x -D "cn=admin,dc=delixs-schule,dc=de" -W  "uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de"
 
Aus DD-Mails von Hans-Dietrich Kirmse 04./05.02.09
 
 
=== User- und Rechnerverwaltung (E-Mail von Hans-Dietrich Kirmse): ===


''''''


Die Klassen werden wie bei Arktur im GECOS eintragen. m.E. ist ein
Die Klassen werden wie bei Arktur im GECOS eintragen. m.E. ist ein
Zeile 54: Zeile 331:


zu 1. das Anlegen eines einzelnen Users
zu 1. das Anlegen eines einzelnen Users
=======================================
 


sollte direkt mit den smbldaptools erledigt werden.
sollte direkt mit den smbldaptools erledigt werden.
Zeile 80: Zeile 357:


zu 2. das Versetzen eines Users
zu 2. das Versetzen eines Users
===============================
 


Workaround: wir geben das GECOS-Feld komplett neu an (darin ist ja die
Workaround: wir geben das GECOS-Feld komplett neu an (darin ist ja die
Zeile 89: Zeile 366:


zu 3. das Ändern des Passworts eines Users
zu 3. das Ändern des Passworts eines Users
==========================================


dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:
dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:
Zeile 100: Zeile 376:


zu 4. das Aktualisieren der Namen eines Users
zu 4. das Aktualisieren der Namen eines Users
=============================================
 


workaround wie bei 2. Die Klasse muss natürlich wieder angegeben werden.
workaround wie bei 2. Die Klasse muss natürlich wieder angegeben werden.
Zeile 107: Zeile 383:


zu 5. das Löschen eins Users
zu 5. das Löschen eins Users
============================


   smbldap-userdel -r mmustermann
   smbldap-userdel -r mmustermann
Zeile 116: Zeile 391:


zu 6. eine Klasse anlegen
zu 6. eine Klasse anlegen
=========================
 


wir erstellen ein Script 'my-smbldap-passwd' indem wir eine Kopie von
wir erstellen ein Script 'my-smbldap-passwd' indem wir eine Kopie von
Zeile 157: Zeile 432:


zu 7. und 8.  noch nicht realisiert    :(  
zu 7. und 8.  noch nicht realisiert    :(  
===================================
 




Zeile 163: Zeile 438:
zu 10. das Anzeigen aller Klassen
zu 10. das Anzeigen aller Klassen
zu 11. das Anzeigen der User einer Klasse
zu 11. das Anzeigen der User einer Klasse
==========================================
 


dazu habe ich ein Script erstellt, was Folgendes leistet: (gleich aus
dazu habe ich ein Script erstellt, was Folgendes leistet: (gleich aus
Zeile 191: Zeile 466:


zu 12. das Anlegen eines Maschinenaccounts
zu 12. das Anlegen eines Maschinenaccounts
==========================================
 


dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:
dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:
Zeile 200: Zeile 475:


zu 13. das Löschen eines Maschinenaccounts
zu 13. das Löschen eines Maschinenaccounts
==========================================
 


dazu verwenden wir auch die smbldap-tools. als root bzw. mit root-Rechten:
dazu verwenden wir auch die smbldap-tools. als root bzw. mit root-Rechten:
Zeile 209: Zeile 484:


zu 14. das Anzeigen der Maschinenaccounts
zu 14. das Anzeigen der Maschinenaccounts
=========================================
 


für das Anzeigen der Accounts gibt es den Befehl
für das Anzeigen der Accounts gibt es den Befehl

Version vom 15. Februar 2009, 13:47 Uhr

Pakete:

 slapd
 ldap-utils
 libnss-ldap
 libpam-ldap
 libsasl2-modules
 libnet-ldap-perl ??
 nscd (aber während der Tests abstellen)
 winbind (scheint nicht kompatibel zu nfs-mounts zu sein)
 phpldapadmin (wird erst mit apache und php installiert)
 migrationtools ??
 ldap-account-manager-lamdaemon ??


Bei mir kommt gleich nach der Installation von libnss-ldap automatisch die Installation von libpam-ldap, ist also von aptitude gleich mit ausgewählt worden. Hat zur Irritation geführt, das ich es nicht gleich erkannt habe und falsche Angaben gemacht habe, also purge und Neuinstallation. Wenn das das Standardverhalten ist, sollte die Anleitung entsprechend geändert werden. --Dorn 12:46, 4. Feb. 2009 (UTC)

Vermutlich wurde der Haken unter "[ ] empfohlene Pakete automatisch mit installieren" (auf der Seite Entwicklungsumgebung/Aptitude beschrieben) nicht entfernt. Bitte nachholen, sonst installiert das System jede Menge unerwünschter Pakete mit.

--Schoffer 18:34, 4. Feb. 2009 (UTC)

Das war es. Da ich aptitude nicht im Menümodus verwendet habe, habe ich das ignoriert. Die Einstellung wird übrigens in /root/.aptitude/config gespeichert.

--Dorn 12:43, 8. Feb. 2009 (UTC)


Weitere Konfiguration des LDAP hier:

Installation des LDAP (E-Mail von Hans-Dietrich Kirmse)

1. wir stellen das samba.schema bereit (wer das schon gemacht hatte, dann kann das natürlich jetzt entfallen)

aptitude install samba-doc cd /usr/share/doc/samba-doc/examples/LDAP gunzip samba.schema.gz

2. aptitude install slapd

--|Konfiguriere slapd|--

Administrator-Passwort: geheim

3. aptitude install ldap-utils libsasl2-modules

4. aptitude install libnss-ldap

--|Konfiguriere libnss-ldap|--

URI des LDAP-Servers verlangt:               ldap://127.0.0.1:389/


Eindeutiger Name (DN - ...) der Suchbasis:   dc=delixs-schule,dc=de
    Benutzte LDAP-Version:                       3
    LDAP-Zugang für Root:                cn=admin,dc=delixs-schule,dc=de
    Passwort des LDAP-Zugangs für Root:        geheim


5. aptitude install libpam-ldap

   (Aufruf entfällt, da gleich bei 3. automatisch mit installiert wurde)
    --|Konfiguriere libpam-ldap|--
    Lokaler root zum Datenbank-Administrator machen:        Ja
    Benötigt die LDAP-Datenbank eine Anmeldung             Nein
    LDAP-Zugang für Root:               cn=admin,dc=delixs-schule,dc=de
    Passwort des LDAP-Zugangs für root:                    geheim


6. die /etc/ldap/ldap.conf (Datei im Paket)

     BASE dc=delixs-schule,dc=de
     URI  ldap://localhost
     SIZELIMIT       12
     TIMELIMIT       15
     DEREF           always

7. die /etc/ldap/slapd.conf (Datei im Paket)

   das samba-Schema wurde schon am Anfang kopiert, jetzt einbinden:
     include /etc/ldap/schema/samba.schema
                              (*hinter* den anderen Zeilen eintragen)
     loglevel   384   (wenn Entwicklung abgeschlossen, auf 0 setzen)
     sizelimit 3000
     backend hdb               gelassen
     rootdn      "cn=admin,dc=delixs-schule,dc=de"
     rootpw      wieder ergänzt, da in der Literatur so angegeben
                 erstellt mit:
                    cd /etc/ldap
                    slappasswd -u >> slapd.conf
             (verschüsselte Passwort angehangen, mit mcedit verschieben)

8. /etc/libnss-ldap.conf (Datei im Paket)

    Anm. von Harry: Bevor man irgendwas mit NSS und/oder PAM testen oder
     konfigurieren will, muss der nscd ausgeschaltet werden:
       /etc/init.d/nscd stop
     Die /etc/libnss-ldap.conf  wurde folgendermaßen abgeändert
       base dc=delixs-schule,dc=de
       deref   always
       uri ldap://127.0.0.1/
       ldap_version 3
       rootbinddn  cn=admin,dc=delixs-schule,dc=de
       scope sub
       bind_timelimit 30
       bind_policy soft
       nss_connect_policy persist
    /etc/init.d/nscd start


9. Neustart des slapd

     /etc/init.d/slapd restart

10. Test

     'slapcat'  sollte 2 Entries anzeigen
       Wenn man die Ausgabe umleitet mit 'slapcat > test.ldif', dann
       kommen 2 Warnungen


11. diese Warnungen beseitigen (entfällt bei der Datei im Paket)

    in /etc/ldap/slapd.conf  müssen folgende Zeilen (105, 128*)
    bearbeitet werden:
      access to attrs=userPassword,shadowLastChange
         by dn="cn=admin,dc=delixs-schule,dc=de" write
         by anonymous auth
         by self write
         by * none
      access to *
         by dn="cn=admin,dc=delixs-schule,dc=de" write
         by * read
  jeweils die 2. Zeile (also 'by dn="cn=admin,dc=delixs-schule,dc=de"
  write') muss rausgelöscht werden (nicht nur auskommentiert!)

12. Initialisierung des LDAPs

  Da die smbldap-tools davon ausgehen, dass alle Gruppen unter einer 'ou'
  zu finden sind, wird nun doch diese sehr einfache Struktur gewählt.


             .----- ou=groups
            /
           /
          /                   .------ ou=people
         /                   /
LDAPBASE -------- ou=accounts
         \                   \
          \                   `------ ou=machines
           \
            \
             `----- cn=admin

Anmerkung: die Einträge für sambaDomain und für DHCP kommen später

           die Einträge für LDAPBASE und cn=admin sind schon drin


das LDIF-File http://www.arktur.th.schule.de/initldap.ldif (Datei im Paket)

wird so eingespielt:

  ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/initldap.ldif

rückgängig gemacht werden kann es mit dem passenden Killfile (Datei im Paket) http://www.arktur.th.schule.de/killinitldap.del

  ldapdelete -x -D cn=admin,dc=delixs-schule,dc=de -W -f /root/killinitldap.del


13. Konfiguration von NSS

/etc/nsswitch.conf                                        (Datei im Paket)
-------------------

passwd:      compat ldap
shadow:      compat ldap
group:       compat ldap

14. Konfiguration von PAM

als root eine 2. Konsole aufgemacht!

/etc/pam_ldap.conf                                         (Datei im Paket)
------------------
base dc=delixs-schule,dc=de
uri ldap://127.0.0.1/                         # geändert
ldap_version 3
rootbinddn cn=admin,dc=delixs-schule,dc=de
scope sub                                     # geändert
bind_policy soft                              # geändert
pam_password exop                             # geändert 

Anm.: wo geändert steht, da musste ich den Eintrag erstellen. Die zwei anderen Einträge waren schon so.

/etc/pam.d/common-account                                  (Datei im Paket)
-------------------------
account [success=1 default=ignore]  pam_unix.so
account required                    pam_ldap.so
account required                    pam_permit.so 

/etc/pam.d/common-auth                                      (Datei im Paket)
----------------------
auth    [success=1 default=ignore]  pam_unix.so
auth    required      pam_ldap.so use_first_pass ignore_authinfo_unavail
auth    required                    pam_permit.so  
/etc/pam.d/common-password                                  (Datei im Paket)
--------------------------
password    [success=1 default=ignore]  pam_unix.so nullok obscure min=4
max=8 md5
password    required         pam_ldap.so try_first_pass
password    required         pam_smbpass.so nullok use_authtok
try_first_pass
password    required         pam_permit.so
/etc/pam.d/common-session    (im Paket)
-------------------------
session     required          pam_unix.so
session     required          pam_mkhomedir.so skel=/etc/skel umask=0022   


15. Ergänzungen an der /etc/ldap/slapd.conf (Datei im Paket)

folgende indexe sollten angelegt werden:

#index   default                            eq
index   objectClass                         eq
index   uidNumber                           eq
index   gidNumber                           eq
index   uid,displayName                     eq
index   cn,sn                               pres,eq,sub
index   memberUid                           eq
index   sambaSID                            eq
index   sambaPrimaryGroupSID                eq
index   sambaDomainName                     eq

bei den ACLs kommentieren wir diese aus: (Anm.: beim Testen unter Samba ging search nicht)

   access to dn.base="" by * read


16. Neustart des LDAP

  /etc/init.d/slapd restart


17. Testen der PAM-Konfiguration

die Datei unter

  http://www.arktur.th.schule.de/mmustermann.ldif              (Datei im Paket)

in den LDAP einspielen mit

   ldapadd -x -D "cn=admin,dc=delixs-schule,dc=de" -W -f /root/mmustermann.ldif
   damit automatisch das Homeverzeichnis erstellt werden kann, legen
   wir noch das Verzeichnis /home/students/ an


jetzt sollte der Aufruf von

a) anmelden auf einer weiteren Console mit 'mmustermann' und dem Passwort 'geheim'

b) 'getent passwd mmustermann' liefert

 mmustermann:x:2000:102:Manfred Mustermann,testklasse:/home/schueler/mmustermann:/bin/bash

c) 'id mmustermann' liefert

    uid=2000(mmustermann) gid=1002(crontab) Gruppen=1002(crontab)

d) mit 'passwd mmustermann' kann man das Passwort ändern

Es ging hier nur um den Test der PAM-Konfiguration, also diesen User wieder löschen. (eine lange Zeile!)

   ldapdelete -x -D "cn=admin,dc=delixs-schule,dc=de" -W  "uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de"

Aus DD-Mails von Hans-Dietrich Kirmse 04./05.02.09


User- und Rechnerverwaltung (E-Mail von Hans-Dietrich Kirmse):

Die Klassen werden wie bei Arktur im GECOS eintragen. m.E. ist ein Umstellungsscript später kein großes Problem. Außerdem generiere ich hier nur Logins nach dem Muster 'vnachname'. Passwörter generiere ich nur mit der Routine "schöne Passwörter".

Ich brauche:

 1. das Anlegen eines Users
 2. das Versetzen eines Users
 3. das Ändern des Passworts eines Users
 4. das Aktualisieren der Daten (GECOS) eines Users
 5. das Löschen eines Users
 6. das Anlegen einer Klasse
 7. das Versetzen einer Klasse
 8. das Löschen einer Klasse
 9. das Anzeigen aller User
10. das Anzeigen aller Klassen
11. das Anzeigen der User einer Klasse
12. das Anlegen eines Maschinenaccounts
13. das Löschen eines Maschinenaccounts
14. das Anzeigen der Maschinenaccounts


zu 1. das Anlegen eines einzelnen Users


sollte direkt mit den smbldaptools erledigt werden. für das Anlegen des Schülers mmustermann würde der Aufruf so aussehen:

 smbldap-useradd -a -A 1 -g 1002 -n -c 'Manfred Mustermann,5a' -d

/home/pupil/mmustermann -m mmustermann

dabei bedeuten die Parameter:

#  -a	is a Windows User (otherwise, Posix stuff only)
#  -A	can change password ? 0 if no, 1 if yes
#  -g	gid
#  -n	do not create a group
#  -c	gecos
#  -d	home
#  -m	creates home directory and copies /etc/skel

Dafür ein Webinterface zu bauen sehe ich als unproblematisch. eingegeben werden muss der Name, die Klasse bzw. Lehrer und das Login. Im Erfolgsfall wird nichts zurückgegeben.

Wenn das Login schon existert, dann wird zurückgegeben: /usr/sbin/smbldap-useradd: user mmustermann exists


zu 2. das Versetzen eines Users


Workaround: wir geben das GECOS-Feld komplett neu an (darin ist ja die Klasse)

  smbldap-usermod -c 'Manfred Mustermann,6a' mmustermann


zu 3. das Ändern des Passworts eines Users

dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:

  smbldap-passwd mmustermann

dann muss das neue Passwort 2x eingegeben werden


zu 4. das Aktualisieren der Namen eines Users


workaround wie bei 2. Die Klasse muss natürlich wieder angegeben werden.


zu 5. das Löschen eins Users

  smbldap-userdel -r mmustermann
  1. -r bedeutet, dass das Homeverzeichnis auch gelöscht wird


zu 6. eine Klasse anlegen


wir erstellen ein Script 'my-smbldap-passwd' indem wir eine Kopie von 'smbldap-passwd' erstellen und folgende Zeilen modifzieren:

#-------------------------------------------
# dieser Hack ist nur dafuer gedacht, dass der Aufruf
# des Scripts als root erfolgt, wobei ein Username und
# das Passwort als weiterer Parameter uebergeben wird.
# es wird nicht abgefangen, ob diese Voraussetzung erfuellt ist
$pass = $ARGV[1];
$pass2 = $ARGV[1];
#print "New password: ";
#system "/bin/stty -echo" if (-t STDIN);
#chomp($pass=<STDIN>);
#system "/bin/stty echo" if (-t STDIN);
#print "\n";
#print "Retype new password: ";
#system "/bin/stty -echo" if (-t STDIN);
#chomp($pass2=<STDIN>);
#system "/bin/stty echo" if (-t STDIN);
#print "\n";
#-------------------------------------------


um die Accounts klassenweise anzulegen, habe ich ein Script 'delixs-user' bereitgestellt, welches aber mehr als 300 Zeilen lang ist und deshalb habe ich das hier abgelegt:

  http://www.arktur.th.schule.de/delixs-user

nach delixs-user umbenennen und z.B. so aufrufen:

  delixs-user 8b userdatei.txt

dabei ist die Datei userdatei.txt eine Datei, wie sie auch bei Arktur4 erwartet wird. (sorry - ich habe die unter Linux angelegt, werde ich noch ändern)


zu 7. und 8. noch nicht realisiert  :(


zu 9. das Anzeigen aller User zu 10. das Anzeigen aller Klassen zu 11. das Anzeigen der User einer Klasse


dazu habe ich ein Script erstellt, was Folgendes leistet: (gleich aus dem Quelltext kopiert)

###########################################################
# Funktion: holt das Login und den Namen (und die Klasse)
# das Script wird so aufgerufen:
# ./userlist;
# ./userlist SCHUELER
# ./userlist LEHRER
# ./userlist KLASSEN
# ./userlist ALL
# ./userlist 8c
# wenn kein Parameter, dann werden die Schueler aufgelistet.
# Das ist dasselbe wie der Parameter SCHUELER. Mit dem Parameter
# LEHRER werden die Lehrer aufgelistet. Mit dem Paramter ALL
# werden Schueler und Lehrer aufgelistet, mit dem Parameter KLASSEN
# werden alle vorhandenen Klassen aufgelistet und wenn eine Klasse
# uebergeben wird, dann werden die Schueler dieser Klasse aufgelistet

dieses Script habe ich hier abgelegt:

  http://www.arktur.th.schule.de/userlist


zu 12. das Anlegen eines Maschinenaccounts


dazu verwenden wir die smbldap-tools. als root bzw. mit root-Rechten:

  smbldap-useradd -w pc01
  smbldap-useradd -w -u 1050 pc02


zu 13. das Löschen eines Maschinenaccounts


dazu verwenden wir auch die smbldap-tools. als root bzw. mit root-Rechten:

  smbldap-userdel  pc01
  smbldap-userdel  pc02


zu 14. das Anzeigen der Maschinenaccounts


für das Anzeigen der Accounts gibt es den Befehl

  smbldap-userlist

der liefert folgende Anzeige:

 uid  |username

    0 |root
65534 |nobody
1001 |mmustermann
1002 |eolsen
1003 |spass
1010 |mplank
1011 |aapel
1012 |pc01$
1050 |pc02$


Nur die letzten beiden Zeilen werden angezeigt:


smbldap-userlist -m
uid  |username
7777 |xp1$
65537 |XP2$
65544 |delixs-1$
2011 |pc$

Bitte beachten, dass dollarzeichen ist nicht das letzte Zeichen in der Zeile, sondern es kommen danach noch ein paar Leerzeichen.

Weitere Optionen:

smbldap-userlist -?


Aus DD-Mails von Hans-Dietrich Kirmse 29./30.01.09

--Dorn 12:24, 15. Feb. 2009 (UTC)