PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ldapsearch -x abstellen



klf
17.12.07, 11:37
Hi,

ich wollte kurz fragen, welche Datei (und was) ich editieren muss, damit die Simple Authentification nichtmehr funktioniert. Der einzige Weg um ldapsearch durchführen zu können, soll über SASL sein.

LG Chris

clumsy
17.12.07, 12:09
bin mir nicht ganz sicher, könnte aber
/etc/nsswitch.conf oder die pamd.conf sein...

klf
17.12.07, 12:54
Hab mal geschaut, aber dort keinen passenden Eintrag gefunden... :(

hessijens
17.12.07, 13:28
In der slapd.conf kann man die "Mindestverschlüsselung" angeben z.B.:

security simple_bind=x

bei x>0 geht nur noch SSL/TLS. Je nachdem was wie (nicht) gehen soll, lässt sich damit einstellen. man slapd.conf hilft evtl. Dir weiter.

klf
17.12.07, 13:56
Also ich habe momentan Apache2 auf SLES 10 SP1 laufen... und kann dort unter /etc/openldap/slpd.conf keinen passenden Eintrag finden, welcher die Mindestverschlüsselung angibt - oder muss ich die Datei um diese Eintragung ergänzen? Hast du evtl. eine Beispiel.conf?

hessijens
20.12.07, 15:48
Sorry wegen der späten Antwort ich war unterwegs. Du musst den Eintrag


security simple_bind=x

mit x = 1,56,112 oder 128 hinzu, je nachdem was Du willst.


security NOPLAIN

sollte das übrigens auch tun. Weitere informationen erhälst Du auf der Manpage von slapd.conf. Übrigens unterscheide simpele bind von Plaintext sasl. Wenn Du auch auch kein SASL Plain Anmeldung zulassen möchtest musst Du noch


sasl_secprops minssf=x

x=.. na Du weist schon. Oder ändere die Datei /etc/sasl2/slapd.conf entsprechend (Könnte auch /usr/lib/sasl2/slapd.conf sein). Anbei ein Beispiel mit "sasl_secprops minssf=0" und "security noplain noanonymous noactive". Für eine Benutzerverwaltung in LDAP musste ich die security Option übrigens löschen.:(

include /etc/openldap/schema/core.schema

include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
#need by SuSE
include /etc/openldap/schema/yast.schema
#need by samba ldap account
include /etc/openldap/schema/samba3.schema
#need for store dhcp and dns in ldap
include /etc/openldap/schema/dhcp.schema
include /etc/openldap/schema/dnszone.schema
#need for radius ldap-auth
include /etc/openldap/schema/radius.schema

pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args

# Load dynamic backend modules:
modulepath /usr/lib/openldap/modules
#moduleload back_ldap.la
#moduleload back_meta.la
#moduleload back_monitor.la
#moduleload back_perl.la

#Config for TSL/SSL
TLSCipherSuite HIGH:MEDIUM:+SSLv2:+SSLv3
TLSCertificateFile /etc/ssl/ldapcert.pem
TLSCertificateKeyFile /etc/ssl/ldap.pem
TLSCACertificateFile /etc/ssl/demoCA/cacert.pem
TLSVerifyClient allow

################################################## #####################
# BDB database definitions
################################################## #####################

allow bind_v2
database bdb
suffix "dc=domain,dc=org"
checkpoint 1024 5
cachesize 10000
#loglevel 0
loglevel 2048
directory /var/lib/ldap
rootdn "cn=manager,dc=domain,dc=org"
rootpw "{smd5}<geheim>"
#rootdn "cn=manager,dc=domain,dc=org"
#rootpw "<noch geheimer da klartext>"
secprops noplain noanonymous noactive
sasl-realm REALM
sasl-secprops minssf=0
sasl-host ldap.doamin.org
srvtab /etc/openldap/srvtab.keytab
saslRegexp uid=([^,]*),cn=DIGEST-MD5,cn=auth uid=$1,ou=users,dc=domain,dc=org
saslRegexp uid=([^,]*),cn=CRAM-MD5,cn=auth uid=$1,ou=users,dc=domain,dc=org
saslRegexp uid=([^,]*),cn=GSSAPI,cn=auth uid=$1,ou=users,dc=domain,dc=org

password-hash {SMD5}

index objectClass eq
index uid,memberUid,gidNumber,uidNumber pres,eq
index cn pres,eq

# database access control definitions
access to attrs=userPassword,sambaLMPassword,sambaNTPassword ,userPKCS12
by self write
by dn.base="cn=wwwrun,ou=users,dc=domain,dc=org" read
by dn.base="cn=cyrus,ou=users,dc=domain,dc=org" read
by dn.regex="uid=root,cn=GSSAPI,cn=auth" write
by anonymous auth
access to attrs=uid,uidNumber,gidNumber,gecos,homeDirectory, loginShell,memberUid,userCertificate
by self write
by dn.base="cn=wwwrun,ou=users,dc=domain,dc=org" read
by dn.base="cn=cyrus,ou=users,dc=domain,dc=org" read
by dn.regex="uid=root,cn=GSSAPI,cn=auth" write
by users read
by anonymous search
by * none
access to dn.subtree="ou=dhcp,dc=domain,dc=org"
by dn.base="cn=dhcp,ou=users,dc=domain,dc=org" write
by * none
access to dn.subtree="ou=dns,dc=domain,dc=org"
by dn.base="cn=named,ou=users,dc=domain,dc=org" write
by * none
access to *
by self write
by dn.regex="uid=root,cn=GSSAPI,cn=auth" write
by anonymous read
by * read

index dhcpHWAddress eq
index dhcpClassData eq
index dhcpPrimaryDN eq
index dhcpSecondaryDN eq
index zoneName eq
index relativeDomainName eq
index sambaDomainName,sambaSID,sambaSIDList,sambaGroupTy pe eq

hessijens
20.12.07, 16:09
Für was möchtest Du openldap eigentlich verwenden?

Zur Authorisierung?
oder zur Benutzerverwaltung?
oder nur als Datenbankbackend?

Wenn Du nur SASL Auth möchtest wohl kaum Zur Authorisierung, dazu verwendest Du dann saslauthd oder Kerberos? (Für Kerberos und LDAP braucht Du auch eine Keytab! und s.o. GSSAPI regexp Ausdrücke.)

Also bleibt die Benutzerverwaltung. Bedenke aber, das Du die Benutzer in LDAP und die Passwörter in saslauthd oder Kerberos warten musst.

Als Backend solltest Du bedenen, das die Anwendungen sich dann auch über SASL authorisieren müssen. Heimdal kann das z.B. nicht, aber ich glaube SuSE nutzt sowieso nur MIT Kerberos. BIND kann glaube ich auch nur simple bind und von Samba weiß ich das auch nicht sicher.

Die nächste Frage ist was hat Apache damit zu tun? Wenn Dur mittels mod_authnz_ldap den Zugriff absichern möchstes, warum nutzt Du dann nicht gleich mod_auth_digest bzw. mod_auth_kerb sondern gehst den Umweg über LDAP?