PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ssl tunnel


boon
25.07.02, 08:27
hallo, weis jemand wie ich ein ssl tunnel für pop3 einrichte?
ich hab qpopper für den pop3 dienst am laufen

greetz boon

ComSubVie
25.07.02, 08:34
ähm, warum tunnel? verwende doch einen ssl-fähigen popper. zum beispiel courier-pop-ssl

boon
25.07.02, 08:38
das hab ich schon versucht
http://www.linuxforen.de/forums/showthread.php?s=&threadid=38701

leider funktioniert nur tls mit qpopper.
aus welchem grund auch immmer.
drumm will ich das ganze jetzt einfach tunneln



mfg,
boon

Harry
25.07.02, 08:56
Hallo boon,

Du kannst dazu den sslwrapper installieren. Lt. Doku kann der TLS und SSL. Die Installation ist relativ einfach und er läuft zuverlässig. Der Tunnel wird dann auf dem Server vom Port 995/tcp auf den Port 110/tcp aufgebaut.
Für den Client ist die Konfiguration völlig transparent.

In der /etc/inetd.conf wäre dazu in etwa der folgende Eintrag notwendig:
pop3s stream tcp nowait sslwrap /usr/sbin/tcpd /usr/sbin/sslwrap \
-cert /etc/mails/certs/cert.pem -port 110

Harry

31holgi
22.08.02, 09:07
Moin auch,

ich durfte mich die letzten Tagen mit diesem Thema beschäftigen und habe parallel ein Stück Doku geschrieben. Diese möge in Zukunft allen Interessierten helfen. Bei mir läuft das über OutlookExpress 6. - Übrigens, irgendwo habe ich hier gelesen, dass jemand mit Kmail über Port 995 Mails abholen konnte, mit OE aber nicht. Wenn die Zertifikate nicht korrekt angelegt wurden, holt Kmail die Mails UNverschlüsselt ab (laut Etheral) - sehr unschön.
Zur Umgebung: SuSE Linux 7.2, Windows 2000, OE 6
OK, hier gehts los.

------Schnipp Anleitung

Einrichten eines SSL/TSL-POP3 Servers


1. Von www.openssl.org Version openssl-0.9.5a.tar.gz downloaden
(Diese Version läuft unter SuSE 7.4 fehlerfrei durch)

2. Von www.qpopper.com Version qpopper4.0.4.tar.gz downloaden

3. mit ftp beide Dateien zum Emai Server kopieren

4. enpacken mit

gunzip -f qpopper4.0.4.tar.gz
tar -xf qpopper4.0.4.tar

gunzip -f openssl-0.9.5a.tar.gz
tar -xf openssl-0.9.5a.tar

5. openssl installieren mit

./config
make
make test
make install

Es dürfen Keine Errors erscheinen

6. qpopper installieren mit

./configure –with-openssl
make
make install

Es dürfen Keine Errors erscheinen

popper muss jetzt in /usr/local/sbin sein
ggf. chmod 755 popper

7. /etc/inetd Eintrag ergänzen (ggf. pop3 ausklammern)

spop3 stream tcp nowait root /usr/sbin/tcpd /usr/local/sbin/popper -s -f /etc/mail/pop/qpopper.config


8. ggf. /etc/services Eintrag ergänzen

pop3s 995/tcp spop3 # pop3 protocol over TLS/SSL
pop3s 995/udp spop3 # pop3 protocol over TLS/SSL



9. Verzeichniss anlegen

mkdir /etc/mail/certs
mkdir /etc/mail/pop
chmod 600 /etc/mail/certs
chmod 600 /etc/mail/pop


10. in das Verzeichnis /etc/mail/pop wechseln

Datei qpopper.config anlegen mit
vi qpopper.config

Einträge darin:

set tls-support = alternate-port
set tls-server-cert-file = /etc/mail/certs/cert.pem
set tls-private-key-file = /etc/mail/certs/privatekey.pem


11. Zertifikate anlegen ( in /etc/mail/pop)

CA Schlüssel einrichten:
openssl genrsa -des3 -out ca.key 1024


CA Zertifikat einrichten:
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt


Common Name (eg, YOUR name) []:linux01.domäne.de
ACHTUNG: ganzen Rechnernamen eintragen


Testzertifikat einrichten:

openssl req -new -nodes -key ca.key -out req.pem -keyout cert.pem

Common Name (eg, YOUR name) []:linux01.domäne.de
ACHTUNG: ganzen Rechnernamen eintragen

Zertifikat bestätigen:

openssl x509 -req -CA ca.crt -CAkey ca.key -days 3650 -in req.pem -out cert.pem -CAcreateserial


zu Testzwecken: Zertifikat anschauen

openssl x509 -noout -text -in cert.pem


zu Testzwecken: Zertifikat in DER-Format umwandeln

openssl x509 -in cert.pem -out cert.der -outform DER


