SSL und Perl

SSL und Perl

am 03.04.2006 15:43:25 von ronny.kluge

Hallo zusammen,

ich stelle zur Zeit eine Verbindung zum Active Directory Service über
einen in Perl geschriebenen LDAP-Client her. Das ganze funktioniert
relativ simpel per connect und bind.
Da die Daten über ldap unverschlüsselt übers Netz gehen, würde ich
gerne SSL einsetzen.

Könnt Ihr mir Infos geben, wie ich generell einen SSL Client aufsetze,
woher ich das Zertifikat bekomme etc. Die grundsätzliche Beschreibung
von SSL ist mir bekannt, jedoch beziehen sich diese "nur" auf das
Internet, mit Zertifizierungsstellen etc. Ich suche jedoch nach einer
Lösung welche sich nur im LAN abspielt. Woher bekomme ich meine
Public/Private-Keys, Zertifikat etc.. und wie erstelle ich einen
SSL-Connect zum SSL Server !? =20

Danke, Gruß, Ronny.

Re: SSL und Perl

am 03.04.2006 16:46:12 von Christian Kirsch

ronny.kluge@barmenia.de schrieb:
> Hallo zusammen,
>
> ich stelle zur Zeit eine Verbindung zum Active Directory Service über
> einen in Perl geschriebenen LDAP-Client her. Das ganze funktioniert
> relativ simpel per connect und bind.
> Da die Daten über ldap unverschlüsselt übers Netz gehen, würde ich
> gerne SSL einsetzen.
>
> Könnt Ihr mir Infos geben, wie ich generell einen SSL Client aufsetze,
> woher ich das Zertifikat bekomme etc.

Du könntest in erster Näherung stunnel benutzen (Google). Das kommt,
IIRC, ohne manuell erzeugte Zertifikate aus und baut einfach nur einen
Tunnel zwischen A und B auf.

> Die grundsätzliche Beschreibung
> von SSL ist mir bekannt, jedoch beziehen sich diese "nur" auf das
> Internet, mit Zertifizierungsstellen etc. Ich suche jedoch nach einer
> Lösung welche sich nur im LAN abspielt. Woher bekomme ich meine
> Public/Private-Keys, Zertifikat etc.. und wie erstelle ich einen
> SSL-Connect zum SSL Server !?
>

Zertifikate erstellst Du mit openssl. Aus dem Kopf weiß ich nicht, wie
genau Du da vorgehen musst, aber Du findest im Netz relativ schnell
Informationen im Umfeld von Postfix und Cyrus-IMAP zu dem Thema.
Für Perl gibt es wohl einige SSL-Module, Erfahrungen damit habe ich
aber nicht.

Was spräche denn gegen eine Komplettverschlüsselung z.B. via IPSec?

Re: SSL und Perl

am 03.04.2006 17:23:25 von ronny.kluge

Danke Christian. Von Grund her wäre ipsec natürlich besser, jedoch
hab ich hier noch weniger eine Vorstellung das umzusetzen... ;)
IPsec Perl-Module konnte ich noch keine finden ;)

Gruß, Ronny.

Re: SSL und Perl

am 03.04.2006 18:29:29 von Christian Kirsch

ronny.kluge@barmenia.de wrote:
> Danke Christian. Von Grund her wäre ipsec natürlich besser, jedoch
> hab ich hier noch weniger eine Vorstellung das umzusetzen... ;)
> IPsec Perl-Module konnte ich noch keine finden ;)

Ich dachte auch nicht an Perl-Module, sondern einfach an ein VPN in
Deinem LAN.

Anders gesagt: Warum willst Du ausgerechnet den LDAP-Verkehr
SSL-verschlüsseln - was ist mit allem anderen? Entweder musst Du den
Teilnehmern in Deinem Netz misstrauen, dann ist die vernünftigste Lösung
eine komplett verschlüsselte interne Kommunikation, vulgo IPSec oder
Verwandtes. Oder Du benutzt andere Protokolle unverschlüsselt - warum
dann nicht auch LDAP?

Und bitte gewöhn Dir an, einen brauchbaren Kontext in Deinen Antworten
zu zitieren. So zwingst Du jeden, den Thread von Anfang an zu lesen, um
Deine Text zu verstehen.

Re: SSL und Perl

am 03.04.2006 22:36:00 von MH

ronny.kluge@barmenia.de [ronny.kluge@barmenia.de] schrieb:

