EDV:LDAP: Difference between revisions

From KIP Wiki
⧼kip-jumptonavigation⧽⧼kip-jumptosearch⧽
mNo edit summary
(soweit fertig :))
Line 1: Line 1:
= Einrichten eine [[EDV:LDAP|LDAP]]-Clients im KIP =
= Einrichten eines [[EDV:LDAP|LDAP]]-Clients im KIP =

Hier [[KIP]] wird die zentrale Nutzerverwaltung in LDAP gemacht.
Wenn von [[KIP-Account]] die Rede ist, wird damit immer der Account im LDAP gemeint.


Wichtige Angaben:
{| {{Prettytable}}
| 1. LDAP-Server || '''ldap'''.kip.uni-heidelberg.de (129.206.176.40)
|-
| 2. LDAP-Server || '''ldap2'''.kip.uni-heidelberg.de (129.206.176.149)
|-
| search base || '''dc=kip.uni-heidelberg,dc=de'''
|-
| LDAP Version || 3
|-
|}




== LDAP-Utils ==
== LDAP-Utils ==
Diese Tools ermöglichen unter anderem eine einfache Abfrage auf der Kommandozeile mit '''ldapsearch'''.


Installieren der Binaries:
=== ldapsearch ===
aptitude install ldap-utils

Die '''/etc/ldap/ldap.conf''' sollte so aussehen:
URI ldap://ldap.kip.uni-heidelberg.de ldap://ldap2.kip.uni-heidelberg.de
BASE dc=kip.uni-heidelberg,dc=de
ldap_version 3
TLS_REQCERT allow
tls_cacert /etc/ssl/kip.crt

Die Datei '''kip.crt''' gibt es hier: [[EDV:KIP-Wurzelzertifikat|KIP-Wurzelzertifikat]]




== NSS (Namensauflösung) ==
== NSS (Namensauflösung) ==


Installieren der Binaries:
aptitude install libnss-ldap

In der '''/etc/pam_ldap.conf''' muss folgendes enthalten sein:
uri ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/
base dc=kip.uni-heidelberg,dc=de

An den Einträgen '''passwd''' und '''group''' in der '''/etc/nsswitch.conf''' muss '''ldap''' angehängt werden:
passwd: compat '''ldap'''
group: compat '''ldap'''
shadow: compat


== PAM (Pluggable Authentication Modules) ==

Installieren der Binaries:
aptitude install libpam-ldap

In der '''/etc/pam_ldap.conf''' sollte folgendes enthalten sein:
uri ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/
base dc=kip.uni-heidelberg,dc=de
scope sub
nss_base_passwd ou=people,dc=kip.uni-heidelberg,dc=de
nss_base_group ou=group,dc=kip.uni-heidelberg,dc=de
nss_map_attribute uniqueMember member
## Here you can restrict access to only some people (for example KIPGroup S3)
pam_filter objectclass=posixAccount
#pam_filter &(objectclass=posixAccount)(KIPGroup=S3)
pam_password crypt
pam_min_uid 1000
ssl on
tls_checkpeer no
tls_cacertfile /etc/ssl/kip.crt

Die Datei '''kip.crt''' gibt es hier: [[EDV:KIP-Wurzelzertifikat|KIP-Wurzelzertifikat]]

Nun entweder für den Dienst den man anbieten will '''pam_ldap.so''' hinzufügen oder allgemein
in den '''common-*'''-Dateien.
Beispiel für eine '''/etc/pam.d/common-auth''':
'''auth sufficient pam_ldap.so''' ignore_unknown_user
auth required pam_unix.so nullok_secure

Beispiel für eine '''/etc/pam.d/common-account''':
'''account sufficient pam_ldap.so''' ignore_unknown_user
account required pam_unix.so

{{Achtung|So wird der Nutzer erst im LDAP überprüft/gesucht und erst bei Nichterfolg lokal.}}

Die '''/etc/pam.d/ssh''' sieht dann zum Beispiel immernoch so aus:
auth required pam_env.so # [1]
auth required pam_env.so envfile=/etc/default/locale


