„LDAP kliens SSL” változatai közötti eltérés
(→Apache) |
(→Java) |
||
39. sor: | 39. sor: | ||
== Java == | == Java == | ||
+ | A Java VM alapértelmezetten a <code>$JRE_HOME/lib/security/cacerts</code> fájlban keresi a megbízható CA-kat. | ||
+ | |||
+ | Új megbízható CA hozzáadása a truststore-ba: | ||
+ | root@idp:/usr/jdk# <b>./bin/keytool -import -trustcacerts -alias "niifldapca" -file /tmp/niif_ldap_ca.pem \ | ||
+ | -keystore ./jre/lib/security/cacerts </b> | ||
+ | Enter keystore password: <b>changeit</b> | ||
+ | Owner: CN=National Information Infrastructure Development Program CA, O=NIIF, C=HU | ||
+ | Issuer: CN=National Information Infrastructure Development Program CA, O=NIIF, C=HU | ||
+ | Serial number: 1 | ||
+ | Valid from: Mon Sep 02 01:00:00 CEST 2002 until: Fri Sep 02 01:00:00 CEST 2022 | ||
+ | Certificate fingerprints: | ||
+ | MD5: 9C:FD:1C:85:50:56:59:54:EE:63:2B:98:F4:C9:38:72 | ||
+ | SHA1: 8A:F5:FB:C1:EA:58:F6:D3:B8:4D:3B:3A:76:39:E8:76:4F:DD:07:54 | ||
+ | Signature algorithm name: SHA1withRSA | ||
+ | Version: 3 | ||
+ | |||
+ | Extensions: | ||
+ | |||
+ | #1: ObjectId: 2.5.29.15 Criticality=true | ||
+ | KeyUsage [ | ||
+ | DigitalSignature | ||
+ | Key_CertSign | ||
+ | Crl_Sign | ||
+ | ] | ||
+ | |||
+ | #2: ObjectId: 2.5.29.19 Criticality=true | ||
+ | BasicConstraints:[ | ||
+ | CA:true | ||
+ | PathLen:2147483647 | ||
+ | ] | ||
+ | |||
+ | #3: ObjectId: 2.5.29.14 Criticality=false | ||
+ | SubjectKeyIdentifier [ | ||
+ | KeyIdentifier [ | ||
+ | 0000: 0C D6 26 D4 2F BA C9 B4 DD 25 B8 1E CF EF ED 5B ..&./....%.....[ | ||
+ | 0010: 9F D2 94 F9 .... | ||
+ | ] | ||
+ | ] | ||
+ | |||
+ | #4: ObjectId: 2.16.840.1.113730.1.1 Criticality=false | ||
+ | NetscapeCertType [ | ||
+ | SSL CA | ||
+ | S/MIME CA | ||
+ | Object Signing CA] | ||
+ | |||
+ | #5: ObjectId: 2.5.29.35 Criticality=false | ||
+ | AuthorityKeyIdentifier [ | ||
+ | KeyIdentifier [ | ||
+ | 0000: 0C D6 26 D4 2F BA C9 B4 DD 25 B8 1E CF EF ED 5B ..&./....%.....[ | ||
+ | 0010: 9F D2 94 F9 .... | ||
+ | ] | ||
+ | |||
+ | ] | ||
+ | |||
+ | Trust this certificate? [no]: <b>yes</b> | ||
+ | Certificate was added to keystore | ||
+ | |||
+ | Jelszó: '''changeit''' (ez a default Java keystore password) | ||
+ | |||
== Tomcat == | == Tomcat == | ||
??? | ??? |
A lap 2007. július 5., 12:09-kori változata
A legtöbb esetben az egyetlen feladat, hogy a "megbízható" CA-k adatait megadjuk. Erre sajnos alkalmazásonként más-más módszert kell használni.
OpenSSL
# cd /etc/ssl/certs # wget http://www.directory.niif.hu/niif_ldap_ca.pem # ln -s niif_ldap_ca.pem `openssl x509 -hash -in niif_ldap_ca.pem -noout`.0
A legutolsó paranccsal "bízunk meg" az NIIF LDAP CA-ban.
Próba:
$ openssl verify niif_ldap_ca.pem niif_ca_root_x509.pem: OK
OpenLDAP
Az OpenLDAP-nak vagy felhasználónként a ~/.ldaprc
fájlban, vagy a központi konfigurációs állományban adjuk meg a megbízható CA-kat. Ezek pl. itt lehetnek:
-
/etc/ldap/ldap.conf
(Debian) -
/etc/openldap/ldap.conf
(RHEL) -
/usr/local/etc/openldap/ldap.conf
(FreeBSD)
Javasolt tartalom:
TLS_CACERTDIR /etc/ssl/certs TLS_REQCERT demand
Próba:
$ ldapsearch -x -H ldaps://directory.iif.hu -b o=niif,c=hu -s base -LLL dn -v ldap_initialize( ldaps://directory.iif.hu ) filter: (objectclass=*) requesting: dn dn: o=NIIF,c=HU
Apache
Ahhoz, hogy a mod_ldap
modul SSL-en keresztül tudjon kapcsolódni az LDAP szerverhez, szükség van az LDAPTrustedCA direktíva használatára. Ez a direktíva csak a szerver konfigban értelmezhető, tehát a httpd.conf
vagy az apache2.conf
-ba kell tenni.
Az Apache 2.2-ben már nincs meg ez a direktíva. A tapasztalat szerint működik az SSL-es LDAP kapcsolat, ha a fenti pontok beállításait (OpenLDAP, OpenSSL) elvégeztük. A megbízható CA-k megadásához az LDAPTrustedGlobalCert direktíva használható.
Az SSL-es LDAP lekérdezést (mindkét esetben) úgy tudjuk használni, ha az AuthLDAPURL paramétere után ldaps://
URI-t alkalmazunk.
- További információ
Java
A Java VM alapértelmezetten a $JRE_HOME/lib/security/cacerts
fájlban keresi a megbízható CA-kat.
Új megbízható CA hozzáadása a truststore-ba:
root@idp:/usr/jdk# ./bin/keytool -import -trustcacerts -alias "niifldapca" -file /tmp/niif_ldap_ca.pem \ -keystore ./jre/lib/security/cacerts Enter keystore password: changeit Owner: CN=National Information Infrastructure Development Program CA, O=NIIF, C=HU Issuer: CN=National Information Infrastructure Development Program CA, O=NIIF, C=HU Serial number: 1 Valid from: Mon Sep 02 01:00:00 CEST 2002 until: Fri Sep 02 01:00:00 CEST 2022 Certificate fingerprints: MD5: 9C:FD:1C:85:50:56:59:54:EE:63:2B:98:F4:C9:38:72 SHA1: 8A:F5:FB:C1:EA:58:F6:D3:B8:4D:3B:3A:76:39:E8:76:4F:DD:07:54 Signature algorithm name: SHA1withRSA Version: 3 Extensions: #1: ObjectId: 2.5.29.15 Criticality=true KeyUsage [ DigitalSignature Key_CertSign Crl_Sign ] #2: ObjectId: 2.5.29.19 Criticality=true BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 0C D6 26 D4 2F BA C9 B4 DD 25 B8 1E CF EF ED 5B ..&./....%.....[ 0010: 9F D2 94 F9 .... ] ] #4: ObjectId: 2.16.840.1.113730.1.1 Criticality=false NetscapeCertType [ SSL CA S/MIME CA Object Signing CA] #5: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: 0C D6 26 D4 2F BA C9 B4 DD 25 B8 1E CF EF ED 5B ..&./....%.....[ 0010: 9F D2 94 F9 .... ] ] Trust this certificate? [no]: yes Certificate was added to keystore
Jelszó: changeit (ez a default Java keystore password)
Tomcat
???