Aus den verschlüsselten privaten Schlüssel einen unverschlüsselten machen:

openssl rsa -in ca.key -out privatekey.pem


zu Testzwecken: Zertifikat mit privaten Schlüssel vergleichen (Zahlenkombination muss gleich sein, ansonsten gehören sie nicht zusammen)

openssl x509 -noout -modulus -in cert.pem | openssl md5
openssl rsa -noout -modulus -in ca.key | openssl md5
openssl rsa -noout -modulus -in privatekey.pem | openssl md5


12. privtekey.pem und cert.pem nach /etc/mail/certs kopieren und absichern:

cp privatekey.pem ../certs/
cp cert.pem ../certs/
cd ../certs
chmod 600 *
ls –l


13. ined neustarten

rcinedt restart


14. zu Testzwecken: Test, ob Verbindung hergestellt werden kann
( von /etc/mail/pop)

openssl s_client -key ca.key -cert cert.pem -ssl2 -connect linux01:spop3

Antwort sieht so aus:

root@linux01:/etc/mail/pop > openssl s_client -key ca.key -cert cert.pem -ssl2 -connect linux01:spop3
Enter PEM pass phrase:
CONNECTED(00000003)
depth=0 /C=DE/ST=Deutschland/L=Oldenburg/O=XXXX
XXXX/CN=linux01.XXXX.de/Email=HolgerXXXX
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 /C=DE/ST=Deutschland/L=Oldenburg/O=XXXX
XXXX/CN=linux01.XXXX.de/Email=HolgerXXXX
verify error:num=27:certificate not trusted
verify return:1
depth=0 /C=DE/ST=Deutschland/L=Oldenburg/O=XXXX
XXXX/CN=linux01.XXXX.de/Email=HolgerGXXX
verify error:num=21:unable to verify the first certificate
verify return:1
---
Server certificate
-----BEGIN CERTIFICATE-----
XXXX
-----END CERTIFICATE-----
subject=/C=DE/ST=Deutschland/L=Oldenburg/O=XXXX
XXXX/CN=linux01.XXXXX.de/Email=HolgerXXXX
issuer=/C=DE/ST=Deutschland/L=Oldenburg (Oldbg.)/O=XXXX
XXXX/CN=linux01.XXXX.de/Email=HolgerXXXX
---
No client certificate CA names sent
---
Ciphers common between both SSL endpoints:
RC4-MD5 EXP-RC4-MD5 RC2-CBC-MD5
EXP-RC2-CBC-MD5 DES-CBC-MD5 DES-CBC3-MD5
RC4-64-MD5
---
SSL handshake has read 882 bytes and written 239 bytes
---
New, SSLv2, Cipher is DES-CBC3-MD5
Server public key is 1024 bit
SSL-Session:
Protocol : SSLv2
Cipher : DES-CBC3-MD5
Session-ID: 97C4BF3C1ED7A739480B00768B03056F
Session-ID-ctx:
Master-Key: D87E4A95BA88C906192E8C1F7246294FE9BEECF074CE55CB
Key-Arg : 35A5C8129B4F45C2
Start Time: 1029933562
Timeout : 300 (sec)
Verify return code: 21 (unable to verify the first certificate)
---
+OK Qpopper (version 4.0.4) at linux01.XXXX.de starting.

Wer will, kann noch n bisschen auf den popper rumkaspern:

user NAME
pass PASSWORT
list
quit


ggf. noch auf Clientrechnern die host-Einträge auf linux01.XXXX.de und die services auf überprüfen:

pop3s 995/tcp spop3 # pop3 protocol over TLS/SSL
pop3s 995/udp spop3 # pop3 protocol over TLS/SSL



15. Zertifikat /etc/mail/pop/ca.crt und cert.der nach Windows kopieren und dort durch Doppelklick installieren. Bei der Nachfrage dann in Vertrauenswürdige Stammzertifizierungsstellen installieren. Macht man das nicht, kommt von OE beim Abfragen der Mails immer der Hinweis, dass das Zertifikat als nicht vertrauenswürdig eingestuft ist.

16. Outlook Express für SSL konfigurieren (für ein bereits bestehendes Konto unter POP3 folgendes ändern).

Extras->Konten->E-Mail->Konto auswählen->Eigenschaften->Erweitert->Dieser Server erfordert eine sichere Verbindung (SSL)


------ Schnipp Anleitung Ende

Ciao,

Holger :D

Berufspenner
22.08.02, 12:27
Hi@31holgi

Ich finde, dass deine Doku noch zum Bereich 'Hier Suchen und Finden, Links, Tutorials' hinzugefügt werden sollte, damit man sie auch auf lange Zeit wiederfinden kann. Da sehr ausführlich, ist sie auf jeden Fall sehr interessant und wissenswert.

Cu

31holgi
22.08.02, 12:44
ok,

Holger:)