Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
centos:ldap_c7:ldaps [16.07.2015 08:28. ] – [TLS Diffie-Hellman Parameter via LDIF] django | centos:ldap_c7:ldaps [18.11.2024 07:01. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== TLS-Absicherung des OpenLDAP-Servers - LDAPs-Konfiguration unter CentOS 7.x ====== | ====== TLS-Absicherung des OpenLDAP-Servers - LDAPs-Konfiguration unter CentOS 7.x ====== | ||
{{: | {{: | ||
+ | |||
{{ : | {{ : | ||
Dass das Internet systembedingt unsicher ist, hat sich in aller Regel herumgesprochen. Daten durchlaufen von der Quelle bis zum Ziel zahlreiche Server und Systeme, an denen die Daten, abgegriffen und/oder manipuliert werden können und das nicht nur bei Übertragungen im Internet , sondern auch im **[[https:// | Dass das Internet systembedingt unsicher ist, hat sich in aller Regel herumgesprochen. Daten durchlaufen von der Quelle bis zum Ziel zahlreiche Server und Systeme, an denen die Daten, abgegriffen und/oder manipuliert werden können und das nicht nur bei Übertragungen im Internet , sondern auch im **[[https:// | ||
Zeile 17: | Zeile 17: | ||
{{ : | {{ : | ||
- | Mit Hilfe von **[[centos:XXX?&#perfect_forward_secrecy|PFS]]**((**P**erfect **F**orward **S**ecrecy)) können wir leicht und einfach sicherstellen, | + | Mit Hilfe von **[[centos:ldap_c7: |
Perfect Forward Secrecy (PFS) basiert auf der Idee, dass Client und Server ihre Kommunikation über einen zusätzlichen temporären Schlüssel absichern, der wechselt. Da der Verbindungsaufbau so gestrickt ist, daß der Schlüssel selbst gar nicht ausgetauscht werden muß, kann der jeweils benutzte Sitzungsschlüssel selbst auch nicht aufgezeichnet werden. Eine nachträgliche Entschlüsselung einer früher aufgezeichneten Session ist damit nicht mehr möglich. | Perfect Forward Secrecy (PFS) basiert auf der Idee, dass Client und Server ihre Kommunikation über einen zusätzlichen temporären Schlüssel absichern, der wechselt. Da der Verbindungsaufbau so gestrickt ist, daß der Schlüssel selbst gar nicht ausgetauscht werden muß, kann der jeweils benutzte Sitzungsschlüssel selbst auch nicht aufgezeichnet werden. Eine nachträgliche Entschlüsselung einer früher aufgezeichneten Session ist damit nicht mehr möglich. | ||
Zeile 1371: | Zeile 1371: | ||
Viele wertvolle Informationen zur TLS-Konfiguration finden sich im Kapitel **[[http:// | Viele wertvolle Informationen zur TLS-Konfiguration finden sich im Kapitel **[[http:// | ||
+ | ==== slapd ==== | ||
Damit unser OpenLDAP-Server zukünftig LDAPS auf Port **636** zur Verfügung stellen kann, bearbeiten wir nun die systemweite Konfigurationsdatei // | Damit unser OpenLDAP-Server zukünftig LDAPS auf Port **636** zur Verfügung stellen kann, bearbeiten wir nun die systemweite Konfigurationsdatei // | ||
# vim / | # vim / | ||
Zeile 1611: | Zeile 1612: | ||
OpenLDAP 2.4.39 | OpenLDAP 2.4.39 | ||
- | ==== TLS Konfigurieren | + | ==== ldap.conf ==== |
+ | Wollen wir von unserem Server aus, mittels **ldapsearch** muss natürlich der Client auch wissen, wie er das bzw. die Zertifikate auf das Vertrauen hin prüfen soll. | ||
+ | |||
+ | Wir werden daher in der Konfigurationsdatei des LDAP-Clients vermerken, dass die im Abschnitt **[[centos: | ||
+ | # vim / | ||
+ | |||
+ | <file bash / | ||
+ | # LDAP Defaults | ||
+ | # | ||
+ | |||
+ | # See ldap.conf(5) for details | ||
+ | # This file should be world readable but not world writable. | ||
+ | |||
+ | #BASE | ||
+ | #URI ldap:// | ||
+ | |||
+ | # Django: 2015-07-14 | ||
+ | BASE dc=nausch, dc=org | ||
+ | # Anfragen werden unterhalb von dc=nausch, dc=org ausgeführt. | ||
+ | URI | ||
+ | |||
+ | # | ||
+ | # | ||
+ | # | ||
+ | |||
+ | # Django : 2015-07-16 | ||
+ | # default: TLS_CACERTDIR | ||
+ | TLS_CACERTDIR | ||
+ | |||
+ | # Turning this off breaks GSSAPI used with krb5 when rdns = false | ||
+ | SASL_NOCANON | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== LDAPs-Konfiguration | ||
+ | ==== (TLS-)Zertifikate und Schlüssel | ||
Wie schon bei der **[[centos: | Wie schon bei der **[[centos: | ||
Folgende Parameter werden wir unserem OpenLDAP-Server über eine passende LDIF-Datei bekannt geben. | Folgende Parameter werden wir unserem OpenLDAP-Server über eine passende LDIF-Datei bekannt geben. | ||
* **olcTLSCipherSuite**: | * **olcTLSCipherSuite**: | ||
- | * **olcTLSCertificateFile**: | + | * **olcTLSCertificateFile**: |
* **olcTLSCertificateKeyFile**: | * **olcTLSCertificateKeyFile**: | ||
* **olcTLSCACertificateFile**: | * **olcTLSCACertificateFile**: | ||
Zeile 1672: | Zeile 1708: | ||
olcIdleTimeout: | olcIdleTimeout: | ||
olcTLSCipherSuite: | olcTLSCipherSuite: | ||
- | olcTLSCertificateFile: | + | olcTLSCertificateFile: |
- | pem | + | |
olcTLSCertificateKeyFile: | olcTLSCertificateKeyFile: | ||
olcTLSCACertificateFile: | olcTLSCACertificateFile: | ||
Zeile 1727: | Zeile 1762: | ||
slapd 20956 ldap | slapd 20956 ldap | ||
- | ==== TLS Protokollversion | + | An statt **lsof** zu nutzen, können wir natürlich auch den Befehl **netstat** dazu bemühen. |
+ | # | ||
+ | |||
+ | tcp 0 0 0.0.0.0: | ||
+ | tcp 0 0 0.0.0.0: | ||
+ | tcp6 | ||
+ | tcp6 | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ==== TLS Protokollversion ==== | ||
Auf Grund einer Sicherheitslücke in der **SSLv3** Implementierung (**Poodle-Lücke**), | Auf Grund einer Sicherheitslücke in der **SSLv3** Implementierung (**Poodle-Lücke**), | ||
Zeile 1786: | Zeile 1832: | ||
# numEntries: 1</ | # numEntries: 1</ | ||
- | ==== TLS Diffie-Hellman Parameter | + | ==== TLS Diffie-Hellman Parameter ==== |
Will man **Perfect Forward Secrecy** benutzen, so ist laut der " | Will man **Perfect Forward Secrecy** benutzen, so ist laut der " | ||
Zunächst werden wir uns nun erst einmal eine zu unserem **4096-RSA-Key** passende Diffie-Hellmann-Schlüsselparameterdatei generieren. | Zunächst werden wir uns nun erst einmal eine zu unserem **4096-RSA-Key** passende Diffie-Hellmann-Schlüsselparameterdatei generieren. | ||
+ | |||
+ | <WRAP center round tip 85%> | ||
+ | Die Erstellung einer 4096 Diffie-Hellman-Parameterdatei wird einige Zeit in Anspruch nehmen, also genügend Zeit für ein paar Kaffee oder [[http:// | ||
+ | </ | ||
+ | |||
# openssl dhparam -out / | # openssl dhparam -out / | ||
< | < | ||
- | ...............................+............+............................................................+........+.......+.................+.........................+........+......+.......+.........................................+...................+............................+...............................+...............+.............+.+.........+....+............+............+................................+.........+....+.+..+.................+......................................................+.............+.+..................+.............................................................................................................+......+........+.........................................................................................................................................................+...........+........................+..............+.................................+.......+........+................................+...............+..................+.........................................+..........................+............+..........................+..............................+............................+...+................+.....+.................+.++*++*++*++*++*++*</ | + | ...............................+............+..............</ |
Da wir die Diffie-Hellman-Parameterdatei im Betrieb regelmäßig austauschen wollen, legen wir uns kurzer Hand einfach ein passendes Shell-Script an. Zuvor legen wir aber noch ein Verzeichnis an, in dem die Schlüssel vorübergehend abgelegt werden können. | Da wir die Diffie-Hellman-Parameterdatei im Betrieb regelmäßig austauschen wollen, legen wir uns kurzer Hand einfach ein passendes Shell-Script an. Zuvor legen wir aber noch ein Verzeichnis an, in dem die Schlüssel vorübergehend abgelegt werden können. | ||
Zeile 1801: | Zeile 1852: | ||
<file bash edh_keygen># | <file bash edh_keygen># | ||
# Script zum Erstellen der Diffie Hellman Schlüsselparameterdatei | # Script zum Erstellen der Diffie Hellman Schlüsselparameterdatei | ||
- | # Django <django@mailserver.guru> (c) 2015 | + | # Django <django@mnausch.org> (c) 2015 |
+ | # ins Arbeitsverzeichnis wechseln | ||
cd / | cd / | ||
umask 022 | umask 022 | ||
Zeile 1810: | Zeile 1862: | ||
chmod 640 dh_4096.pem | chmod 640 dh_4096.pem | ||
- | Parameterdatei für OpenLDAP bereitstellen | + | # Hostname und Datum holen |
- | / | + | NAME=`hostname -s` |
+ | DATUM=`date +'%b %e %H: | ||
+ | |||
+ | # Parameterdatei für OpenLDAP bereitstellen | ||
+ | / | ||
# Informationen zur neuen Parameterdatei im OPenLDAP-Log vermerken | # Informationen zur neuen Parameterdatei im OPenLDAP-Log vermerken | ||
- | echo " | + | echo " |
- | # Temporäres Verzeichnis leeren | + | # OpenLDAP-Server restarten |
- | /usr/bin/rm / | + | /usr/bin/systemctl restart slapd |
- | </ | + | |
+ | # Temporäre Arbeitsdatei schreddern | ||
+ | / | ||
Damit das Script auch ausgeführt werdden kann, versehen wir es noch mit den benötigten Rechten. | Damit das Script auch ausgeführt werdden kann, versehen wir es noch mit den benötigten Rechten. | ||
Zeile 1832: | Zeile 1890: | ||
# less / | # less / | ||
- | FIXME | + | < |
+ | Jul 16 14:43:38 vml000037 slapd[5002]: | ||
+ | Jul 16 14:43:38 vml000037 slapd[5002]: | ||
+ | Jul 16 14:43:38 vml000037 slapd[5002]: | ||
+ | Jul 16 14:43:39 vml000037 slapd[7344]: | ||
+ | mockbuild@worker1.bsys.centos.org:/ | ||
+ | Jul 16 14:43:39 vml000037 slapd[7346]: | ||
+ | |||
+ | Nun müssen wir nur noch über die Directive **olcTLSDHParamFile** unserem OpenLDAP-Server beibringen, die Parameterdatei auch zu verwenden. | ||
+ | |||
+ | Wir legen uns also eine passende Konfigurationsdatei an und weisem dem Parameter dem Wert //****// zu. | ||
+ | # vim / | ||
+ | |||
+ | <file ldif / | ||
+ | # Definition der Parameterdatei für den Diffie-Hellman Ephemeral Schlüssel Austausch | ||
+ | # https:// | ||
+ | |||
+ | dn: cn=config | ||
+ | changetype: modify | ||
+ | replace: olcTLSDHParamFile | ||
+ | olcTLSDHParamFile: | ||
+ | </ | ||
+ | |||
+ | Die Änderung unserer OpenLDAP-Konfiguration, | ||
+ | # ldapmodify -W -x -D cn=config -f / | ||
+ | |||
+ | Enter LDAP Password: | ||
+ | |||
+ | modifying entry " | ||
+ | |||
+ | Auch hier können wir überprüfen, | ||
+ | # ldapsearch -W -x -D cn=config -b cn=config " | ||
+ | |||
+ | Enter LDAP Password: | ||
+ | < | ||
+ | # | ||
+ | # LDAPv3 | ||
+ | # base < | ||
+ | # filter: (objectclass=olcGlobal) | ||
+ | # requesting: ALL | ||
+ | # | ||
+ | |||
+ | # config | ||
+ | dn: cn=config | ||
+ | objectClass: | ||
+ | cn: config | ||
+ | olcArgsFile: | ||
+ | olcIdleTimeout: | ||
+ | olcPidFile: / | ||
+ | olcReferral: | ||
+ | olcTimeLimit: | ||
+ | olcTLSCACertificateFile: | ||
+ | olcTLSCACertificatePath: | ||
+ | olcTLSCertificateFile: | ||
+ | pem | ||
+ | olcTLSCertificateKeyFile: | ||
+ | olcTLSCipherSuite: | ||
+ | olcTLSProtocolMin: | ||
+ | olcTLSDHParamFile: | ||
+ | |||
+ | # search result | ||
+ | search: 2 | ||
+ | result: 0 Success | ||
+ | |||
+ | # numResponses: | ||
+ | # numEntries: 1 | ||
+ | </ | ||
+ | |||
+ | ===== LDAPs Verbindungstests ===== | ||
+ | |||
+ | ==== openssl ==== | ||
+ | Beim ersten Test bauen wir eine Verbindung mit Hilfe des Befehls **openssl** auf und prüfen, ob auch wirklich das angegebene Protokoll verwendet wurde und welcher **Cipher** zum Einsatz kam. | ||
+ | # openssl s_client -connect openldap.dmz.nausch.org: | ||
+ | |||
+ | < | ||
+ | depth=2 O = Root CA, OU = http:// | ||
+ | verify return: | ||
+ | depth=1 O = CAcert Inc., OU = http:// | ||
+ | verify return: | ||
+ | depth=0 CN = openldap.dmz.nausch.org | ||
+ | verify return: | ||
+ | --- | ||
+ | Certificate chain | ||
+ | 0 s:/ | ||
+ | | ||
+ | -----BEGIN CERTIFICATE----- | ||
+ | MIIGBzCCA++gAwIBAgIDAm8BMA0GCSqGSIb3DQEBDQUAMFQxFDASBgNVBAoTC0NB | ||
+ | Y2VydCBJbmMuMR4wHAYDVQQLExVodHRwOi8vd3d3LkNBY2VydC5vcmcxHDAaBgNV | ||
+ | BAMTE0NBY2VydCBDbGFzcyAzIFJvb3QwHhcNMTUwNzE1MTgzOTUxWhcNMTcwNzE0 | ||
+ | MTgzOTUxWjAiMSAwHgYDVQQDExdvcGVubGRhcC5kbXoubmF1c2NoLm9yZzCCAiIw | ||
+ | DQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMUdsfKPIpr3Ma0gpTJdIdKFJ9Wj | ||
+ | oc7tRO5D67WgXm4Txwd17wK51BkCsXPc7tNHHTTfEJ17UPfqge4bH5kH+Vfg4dAb | ||
+ | DG0xDtcJibQ0k4dbZEidTET41Iqd2m6xgGOAfEOpZmSUA2Awn4GBKFHjg3RzZ6YG | ||
+ | n6CTCTaCGiRsRWiGq0KBk4lXmvfAy+/ | ||
+ | yMuqMWOO+e3YcUauZVhqhKlcH2AWi8+V6j4wp2G72fuuxOpZkU2vJcNKH3sHYj9G | ||
+ | p+Z7VHmzgDlz7Y00f93M6VVnC91RhDBwgQzGDMNRTSLyEnOFw7rtHgB/ | ||
+ | 9kley/ | ||
+ | sPvsPt/ | ||
+ | GW0uJtWpNcvfx0FIPyFfDUAcCLiBnXym+4E4ekXEHH9aZxLgNhX81dw9lBzAmv1I | ||
+ | AAt2TMbwk74WedYVPN0nToGkTJu3iv1Y6sKQrbClpp4xl43bl11WFHFvJI0o7CC8 | ||
+ | 265NiAYfXztTXqxlJEOoltTaAXh9Zo8qNagrzlGOM/ | ||
+ | +Z3YzIuTtz6gCHwPAgMBAAGjggESMIIBDjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB | ||
+ | / | ||
+ | AQYKKwYBBAGCNwoDAzAzBggrBgEFBQcBAQQnMCUwIwYIKwYBBQUHMAGGF2h0dHA6 | ||
+ | Ly9vY3NwLmNhY2VydC5vcmcvMDgGA1UdHwQxMC8wLaAroCmGJ2h0dHA6Ly9jcmwu | ||
+ | Y2FjZXJ0Lm9yZy9jbGFzczMtcmV2b2tlLmNybDBJBgNVHREEQjBAghdvcGVubGRh | ||
+ | cC5kbXoubmF1c2NoLm9yZ6AlBggrBgEFBQcIBaAZDBdvcGVubGRhcC5kbXoubmF1 | ||
+ | c2NoLm9yZzANBgkqhkiG9w0BAQ0FAAOCAgEAQpFKrP2/ | ||
+ | qoWhRMZM/ | ||
+ | dVJysG+VbCh9YD5poHRVPMC5zAHWQ13m4BhaOcSXu1Vvh7lb/ | ||
+ | eyY28nTD1fLjTMfp6PbYFTK+asxq0TPqrP9j0qSy1M+0SQnLvlLkr1/ | ||
+ | L5c7FlTQAYE0q6sTdpAPNX2icGHECtylCohlnpNoLCchboH9y9s7FtPzMbDENWvA | ||
+ | FM1gooanqbo66adN7psnw2gXJbDLShaIwgjRzM8+82I4nXVO5CcD3FWqQIPwYpec | ||
+ | Rqk/ | ||
+ | LBvmGZedITZ3+NqmJTbSp3R4bEYESmznNUdD8BnBvg3alkzjb6Cinnb30TJtehbQ | ||
+ | yBaEhzq8KsOZpzcLT7ldN3Y6dxu8qj+p67nGD+A8brrII1s4TIcnEvnPBCWuku/ | ||
+ | a5iSsSt3US1dOocFJM3CJyuaNfWIqDbutE702fREPriNPxqRSdTkH5Ub4Rb4CiRW | ||
+ | bHHSqh0QekUMpNi6n7+thG46EKJk1WgeNhhsqRKqy5MDLth7iN5gHE2CCbSIe4qW | ||
+ | g2KkrggW2eBNzv4= | ||
+ | -----END CERTIFICATE----- | ||
+ | 1 s:/O=CAcert Inc./ | ||
+ | | ||
+ | -----BEGIN CERTIFICATE----- | ||
+ | MIIHWTCCBUGgAwIBAgIDCkGKMA0GCSqGSIb3DQEBCwUAMHkxEDAOBgNVBAoTB1Jv | ||
+ | b3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ | ||
+ | Q0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9y | ||
+ | dEBjYWNlcnQub3JnMB4XDTExMDUyMzE3NDgwMloXDTIxMDUyMDE3NDgwMlowVDEU | ||
+ | MBIGA1UEChMLQ0FjZXJ0IEluYy4xHjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0 | ||
+ | Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMgUm9vdDCCAiIwDQYJKoZIhvcN | ||
+ | AQEBBQADggIPADCCAgoCggIBAKtJNRFIfNImflOUz0Op3SjXQiqL84d4GVh8D57a | ||
+ | iX3h++tykA10oZZkq5+gJJlz2uJVdscXe/ | ||
+ | aQFjww9W4kpCz+JEjCUoqMV5CX1GuYrz6fM0KQhF5Byfy5QEHIGoFLOYZcRD7E6C | ||
+ | jQnRvapbjZLQ7N6QxX8KwuPr5jFaXnQ+lzNZ6MMDPWAzv/ | ||
+ | pNkVGJGmhZJHsK5I6223IeyFGmhyNav/ | ||
+ | FXFuC3ED6q8VOJrU0gVyb4z5K+taciX5OUbjchs+BMNkJyIQKopPWKcDrb60LhPt | ||
+ | XapI19V91Cp7XPpGBFDkzA5CW4zt2/ | ||
+ | oFvqTpa4fNfVoIZwQNORKbeiPK31jLvPGpKK5DR7wNhsX+kKwsOnIJpa3yxdUly6 | ||
+ | R9Wb7yQocDggL9V/ | ||
+ | rmB6gCZIALgBwJNjVSKRPFbnr9s6JfOPMVTqJouBWfmh0VMRxXudA/ | ||
+ | LIaRmXGapneLNGDRFLQsrJ2vjBDTn8Rq+G8T/ | ||
+ | BfvpAgMBAAGjggINMIICCTAdBgNVHQ4EFgQUdahxYEyIE/ | ||
+ | gaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5GNGhfaR7MHkxEDAOBgNV | ||
+ | BAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAG | ||
+ | A1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS | ||
+ | c3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/ | ||
+ | AQEEUTBPMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggr | ||
+ | BgEFBQcwAoYcaHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBB | ||
+ | MD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9y | ||
+ | Zy9pbmRleC5waHA/ | ||
+ | ZXJ0Lm9yZy9pbmRleC5waHA/ | ||
+ | b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSwgZ28gdG8gaHR0cDovL3d3dy5D | ||
+ | QWNlcnQub3JnMA0GCSqGSIb3DQEBCwUAA4ICAQApKIWuRKm5r6R5E/ | ||
+ | 7uMvwfbiZqARrjY3OnYVBFPqQvX56sAV2KaC2eRhrnILKVyQQ+hBsuF32wITRHhH | ||
+ | Va9Y/ | ||
+ | D+Pm1yaMMVpyA4RS5qb1MyJFCsgLDYq4Nm+QCaGrvdfVTi5xotSu+qdUK+s1jVq3 | ||
+ | VIgv7nSf7UgWyg1I0JTTrKSi9iTfkuO960NAkW4cGI5WtIIS86mTn9S8nK2cde5a | ||
+ | lxuV53QtHA+wLJef+6kzOXrnAzqSjiL2jA3k2X4Ndhj3AfnvlpaiVXPAPHG0HRpW | ||
+ | Q7fDCo1y/ | ||
+ | hbNc09+4ufLKxw0BFKxwWMWMjTPUnWajGlCVI/ | ||
+ | 0ctbGsDkgJp8E3MGT9ujayQKurMcvEp4u+XjdTilSKeiHq921F73OIZWWonO1sOn | ||
+ | ebJSoMbxhbQljPI/ | ||
+ | d+pLncdBu8fA46A/ | ||
+ | 4GGSt/ | ||
+ | -----END CERTIFICATE----- | ||
+ | 2 s:/O=Root CA/ | ||
+ | | ||
+ | -----BEGIN CERTIFICATE----- | ||
+ | MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290 | ||
+ | IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB | ||
+ | IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA | ||
+ | Y2FjZXJ0Lm9yZzAeFw0wMzAzMzAxMjI5NDlaFw0zMzAzMjkxMjI5NDlaMHkxEDAO | ||
+ | BgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEi | ||
+ | MCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJ | ||
+ | ARYSc3VwcG9ydEBjYWNlcnQub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC | ||
+ | CgKCAgEAziLA4kZ97DYoB1CW8qAzQIxL8TtmPzHlawI229Z89vGIj053NgVBlfkJ | ||
+ | 8BLPRoZzYLdufujAWGSuzbCtRRcMY/ | ||
+ | zWYyN3L69wj1x81YyY7nDl7qPv4coRQKFWyGhFtkZip6qUtTefWIonvuLwphK42y | ||
+ | fk1WpRPs6tqSnqxEQR5YYGUFZvjARL3LlPdCfgv3ZWiYUQXw8wWRBB0bF4LsyFe7 | ||
+ | w2t6iPGwcswlWyCR7BYCEo8y6RcYSNDHBS4CMEK4JZwFaz+qOqfrU0j36NK2B5jc | ||
+ | G8Y0f3/ | ||
+ | epKwDpUeb+agRThHqtdB7Uq3EvbXG4OKDy7YCbZZ16oE/ | ||
+ | laegw1SJpfvbi1EinbLDvhG+LJGGi5Z4rSDTii8aP8bQUWWHIbEZAWV/ | ||
+ | QUxPKZgh/ | ||
+ | fslfrejrckzzAeVLIL+aplfKkQABi6F1ITe1Yw1nPkZPcCBnzsXWWdsC4PDSy826 | ||
+ | YreQQejdIOQpvGQpQsgi3Hia/ | ||
+ | ggHKMB0GA1UdDgQWBBQWtTIb1Mfz4OaO873SsDrusjkY0TCBowYDVR0jBIGbMIGY | ||
+ | gBQWtTIb1Mfz4OaO873SsDrusjkY0aF9pHsweTEQMA4GA1UEChMHUm9vdCBDQTEe | ||
+ | MBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0 | ||
+ | IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2Vy | ||
+ | dC5vcmeCAQAwDwYDVR0TAQH/ | ||
+ | czovL3d3dy5jYWNlcnQub3JnL3Jldm9rZS5jcmwwMAYJYIZIAYb4QgEEBCMWIWh0 | ||
+ | dHBzOi8vd3d3LmNhY2VydC5vcmcvcmV2b2tlLmNybDA0BglghkgBhvhCAQgEJxYl | ||
+ | aHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4LnBocD9pZD0xMDBWBglghkgBhvhC | ||
+ | AQ0ESRZHVG8gZ2V0IHlvdXIgb3duIGNlcnRpZmljYXRlIGZvciBGUkVFIGhlYWQg | ||
+ | b3ZlciB0byBodHRwOi8vd3d3LmNhY2VydC5vcmcwDQYJKoZIhvcNAQEEBQADggIB | ||
+ | ACjH7pyCArpcgBLKNQodgW+JapnM8mgPf6fhjViVPr3yBsOQWqy1YPaZQwGjiHCc | ||
+ | nWKdpIevZ1gNMDY75q1I08t0AoZxPuIrA2jxNGJARjtT6ij0rPtmlVOKTV39O9lg | ||
+ | 18p5aTuxZZKmxoGCXJzN600BiqXfEVWqFcofN8CCmHBh22p8lqOOLlQ+TyGpkO/ | ||
+ | gr/ | ||
+ | Jzt7u0NDY8RD97LsaMzhGY4i+5jhe1o+ATc7iwiwovOVThrLm82asduycPAtStvY | ||
+ | sONvRUgzEv/ | ||
+ | SCX8Ev2fQtzzxD72V7DX3WnRBnc0CkvSyqD/ | ||
+ | CpUCTPJ5GhD22Dp1nPMd8aINcGeGG7MW9S/ | ||
+ | GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk | ||
+ | zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/ | ||
+ | omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD | ||
+ | -----END CERTIFICATE----- | ||
+ | --- | ||
+ | Server certificate | ||
+ | subject=/ | ||
+ | issuer=/ | ||
+ | --- | ||
+ | No client certificate CA names sent | ||
+ | Server Temp Key: ECDH, prime256v1, 256 bits | ||
+ | --- | ||
+ | SSL handshake has read 6065 bytes and written 399 bytes | ||
+ | --- | ||
+ | New, TLSv1/ | ||
+ | Server public key is 4096 bit | ||
+ | Secure Renegotiation IS supported | ||
+ | Compression: | ||
+ | Expansion: NONE | ||
+ | SSL-Session: | ||
+ | Protocol | ||
+ | Cipher | ||
+ | Session-ID: 1CB2A6EEF8A21B2239B011CFA0FF156F76A477FE8F883550762FDB0B2DACDBEC | ||
+ | Session-ID-ctx: | ||
+ | Master-Key: FFA99DDC9829B6171367B7428647D13F6D7BFA65582810158A10CEDF8B38C2295A4E6C3F8B3212672EC1974DCD1DDAB3 | ||
+ | Key-Arg | ||
+ | Krb5 Principal: None | ||
+ | PSK identity: None | ||
+ | PSK identity hint: None | ||
+ | Start Time: 1437051157 | ||
+ | Timeout | ||
+ | Verify return code: 0 (ok) | ||
+ | ---</ | ||
+ | |||
+ | Mit der Tastenkombination **Strg + c** beenden wir die Verbindung. | ||
+ | |||
+ | Im obigen Beispiel sehen wir, dass: | ||
+ | * **Protokoll**: | ||
+ | * **Cipher** | ||
+ | und als temporärer Server-Key **ECDH, prime256v1, 256 bits** verwendet wurden. | ||
+ | |||
+ | In der Logdatei unseres OpenLDAP-Servers wird der Connect entsprechend vermerkt. | ||
+ | # less / | ||
+ | |||
+ | Jul 16 14:53:37 vml000037 slapd[7346]: | ||
+ | Jul 16 14:53:37 vml000037 slapd[7346]: | ||
+ | Jul 16 14:53:45 vml000037 slapd[7346]: | ||
+ | |||
+ | ==== ldapsearch ==== | ||
+ | Beim nächsten Test verwenden wir den Befehl **ldapsearch** und richten über eine geschützte TLS-Verbindung eine Anfrage an unseren OpenLDAP-Verzeichnisdienst. | ||
+ | # ldapsearch -W -x -D cn=config -b cn=config " | ||
+ | |||
+ | Enter LDAP Password: | ||
+ | |||
+ | < | ||
+ | objectClass: | ||
+ | cn: config | ||
+ | olcArgsFile: | ||
+ | olcIdleTimeout: | ||
+ | olcPidFile: / | ||
+ | olcReferral: | ||
+ | olcTimeLimit: | ||
+ | olcTLSCACertificateFile: | ||
+ | olcTLSCACertificatePath: | ||
+ | olcTLSCertificateFile: | ||
+ | olcTLSCertificateKeyFile: | ||
+ | olcTLSCipherSuite: | ||
+ | olcTLSDHParamFile: | ||
+ | olcTLSProtocolMin: | ||
+ | </ | ||
+ | |||
+ | Der Verbindungsauf- wie auch -abbau und natürlich auch die Abfrage an sich, wird im LDAP-Log // | ||
+ | # less / | ||
+ | |||
+ | < | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | Jul 16 15:49:32 vml000037 slapd[11436]: | ||
+ | |||
+ | |||
+ | ====== Links ====== | ||
+ | * **⇐ [[centos: | ||
+ | * **⇒ [[centos: | ||
+ | * **[[centos: | ||
+ | * **[[wiki: | ||
+ | * **[[http:// | ||