Unterschiede zwischen den Revisionen 3 und 4
Revision 3 vom 2012-06-13 21:26:24
Größe: 2925
Autor: anonym
Kommentar: converted to 1.6 markup
Revision 4 vom 2023-08-19 18:11:52
Größe: 0
Autor: phil
Kommentar: Veraltet
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
= vpn mit amrita =

== Was ist das? ==
''VPN'' (virtual private network) ist der Oberbegriff aller Implementationen, die verschlüsselten Netzwerk-Verkehr zwischen den beteiligten Peers ermöglichen.

Amrita ist eine Umsetzung im userspace, also ohne spezielle Kernelmodule (abgesehen vom ''tun''-Modul im Standardkernel). Es verwendet ein Client-Server-Modell, also mindestens einer der Beteiligten muss eine öffentliche IP besitzen (ansonsten ist eine [PortForwardingHowto Port-Weiterleitung] nötig).

In der Linux-Kernel-Serie 2.6 ist ''ipsec'' inzwischen integriert. Es ist für größere Netze auf jeden Fall vorzuziehen.

== Installation ==
 * Quellen von sourceforge holen: http://cesnet.dl.sourceforge.net/sourceforge/amvpn/amvpn-0.99.tar.gz
 * eventuell '''libssl-dev''' installieren
 * ''amrita'' installieren{{{
./configure
make
make install}}}
 * wenn du magst, kannst du jetzt deine zukünftige Schlüssellänge optimieren (z.B.: 2048 statt 1024 Bits), indem du die '''/sbin/amvpn-keytool''' anpasst

== Konfiguration ==
'''/etc/amvpn.conf''' anpassen:
 * server-ip 139.30.131.251 -> die Beispiel-IP eines Servers
 * tunnel-ip 192.168.42.XX -> die tunnel-ip eines Clients
 * port 120XX -> ein Client-Port auf dem Server
 * route-ip 192.168.42.0
 * unter '''run-as-user''' folgende Zeile einfuegen:{{{
run-as-group amvpn}}}
 * Gruppe '''amvpn''' anlegen (etc/group)
 * in der ''/etc/passwd'' die Gruppe fuer den Nutzer '''amvpn''' einstellen und sein Home-Verzeichnis auf ''/usr/share/amvpn'' setzen

== Schlüssel erzeugen ==
für den Server:
{{{amvpn-keytool genca
amvpn-keytool genkey
amvpn-keytool gencert}}}

Client-Schlüssel:
 * erstmal erzeugen:{{{
amvpn-keytool genkey}}}
 * dann signieren
  * entweder vom Client aus:{{{
amvpn-keytool -r root@example.net:/usr/share/amvpn -c gencert}}}
  * oder vom Server aus:
{{{amvpn-keytool -r root@CLIENT:/usr/share/amvpn gencert}}}

nix Passwort!

WICHTIG: nach dem Schlüssel-Erzeugen musst du unbedingt auf dem Server `rm /usr/share/amvpn/remote*` ausfuehren - ansonsten erhält der Nächste folgende Meldung: {{{
Couldn't get handle: Permission denied
Killed by signal 2.}}}
falls er nicht ''root'' ist

=== Schlüssel fixieren ===
{{{amvpn-keytool secure amvpn}}}

(das setzt wohl die Zugriffsrechte des Schluessel-Verzeichnisses: erst ausführen, wenn alle Clients ihre Schlüssel erzeugt haben)

== tun-Device ==
 1. das Modul "tun" unter '''Network-Devices''' -> "Universal TUN/TAP-Driver..." ist nötig
 1. falls es kein Gerät '''/dev/net/tun''' gibt, dann:
`cd /dev; MAKEDEV tun`

== Benutzung ==
das Start-Skript (/etc/init.d/amvpn) ist nicht brauchbar, also per Hand:
{{{amvpn -d}}}


= Notizen =
 * logs in ''/var/log/syslog'' und ''/var/log/daemon.log''
 * tun-Modul installieren
 * tun-Device erstellen
 * Schlüssel erzeugen
 * ''/usr/share/amvpn'' muss ''amvpn'' gehören

Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.