LDAP + SSL/TLS - Can't contact LDAP server

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

LDAP + SSL/TLS - Can't contact LDAP server

Beitrag von McAldo » 08.10.2007 14:52:58

Hallo

Habe einen LDAP-Server laufen, der wunderbar auf Port 389 funktioniert. Nun soll die Kommunikation über SSL abgesichert werden. Zertifikat ist erstellt und der LDAP-Server lauscht auf Port 636:

Code: Alles auswählen

# netstat -tulpn
Aktive Internetverbindungen (Nur Server)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22           0.0.0.0:*               LISTEN     5223/sshd
tcp        0      0 172.20.10.1:636        0.0.0.0:*               LISTEN     7147/slapd
Mache ich eine Abfrage des Zertifikates, bekomme ich auch eine Rückmeldung:

Code: Alles auswählen

openssl s_client -connect ldapserver:636

CONNECTED(00000003)
depth=1 /C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=Firma/emailAddress=admin@firma.de
verify error:num=19:self signed certificate in certificate chain
verify return:0
---
Certificate chain
 0 s:/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=ldapserver.firma.intern/emailAddress=admin@firma.de
   i:/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=Firma/emailAddress=admin@firma.de
 1 s:/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=Firma/emailAddress=admin@firma.de
   i:/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=Firma/emailAddress=admin@firma.de
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIHzCCBQ+gwIBAgIBATANBgkqhkiG9w0BAQUFADCBkDELMAkGA1UEBhCREUx
EDAOBgNVBAgTB0dlc1hbnkxEDAOBgNVBAcTB0xlaXB6aWcxFDASBgNVBAoTC0Rp
Z2l0YWx6b25lMQwwCgYDVQQLEwNFFYxFDASBgNVBAMTC0RpZ2l0YWx6b25lMSMw
IQYKoZIhvcNAkBFhRhZG1pbkBkaWdpdGFsem9uZS5kZTAeFw0wNzEwMDUxNDEw
NDlaFw0xMzAMjcxNDEwNDlaMIGgMQswCQYDVQQGEwJERTEQMA4GA1UECBMHR2Vy
bWFuTEQMA4GA1UEBxMHTGVpcHppZzEUMBIG1UEChMLRGlnaXhbHpvbmUxDDAK
BgNVBAsTA0VEVjEkMCIGA1UEAxMbbGRhcHNlcnYuZGlnaXRhbHpvbmUuaW50ZXJu
MSMwIQYJKoZIhvcNAkBFhRhZG1pbkBkaWdpdGFsem9uZS5kZTCCAiIwDQYJKoZI
hvcNAQEBBQADggIPADCCAgoCggIBAOtqJmuJ64BrBfRP/4odxVzBkNTDx+IdQhJ7
2vNLPXcu1oSIqshc78rO3lWCjs3b+MQx+gVYmwFs5kNn5vdvhdkW43Z/kgrTuP1
egBDSjVPZFoMyBIE2GqnfQHKf/i6Q5nCpgEcUG2PLabiVSjvqDP86hWq7q5eayFR
+tTYb/mFkJVMauqJBrgpbhGB/qVwQnXhnI/Fc/HKnPaEQK5qHz6YDsalT7Or85r
kkfsBRMvaBZS6YQHkTELJYAgno0J0HCddrP/fPYt4JPZh/Ke9QofLf7obohPCeo
VxKDVhPUHNIIt21LZqb9+WKvptQf62H0Xvv7PIxjySS2so6w/WiWayF2YkVsNud/
qoK1+G/JxYj0EeNZBISSiMt2yXfVFSr4BD/8de7ftsAzt+2zvIooCodntYemW1O
URS1j97bMxjv3epKlQBUFnYq5VZpiE6RHnaqQhMVF3Ln15uTQMVxsd8xLlODQzh
74QSAs+QJrohBO/KRcPwz/Jx9Nek0twZW3DjlqysSxkEGX5PJJDz1ZDI3GuGXcPS
1Prlsw00c4vb9vxzismBqh9lxHqgZ9GKrQqGscWnf5XUKLoZIXsJ6xkBzEo0FR7R
dTBedYutcXlZajZrWBc8eIRh7jHgW9h9ls8qe+9Z1WGVX6BzUN3sitxcQcncRdn
Txo+W0iHAgMBAAGjggF4MIIBdDAJBgNVHRMEAjAAMBEGCWCGSAGG+EIBAQQEAwIG
QDArBglghkgBhvhCAQ0EHhYcVGlueUNBIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAd
BgNVHQ4EFgQU8vuRkXqffahfEWYDJas0HafkOHkwgcUGA1UdIwSBvTCBuoAUpubN
GTMitsUnNXHKAjCV9UFho1ShgZakgZMwgZAxCzAJBgNVBAYTAkRFMRAwDgYDVQQI
EwdHZXJtYW55MRAwDgYDVQQHEwdMZWlwemlnMRQwEgYDVQQKEwtEaWdpdGFsem9u
ZTEMMAoGA1UECxMDRURWMRQwEgYDVQQDEwtEaWdpdGFsem9uZTEjMHRIEGDAW
gRRhZG1pbkBkaWdpdGFsem9uZS5kZTAfBgNVHREEGDAWgRRhZG1pbkBkaWdpdGFs
em9uZS5kZTANBgkqhkiG9w0BAQUFAAOCAgEAbfz6AFQsiztzF6o6zJ2+FaDUtN8k
u7170DNcQKQ6hBY2/ZS93oObvi685kx+UzfKQDGOzIaST+BG5rXaKhG1W6+fNTnA
QmLVwd0v300xdttlIZus4WIoWMryOL6KnCW8kTn6OIV7efhplSGK68/FodJaPkV1
QLe1BEkBzxTyCCkhs71P72Tvla8iMSKQDN0aUvnazE12hTctdosCwceF9sTiSlw
tmBIJ2r34YCsImAKDYIgx6zW7gOCXiGUY82HmormO738oSfyRtOLEOvjii9FHbIZ
d7Mp/45ecn+wG0RvAvwgNFv5LtTBXBIHsMorXJx03E3/CDE+f+AARxg7lw2LWBgT
9Iqc0Nj6HtB3DHFAQoFw9NllYQik1hhyncYD2f4xhA8HMKWbyPTec+6DdioIwD8
bj1BqjcdOoYsmF9P5/pFjYTP0S3EWdHijqFmyJ1bgsfF9H+U2x3JGOMQywrb9E94
3jxGICeJmeIGV/B33Wj156S3ccQOnbThsB1NesPVq1Uf3HFVHEKUWQzWEu99iu6c
kTTXOFS7rSnbM61WwifMzof1QY357ma+aGEKZiGc/NbOth3xpowh7Bor4RMG2Q
1BruL2KiXgDJ+v1Q6MBP7w1nFW1KTMuUKY5p4PIpBWEbC3z68H19wESnu2UlhVS
acEHlIbLjP/53ME=
-----END CERTIFICATE-----
subject=/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=ldapserver.firma.intern/emailAddress=admin@firma.de
issuer=/C=DE/ST=Germany/L=Stadt/O=Firma/OU=EDV/CN=Firma/emailAddress=admin@firma.de
---
No client certificate CA names sent
---
SSL handshake has read 3827 bytes and written 700 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 4096 bit
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES256-SHA
    Session-ID: 01D18BA5A9F3C5A2A8A2DDCD7AD11EF71E0D965368F27F0F77AD3D5554AC
    Session-ID-ctx:
    Master-Key: 0AA7867C0733C866FBED85D0A45F61A1E780875E57D08ED62A56D8A15357A9B84928F1DD3ECAD13D19B0A0E03
    Key-Arg   : None
    Start Time: 1191847551
    Timeout   : 300 (sec)
    Verify return code: 19 (self signed certificate in certificate chain)
---
Mit ldapsearch gibt es aber keinen Zugriff:

Code: Alles auswählen

ldapsearch -x -H "ldaps://ldapserver.firma.intern"
ldap_bind: Can't contact LDAP server (-1)
        additional info: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Was ist da der Fehler?

McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

joomart
Beiträge: 112
Registriert: 21.01.2003 14:38:17
Lizenz eigener Beiträge: neue BSD Lizenz
Wohnort: Bayern
Kontaktdaten:

Symlinks mit c_rehash aktualisieren

Beitrag von joomart » 03.11.2007 20:53:42

Wo hast Du die Zertifikate und den Private Key hin kopiert? Gewöhnlich werden diese
zur Verifizierung herangezogen. In der Config von LDAP sind diese Dateien ja anzugeben.
Dann sollte es eigentlich auch gehen.

Eventuell gibt es ein Problem bei der Verifizierung das CA-Zertifikat zu finden.
Versuch einfach, die sogenannten Hash-Symlinks zu aktualisieren. Vielleicht hilfts:

Code: Alles auswählen

c_rehash /etc/ssl/certs
Ciao, Joo
------
zu meinen Debianpaketen: http://www.joonet.de/debian/

Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

Beitrag von McAldo » 05.11.2007 11:33:09

Danke erstmal für deine Antwort.

