[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [debian-knoppix] PPTP-Support einbauen?



Klaus Knopper wrote:

On Wed, Jan 16, 2002 at 01:18:00PM +0100, Thomas Bayen wrote:


[...gekürzt um Diskussion, wo und wie VPNs angreifbar sind...]

Siehe auch O'Reilly "Building Internet Firewalls". Dieser Fall ist
nicht nur auf PPTP beschränkt, nur gaukelt gerade dieses eine Sicherheit
vor, die nicht existiert, und das macht es umso gefährlicher.


Da stimme ich Dir zu. Ein VPN ist immer eine verführerisch-gefährliche Sache. Dabei macht es IMHO keinen Unterschied, ob Du PPTP oder IPSec oder sonstwas nimmst.

Was die rein technische Sicherheit anbetrifft, dürfte das Sicherheitsniveau aller VPN-Systeme hoch genug liegen, um normale Hacker abzuschrecken bzw. auf andere Pfade zu lenken (z.B. Angriff auf Browser oder EMail-Client im lokalen Netz). Mir gefällt an PPTP, dass der eigentliche Job von pppd gemacht wird, das alt und eingesessen ist, verschiedene Verschlüsselungsmodule unterstützt etc. während IPSec mir so neu und undurchsichtig ist. ;-)

Ob die Verbindung gehackt wird oder nicht, ist daher letztlich egal. Ein gutes Sicherheitskonzept muss immer damit rechnen, das alles gehackt wird.


Widerspruch. Ein gutes Sicherheitskonzept muss eine akzeptable Prozedur
haben, die angetriggert wird, WENN was passiert. Ein Sicherheitskonzept,
das von vornherein davon ausgeht, dass es gehackt werden wird, würde
mich eher nervös machen. Dann schon lieber eines, was unkomfortabel aber
sicher ist. *Schnipp*


Richtig. Ich wollte ja nur sagen, daß ein Rechner, der über VPN in mein Netz kommt, immer besonderer Beobachtung bedarf. Egal, wie sicher die VPN-Software ist. Wir stimmen ja überein, dass man nicht nur daran denken darf, zu verhindern, dass man gehackt wird, sondern immer damit rechnen muss, dass es trotzdem passiert. Dann kommts halt darauf an, das zu merken und zu reagieren.


In dem Fall OK, wenn PPTP nicht wegen der Pseudo-Verschlüsselung sondern
als Ersatz für PPP eingesetzt wird, wobei man sich dann doch gleich
fragt, wieso eigentlich nicht gleich PPP?

Weil Du ein Netzwerkkabel hinten in Deinen Rechner steckst und ppp nur mit seriellen Verbindungen umgehen kann.


Nö. PPP ist eine andere Schicht. In "VPNs" ist eine schöne Methode
beschrieben, mit SSH ein VPN aufzubauen, indem auf beiden Seiten ein
pppd gestartet wird, wobei der Server-Teil das dynamische Routing
übernimmt. Hier läuft PPP schon über SSH/TCP (nicht wie sonst umgekehrt),
pppoe ist dann die konsequente Fortführung (nur ohne die drunterliegende
Verschlüsselungsschicht der SSH).


Sage ich doch, dass es eine andere Schicht ist. PPTP baut eine Basisschicht, auf der dann PPP läuft. Also kann man nicht sagen "wieso nicht gleich PPP?". Es muss eine Basis darunter sein, die Bytes transparent hin und her tunnelt.

Übrigens sind VPNs über ssh theoretisch ganz nett, für ernsthafte Anwendungen aber nicht so gut zu gebrauchen, da ssh letztlich über eine TCP-Verbindung läuft. Da TCP sowohl Vollständigkeit als auch Reihenfolge der Pakete garantiert, steht die ssh-Verbindung sekundenlang still, sobald mal ein Paket verloren geht. Damit steht dann das ganze VPN still. (Das ist keine theoretische Aussage, sondern ich habe es ausprobiert) Außerdem wird die Performance von UPD-basierten Protokollen stark gedrückt, weil diese an sich verbindungslosen Pakete doch wieder in eine feste Reihenfolge gedrückt werden. Da es bei mir u.a. um Übertragung von Vieostreams ging (eine klassische UDP-Anwendung), wäre das mit ssh unmöglich gewesen.


Du brauchst also erstmal eine Schicht, die eine logische serielle Verbindung aufbaut.

V.32, SLIP, PLIP, TCP, ... Und darüber kann ich problemlos PPP fahren.


Im Falle eines DSL-Modems mit Ethernetanschluss geht keine der obigen Lösungen. (V.32 sagt mir nichts)



Diese Schicht kann pppoe sein oder pptp. Letztlich gehen beide Lösungen hin, erstellen eine solche logische Verbindung und starten dann pppd. Daher hast Du auch bei beiden Systemen letztlich die gleichen Möglichkeiten der Authentifizierung, Verschlüsselung, etc., da beide Systeme diese Aufgabe letztlich pppd überlassen.

So wie ich es sehe ersetzt der pptpd den pppd aber und macht das Routing
selbst. Oder täusche ich mich da?


Nein. Ja. ;-) Auszug eines "pstree"-Befehls auf einem Rechner, der als DSL-Router und als pptp-Server fungiert:

     |-kswapd
     |-kupdated
     |-named
->   |-pptpd---pptpctrl---pppd
     |-run---pppd---pppoe.real