>Hallo zusammen,

>ich stelle zur Zeit eine Verbindung zum Active Directory Service über
>einen in Perl geschriebenen LDAP-Client her. Das ganze funktioniert
>relativ simpel per connect und bind.
>Da die Daten über ldap unverschlüsselt übers Netz gehen, würde ich
>gerne SSL einsetzen.

Wenn du Net::LDAP als Modul nutzt, kannst du auch LDAPS machen. Damit
das geht, musst du aber auf alle DCs im AD Maschinenzertifikate
ausgerollt haben. Ansonsten ist der LDAPS Port (636) auf DCs nicht offen.
Siehe dazu auch den KB-Artikel:
http://support.microsoft.com/kb/321051/en-us

[...]

>Danke, Gruß, Ronny.

Ciao.
Michael.
--=20
Michael Hirmke | Telefon +49 (911) 557999
Wilhelm-Spaeth-Strasse 52 | FAX +49 (911) 557664
90461 Nuernberg | E-Mail mailto:mh@mike.franken.de
| WWW http://www.hirmke.de/

Re: SSL und Perl

am 04.04.2006 16:38:58 von ronny.kluge

>Wenn du Net::LDAP als Modul nutzt, kannst du auch LDAPS machen. Damit
>das geht, musst du aber auf alle DCs im AD Maschinenzertifikate
>ausgerollt haben. Ansonsten ist der LDAPS Port (636) auf DCs nicht offen.
>Siehe dazu auch den KB-Artikel:
>http://support.microsoft.com/kb/321051/en-us

Ok, nehmen wir an ich hätte bereits auf den DCs Maschinenzertifikate
ausgerollt. Sind das dann die
private keys der DCs ? Wie gehe ich nun weiter vor ? Muss ich mir per
Openssl einen Private Key erstellen ?
Woher erhalte ich den Public Key ...
Net::LDAPS fordert beim connect nur ein "cafile" , keinen public key
...
Also wie ihr merkt ist mir das Ganze in der Praxis noch ziemlich unklar
..

Mein primäres Ziel ist es in Perl einen Client zu schreiben, welchen
ich von jedem Windows Client aus starten kann
und welcher sich über SSL + LDAP zum DC connected ...

Gruß, Ronny.

Re: SSL und Perl

am 05.04.2006 00:46:00 von MH

ronny.kluge@barmenia.de [ronny.kluge@barmenia.de] schrieb:

[...]
>Ok, nehmen wir an ich hätte bereits auf den DCs Maschinenzertifikate
>ausgerollt. Sind das dann die
>private keys der DCs ? Wie gehe ich nun weiter vor ? Muss ich mir per
>Openssl einen Private Key erstellen ?

Das kommt darauf an, was genau du willst. Wenn du nur eine
verschluesselte Verbindung willst und keine Key-Authentifizierung (die
brauchst du fuer die Verschluesselung nicht), dann musst du nichts
weiter tun. Die DCs brauchen die Maschinenzertifikate, dann ist Port 636
offen und du kannst mit den DCs LDAPS reden.

>Woher erhalte ich den Public Key ...

S.o. - brauchst du erst einmal nicht.

>Net::LDAPS fordert beim connect nur ein "cafile" , keinen public key
>...
>Also wie ihr merkt ist mir das Ganze in der Praxis noch ziemlich unklar
>..

>Mein primäres Ziel ist es in Perl einen Client zu schreiben, welchen
>ich von jedem Windows Client aus starten kann
>und welcher sich über SSL + LDAP zum DC connected ...

S.o. - einfach die DCs auf Port 636 ansprechen.

Zusatzinfo:
Wenn du verifizieren willst, dass du wirklich mit deinen DCs redest und
dir nicht etwa jemand vorgaukelt, es waere einer deiner DCs, dann kannst
du auch das Root-Zertifikat deiner Microsoft CA als Datei ablegen und
dann im LDAPS bind den Pfad und Dateinamen dahin mitgeben.
Aber auch das ist zumindest fuer einen Anfang nicht notwendig.

>Gruß, Ronny.

Ciao.
Michael.
--=20
Michael Hirmke | Telefon +49 (911) 557999
Wilhelm-Spaeth-Strasse 52 | FAX +49 (911) 557664
90461 Nuernberg | E-Mail mailto:mh@mike.franken.de
| WWW http://www.hirmke.de/