Das Zertifikat liegt unter /etc/ldap

Ich hab mal ein c_rehash /etc/ldap/ gemacht mit folgendem Ergebnis:

Code: Alles auswählen

Doing /etc/ldap/
slapd_cert.pem => 1101f900.0
unable to load certificate
6417:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1296:
6417:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=X509
WARNING: slapd_key.pem does not contain a certificate or CRL: skipping
unable to load certificate
6418:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1296:
6418:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:380:Type=X509
WARNING: orig_slapd_key.pem does not contain a certificate or CRL: skipping
Ist das Zertifikat kaputt?

McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Beitrag von ThorstenS » 10.11.2007 08:55:53

Kann es sein, dass du mittels -ZZ die Benutzung von SSL erzwingen musst ?

Schau dir mal den Workshop unter http://www.kania-online.de/workshop.htm an. Dort ist alles Schitt für Schritt erklärt. Evtl. findest du damit einen Fehler in deinem Setup.

duser100
Beiträge: 19
Registriert: 20.06.2007 14:21:28

Beitrag von duser100 » 22.11.2007 11:31:11

Ob 'CN=Firma' funktioniert bezweifle ich. Gehört da nicht normalerweise der Name vom Server rein? Kann sogar sein daß es nicht mal mit der IP funktioniert. Ich meine das ist sehr oft ein Problem daß er da im CN eigentlich den Host+Domainnamen will und wenn dann irgendwas anderes drin steht kann er das nicht auflösen und es klappt nicht. (z.B. bei Bacula).

Ausserdem würde ich dazu raten die 'openssl Zeile' zum basteln vom Zertifikat selbst einzutippen oder eigene Skripte hierfür. Wenn man da irgendwelche fertigen Tools nimmt (Easy-RSA von OpenVPN z.B.) wird das wohl nicht klappen (anderer Verwendungszweck)


Edit: Weiß aber nicht ob das hier das Problem ist denn offenbar verwendest du ja auch CN=ldapserver.firma.intern

Benutzeravatar
McAldo
Moderator
Beiträge: 2069
Registriert: 26.11.2003 11:43:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Terra / Sol-System / Milchstraße

Beitrag von McAldo » 22.11.2007 14:53:49

Mit -ZZ hat es auch nicht funktioniert. Habe das Zertifikat nochmal neu erstellt, wieder kein Erfolg. Die Erstellung mache ich mit den OpenSSL Konsolentools, also nicht mit irgendeiner GUI.

Werde mich die Tage erneut mit dem Problem beschäftigen, im Moment hänge ich an anderen Dingen fest. :-(

McAldo
Achte auf deine Gedanken, denn sie werden Worte.
Achte auf deine Worte, denn sie werden Handlungen.
Achte auf deine Handlungen, denn sie werden Gewohnheiten.
Achte auf deine Gewohnheiten, denn sie werden dein Charakter.
Achte auf deinen Charakter, denn er wird dein Schicksal.
(Talmud)

Pawel
Beiträge: 284
Registriert: 27.11.2006 03:59:39

Beitrag von Pawel » 22.11.2007 15:14:18

Code: Alles auswählen

No client certificate CA names sent
OpenLDAP verlangt, dass Zertfifkate von einem gültigen CA zertifiziert werden
Eine Anleitung für das erstellen eines eigenen CA gibt es u.a. hier.

Antworten