# Standard Un*x authentication.
== PAM ==
@include '''common-auth'''
account required pam_nologin.so
# Standard Un*x authorization.
@include '''common-account'''
# Standard Un*x session setup and teardown.
@include common-session
session optional pam_motd.so # [1]
session optional pam_mail.so standard noenv # [1]
session required pam_limits.so
# Standard Un*x password updating.
@include common-password





Revision as of 14:58, 6 March 2007

Einrichten eines LDAP-Clients im KIP

Hier KIP wird die zentrale Nutzerverwaltung in LDAP gemacht. Wenn von KIP-Account die Rede ist, wird damit immer der Account im LDAP gemeint.


Wichtige Angaben:

1. LDAP-Server ldap.kip.uni-heidelberg.de (129.206.176.40)
2. LDAP-Server ldap2.kip.uni-heidelberg.de (129.206.176.149)
search base dc=kip.uni-heidelberg,dc=de
LDAP Version 3


LDAP-Utils

Diese Tools ermöglichen unter anderem eine einfache Abfrage auf der Kommandozeile mit ldapsearch.

Installieren der Binaries:

aptitude install ldap-utils

Die /etc/ldap/ldap.conf sollte so aussehen:

URI     ldap://ldap.kip.uni-heidelberg.de ldap://ldap2.kip.uni-heidelberg.de
BASE    dc=kip.uni-heidelberg,dc=de
ldap_version    3

TLS_REQCERT     allow
tls_cacert /etc/ssl/kip.crt

Die Datei kip.crt gibt es hier: KIP-Wurzelzertifikat


NSS (Namensauflösung)

Installieren der Binaries:

aptitude install libnss-ldap

In der /etc/pam_ldap.conf muss folgendes enthalten sein:

uri ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/
base dc=kip.uni-heidelberg,dc=de

An den Einträgen passwd und group in der /etc/nsswitch.conf muss ldap angehängt werden:

passwd:         compat ldap
group:          compat ldap
shadow:         compat


PAM (Pluggable Authentication Modules)

Installieren der Binaries:

aptitude install libpam-ldap

In der /etc/pam_ldap.conf sollte folgendes enthalten sein:

uri ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/
base dc=kip.uni-heidelberg,dc=de

scope sub
nss_base_passwd    ou=people,dc=kip.uni-heidelberg,dc=de
nss_base_group     ou=group,dc=kip.uni-heidelberg,dc=de
nss_map_attribute  uniqueMember member

## Here you can restrict access to only some people (for example KIPGroup S3)
pam_filter         objectclass=posixAccount
#pam_filter        &(objectclass=posixAccount)(KIPGroup=S3)

pam_password       crypt
pam_min_uid        1000

ssl on
tls_checkpeer no
tls_cacertfile /etc/ssl/kip.crt

Die Datei kip.crt gibt es hier: KIP-Wurzelzertifikat

Nun entweder für den Dienst den man anbieten will pam_ldap.so hinzufügen oder allgemein in den common-*-Dateien. Beispiel für eine /etc/pam.d/common-auth:

auth     sufficient   pam_ldap.so  ignore_unknown_user
auth     required     pam_unix.so  nullok_secure

Beispiel für eine /etc/pam.d/common-account:

account  sufficient   pam_ldap.so  ignore_unknown_user
account  required     pam_unix.so 
So wird der Nutzer erst im LDAP überprüft/gesucht und erst bei Nichterfolg lokal.

Die /etc/pam.d/ssh sieht dann zum Beispiel immernoch so aus:

auth       required     pam_env.so # [1]
auth       required     pam_env.so envfile=/etc/default/locale
# Standard Un*x authentication.
@include common-auth

account    required     pam_nologin.so

# Standard Un*x authorization.
@include common-account

# Standard Un*x session setup and teardown.
@include common-session

session    optional     pam_motd.so # [1]
session    optional     pam_mail.so standard noenv # [1]
session    required     pam_limits.so

# Standard Un*x password updating.
@include common-password