Dieses Wiki ist ein Archiv bis 2023. Das aktuelle Wiki findet sich unter https://wiki.hamburg.ccc.de/

Difference between revisions of "ChaosVPN:DebianHowto"

From CCCHHWiki
Jump to: navigation, search
m
Line 36: Line 36:
 
  # apt-get install tinc
 
  # apt-get install tinc
  
entweder das packet aus sid, oder meinen backport von debian.sdinet.de
+
entweder das Packet aus Debian Unstable, oder meinen Sarge Backport von [http://debian.sdinet.de/sarge/sdinet/tinc/ http://debian.sdinet.de/sarge/sdinet/tinc/]
  
es sollte mindestens version 1.0.2 sein
+
es sollte mindestens Version 1.0.4 sein, zum Erreichen einiger der verwendeten Subnetze ist wegen eines Tinc-Fehlers mindestens SVN Rev 1450 nötig, oder 1.0.5 wenn es denn mal released ist.
  
oder halt von http://tinc.nl.linux.org/ downloaden und
+
oder halt von [http://tinc.nl.linux.org/ http://tinc.nl.linux.org/] downloaden und
 
selber compilieren - dort solltet ihr beim ./configure
 
selber compilieren - dort solltet ihr beim ./configure
 
nur mindestens den parameter --sysconfdir=/etc mit angeben,
 
nur mindestens den parameter --sysconfdir=/etc mit angeben,
Line 50: Line 50:
 
  > ./MAKEDEV: don't know how to make device "tun"
 
  > ./MAKEDEV: don't know how to make device "tun"
  
dann das device von hand anlegen
+
dann das Device von Hand anlegen
  
 
  # mkdir -p /dev/net
 
  # mkdir -p /dev/net
Line 127: Line 127:
  
 
  # cd /usr/local/bin
 
  # cd /usr/local/bin
  # wget -nd https://www.vpn.hamburg.ccc.de/chaosvpn-client.pl
+
  # wget -nd [https://www.vpn.hamburg.ccc.de/chaosvpn-client.pl https://www.vpn.hamburg.ccc.de/chaosvpn-client.pl]
  
 
== 10. config-template downloaden: ==
 
== 10. config-template downloaden: ==
  
 
  # cd /etc/tinc
 
  # cd /etc/tinc
  # wget -nd https://www.vpn.hamburg.ccc.de/chaosvpn.conf
+
  # wget -nd [https://www.vpn.hamburg.ccc.de/chaosvpn.conf https://www.vpn.hamburg.ccc.de/chaosvpn.conf]
  
 
== 11. configfile anpassen ==
 
== 11. configfile anpassen ==

Revision as of 21:19, 19 July 2006

Back

mir war das ganze angedachte setup mit openvpn zu aufwendig, bis da was verwendbares fertig ist wuerde es noch lange dauern, und die skalierungsprobleme sind ja schon absehbar.

ich habe mich daher heute abend mal hingesetzt, und eine schnell funktionierende mini-loesung mit tinc gebaut.

die angedachten groesseren sachen mit ip-uebermittlung und datenbank lassen sich da spaeter ohne grosse planungs-aenderungen integrieren


folgende system-vorraussetzungen fuer clients gibt es bis jetzt:

  • linux only first
    • tinc gibts auch fuer praktisch alle unix-varianten und windows, aber mein kleines quickhack-config-perl-script kann bis jetzt nur mit linux umgehen
  • perl mit LWP und https-Support
  • funktionierenden dyndns hostname, der immer die aktuelle router-ip enthaellt, oder mit statischer ip


QUICK HOWTO FUER DEBIAN USER

0. noetige perl module und helper-programme installieren

# apt-get install libwww-perl
# apt-get install libcrypt-ssleay-perl

geht natuerlich auch von hand oder per CPAN, aber die beiden obigen module brauchen noch selbst weiter diverse andere

# apt-get install iproute

1. tinc instalieren

# apt-get install tinc

entweder das Packet aus Debian Unstable, oder meinen Sarge Backport von http://debian.sdinet.de/sarge/sdinet/tinc/

es sollte mindestens Version 1.0.4 sein, zum Erreichen einiger der verwendeten Subnetze ist wegen eines Tinc-Fehlers mindestens SVN Rev 1450 nötig, oder 1.0.5 wenn es denn mal released ist.

oder halt von http://tinc.nl.linux.org/ downloaden und selber compilieren - dort solltet ihr beim ./configure nur mindestens den parameter --sysconfdir=/etc mit angeben, und im script (unten) muss der pfad zum binary gecheckt werden

wenn bei der tinc-installation folgende Fehlermeldung kommt:

> ./MAKEDEV: don't know how to make device "tun"

dann das Device von Hand anlegen

# mkdir -p /dev/net
# mknod /dev/net/tun c 10 200
# chown root:root /dev/net/tun
# chmod 600 /dev/net/tun


2. config verzeichnis anlegen

# mkdir -p /etc/tinc/chaos

3. keys erzeugen

# tincd -n chaos --generate-keys=2048

und ein paar mal return druecken

4. netz-nick ausdenken

dies ist der name des netz-teils/gateways, nicht unbedingt der name des users - es kann ja mehr gateways pro user geben

immer dort einsetzen wo im foldenden text <nodename> steht

5. gateway-rechner mit dyndns-hostname versehen

oder halt bei statischer ip den festen hostname/die feste ip verwenden

immer dort einsetzen wo im foldenden text <clienthost> steht

6. infos an haegar@ccc.de mailen

ich brauche folgende infos:

nodename=<nodename> gatewayhost=<clienthost> network=<ipv4 subnetzrange im vpn> network6=<ipv6 subnetzrange im vpn> kann auch mehr als eins sein, ipv4 und/oder ipv6

dieses subnetz muss in unserem vpn eindeutig sein, schlagt einfach euer wunsch-netz/das bisher zuhause verwendete netz vor, und mit glueck ists noch frei

*.23.*, *.42.*, *.0.* und *.1.* sind schlechte kanditaten ;)

bisher gibts noch keine abfragbare liste der schon zugeordneten subnetze

owner= admin des vpn-teils, mit email-adresse key rsa-public-key - inhalt von /etc/tinc/chaos/rsa_key.pub

optional sind noch folgende angaben moeglich:

use-tcp-only=1 ich kann kein udp machen, beschraenken wir uns auf das fuer tunnel suboptimale tcp hidden=1 zu mir koennen keine verbindungen aufgemacht werden, ich kann nur rausconnecten (z.b. hinter nat) silent=1 ich kann nicht rausconnecten, aber ihr koennt zu mir connections aufbauen

7. auf reaktion warten

8. goto 6 unless $success

9. chaos-client downloaden:

# cd /usr/local/bin
# wget -nd https://www.vpn.hamburg.ccc.de/chaosvpn-client.pl

10. config-template downloaden:

# cd /etc/tinc
# wget -nd https://www.vpn.hamburg.ccc.de/chaosvpn.conf

11. configfile anpassen

im oberen teil befinden sich die configurations-variablen

12. script in /etc/ppp/ip-up o.ae. integrieren, oder von zeit-zu-zeit per cron restarten

und mit glueck funktioniert das dann sogar schon ;)


todo: massig ;) vor allem testen, anpassen und anleitung schreiben mit anderen linux-varianten, und vielleicht sogar mit *bsd