PPTP meldet sich beim Server (auf Port 17xx irgendwo), verständigt sich mit ihm (bzw. mit einer für diese Verb. gestarteten pptpctrl-Instanz) und baut dann einen transparenten Tunnel auf. Wenn dieser steht, wird pppd darauf losgelassen, der dann Authentifizierung, Verschlüsselung etc. erledigt und dafür sorgt, dass IP-Devices erzeugt werden. Dabei arbeitet die Schnittstelle pppd <-> pptp aber immer noch paketorientiert, so dass Reihenfolge und Vollständigkeit egal sind.


Für PPP etwa nicht?

Ich meine für ein VPN (z.B. den Aussendienstler).

Anstatt mich auf in Windows eingebaute Sicherheitsmechanismen zu
verlassen, würde ich dem Aussendienstmitarbeiter eher eine SSH
mitgeben, und er darf sich dann meinetwegen als drunterliegende Schicht
eine AOL-CD einschieben.


Ich würde einem Windows-Rechner auch per ssh nicht mehr trauen als jetzt, nämlich gar nicht.


Putty macht kein VPN, sondern nur einen Shellzugang. (Oder habe ich da was übersehen - ich bin nämlich auch ein putty-Fan!)

Ich meine, auch Port-Forwarding in Putty gesehen zu haben, aber das
bekomme ich nur sporadisch mit, habe seit einer Ewigkeit keinen
Windows-Rechner mehr gesehen.


Ich habe hier ein putty 0.51, habe aber gerade gesehen, dass es mit 0.52 wohl gehen soll. Hmmm... könnte interessant sein für Anwendungen, die nicht auf Latenz und schnelles UDP, dafür aber auf sichere Verschlüsselung angewiesen sind.



Und für manche Probleme braucht man einfach ein echtes Netz. (Bei mir ging es um H323 bzw. Netmeeting, da kräuseln sich in jeder Firewall die Nackenhaare).

In der Tat. Aber dann würde ich doch eher einen VPN-Router einsetzen,
und diesen mit Blowfish einen bestimmten Port per TCP tunneln lassen.
Oder IPSec. Das sollen gerüchteweise auch Windows-Rechner inzwischen
hinbekommen.


Was heisst "Einen VPN-Router einsetzen"? Das ist doch das, was ich tue: Ich nehme eine Linux-Box und benutze sie als VPN-Router. (Dedizierte Boxen mag ich nicht. Erstens bastle ich nur hobbymaessig damit herum und zweitens weiss ich so wenigstens, was geschieht, wo die Probleme liegen und wo ich Updates bekomme.)

IPSec gibts soviel ich weiss erst ab Win2000 aufwärts (Oder muss es bei Microsoft "abwärts" heissen?!?). Da ich nach Win98 ein Gelübde abgelegt habe, nie wieder Geld für Software aus Redmond auszugeben, kann ich da allerdings nichts drüber sagen.

Und ob IPSec besser oder schlechter ist als PPTP, darüber streiten sich die Geister, soweit ich mich im Internet schlau gemacht habe. Interessant ist z.B., dass man PPTP auch ohne Verschlüsselung nutzen kann (Ja - auch dafür gibt es Anwendungen, wenn Latenz wichtig ist).


In der Mail von Michael Zacherl steht ein Link zu einem HOWTO
(http://howto.htlw16.ac.at/at-highspeed-howto-2.html), der ist sehr informativ. Damit dürfte es kein Problem sein. Eventuell nochmal ein Blick in meine Wiki-Seite (das Kapitel über Linux-Clients). Im Prinzip muss die Netzwerkkarte auf eine angegebene IP-Adresse gesetzt werden und dann eine pptp-Verbindung zu einer zweiten angegebenen IP-Adresse aufgebaut werden - Fertig!.

Kann man das nicht als Alternative in das schöne pppoeconf von Zomb
einbauen?


Die einzige echte Frage ist, wie man die Zugangsdaten in die pap/chap-secrets bekommt. Da muss ein grafisches Konfigurations-Programm, ähnlich der Netzwerk-Konfiguration her.

Siehe pppoeconf!


Übrigens glaube ich mich zu erinnern, das es zwei Methoden gibt, diese zweischichtigen Verbindungen aufzubauen. Entweder man startet pppd und sagt ihm, das er, wenn er eine Verbindung haben möchte, ein bestimmtes Programm benutzt, um eine logische Verbindung aufzubauen. Oder man startet pppoe (oder pptp) und sagt ihm, daß es, wenn die logische Verbindung steht, darauf pppd starten soll. Der praktische Unterschied ist, dass wenn die Verbindung physikalisch abbricht, pppoe beendet wird. Dann läuft bei der ersten Variante der pppd weiter und kann einen neuen Verbindungsaufbau versuchen (Bei T-Online sehr wichtig). Bei der zweiten Variante ist dann Schluss, da der Mutterprozess abbricht. Mit pppoe gehen beide Varianten, mit pptp habe ich bisher leider nur die zweite hinbekommen. D.h. wenn die pptp-Verbindung nicht sofort zustande kommt, wird der pppd nie gestartet und all die schönen Einstellungen von wegen auto-redial etc. werden nie geladen. :-(


Also, wir brauchen jemand, in Österreich, der es testen kann, und
jemand, der es (vielleicht in pppoeconf) integriert.


Ja! Freiwillige vor!


Gruß
		-Klaus



Mit freundlichen Grüßen,
      Thomas Bayen

Thomas Bayen, tbayen@bayen.de
Bleichpfad 22, 47799 Krefeld, Tel. +49 2151 29262

_______________________________________________
debian-knoppix mailing list
debian-knoppix@linuxtag.org
http://mailman.linuxtag.org/mailman/listinfo/debian-knoppix


Reply to: