OpenVPN Update

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
BestOfMe
Beiträge: 46
Registriert: 29.04.2012 19:25:55

OpenVPN Update

Beitrag von BestOfMe » 25.02.2015 08:56:08

Hallo zusammen,

ich kenne mich mit Linux leider kaum aus, daher meine evtl. doofe Frage:

kann mir jemand veraten, wie ich meine OpenVPN 2.2.1 auf die aktuelle OpenVPN Version 2.3.6 über die Konsole aktualisiert bekomme?!

mit apt-get update oder apt-get upgrade funktioniert es nicht :(

Besten dank im voraus!

TomL

Re: OpenVPN Update

Beitrag von TomL » 25.02.2015 21:31:26

BestOfMe hat geschrieben: ich kenne mich mit Linux leider kaum aus, daher meine evtl. doofe Frage:
kann mir jemand veraten, wie ich meine OpenVPN 2.2.1 auf die aktuelle OpenVPN Version 2.3.6 über die Konsole aktualisiert bekomme?!

mit apt-get update oder apt-get upgrade funktioniert es nicht
Ja, ich weiss, die Paketquellen haben nur ne alte Version. Selbst für "Testing" ist OpenVPN nicht aktuell. Möglicherweise kann ich Dir helfen. Für welches Debian brauchst Du das?

BestOfMe
Beiträge: 46
Registriert: 29.04.2012 19:25:55

Re: OpenVPN Update

Beitrag von BestOfMe » 27.02.2015 08:35:18

Linux version 3.2.0-4-686-pae (debian-kernel@lists.debian.org) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Debian 3.2.65-1+deb7u2

Benutzeravatar
orcape
Beiträge: 1525
Registriert: 07.11.2008 18:37:24
Wohnort: 50°36'23.99"N / 12°10'20.66"E

Re: OpenVPN Update

Beitrag von orcape » 27.02.2015 09:32:16

Hi,
das aktuellste bei Debian ist OpenVPN (2.3.4-5) zur Zeit ab Jessie---->experimental.
https://packages.debian.org/jessie/openvpn
Die /etc/apt/sources.list editieren und die Quellen auf Jessie ändern.
Ein aptitude update gefolgt von einem aptitude reinstall openvpn, sollte Dir OpenVPN in dieser neuen Version bringen.
(Quellen ändern, Siehe unten !)
Ob das dann aber mit Kernel Linux version 3.2.0-4-686-pae und Wheezy Abhängigkeitsprobleme gibt ???
Wenn Du Dein Debian nur auf einem Desktop betreibst und nicht gerade auf einem produktiven Server dann...

Code: Alles auswählen

nano /etc/apt/sources.list
...ändern der Quellen auf....

Code: Alles auswählen

# deb cdrom:[Debian GNU/Linux testing _Squeeze_ - Official Snapshot amd64 DVD Binary-1 20$

deb http://ftp.de.debian.org/debian/ testing main contrib non-free
deb-src http://ftp.de.debian.org/debian/ testing main contrib non-free

deb http://security.debian.org/ testing/updates main contrib non-free
deb-src http://security.debian.org/ testing/updates main contrib non-free
...für testing kannst Du auch jessie einsetzen, wenn Du bei Jessie später bleiben willst und nicht testing
nutzen willst.
Anschließend ein aptitude update gefolgt von aptitude dist-upgrade und dann solltes das System automatisch einiges aktualisieren, incl. OpenVPN.
Alternativ wäre natürlich die Fremdinstallation direkt von OpenVPN...
https://openvpn.net/index.php/open-sour ... loads.html
...aus einem .tar.
Gruß orcape

TomL

Re: OpenVPN Update

Beitrag von TomL » 28.02.2015 12:27:41

Moin

Sorry, wenn ich Dich leider (trotz meines Angebotes) ein wenig vergessen habe.... aber ich habe leider im Moment selber ein paar deftige Routing-Probleme in meinem eigenen Netz. Und wie das eben so ist, Probleme fressen manchmal Hilfsbereitschaft. Aber ich nehme mir jetzt einfach mal die Zeit, meinen Vorschlag zu schreiben, als weitere Alternative zu Orcapes schon sehr gute Idee. Aber, und das ist wichtig, wenn Du dich dazu entschließt, bitte erst einmal bis zum Ende lesen, um einen Überblick über die Konsequenzen zu bekommen. Meine Idee hat den Vorteil, dass du bei diesem wirklich tollen Programm ein wenig unabhängig von den manchmal etwas trägen offiziellen Paketquellen wirst, aber dennoch ein Original-Programm von einer quasi-offiziellen Quelle verwenden kannst.... und zwar von dort, wo es ursprünglich herkommt. Das versetzt Dich ausserdem in die Lage, künftig bei OpenVPN jederzeit Uptodate zu sein. Und ein weiterer Vorteil ist, das installierte OpenVPN ist ein Code-optimiertes Programm speziell für Deinen Rechner.

Vorab und in eigener Sache eine mir sehr wichtige Anmerkung: Ich würde mich sehr über Hinweise freuen,falls einer der kritischen und sachkundigen Forums-Kollegen hier einen Fehler findet. Es ist tatsächlich nicht so einfach, ein schlüssiges Konzept zu schreiben, weil man sich beim Entwickeln wegen vielerlei Probleme (bei mir das Routing) nicht immer straight nach vorne bewegt. Ich habe OpenVPN auf meinem Rechner genau mit diesen Steps eingerichtet. Mit einem Unterschied, ich hatte vorher kein altes installiert. Dewegen habe ich vorher auf einem anderen Rechner den Punkt 3 ausgeführt und dieses SIK nach dem Setup (mit entsprechenden Anpassungen) installiert. Bei mir hat das funktioniert.... aber dennoch weise ich darauf hin: Alle Angaben ohne Gewähr und ohne Garantie auf Erfolg und auf eigene Gefahr! :wink:

Dieser Artikel betrachtet ein Update von OpenVPN 2.2.1 auf die Version OpenVPN 2.3.6. Ich habe die Installation auf einem ((fast) untouched) Raspian Wheezy ohne weitere Vorkommnisse oder Fehler durchgeführt. Ob alle Schritte bei anderen Versionen genau so funktionieren, muss man im Einzelfall vorher prüfen und ggf. Anpassungen vornehmen. Und ganz wichtig, ich bitte um eine Rückmeldung... die Rückmeldung ist bei Fehlschlag genau so wichtig, wie bei Erfolg. Bei Erfolg kanns anderen ebenfalls helfen, bei einem Fehlschlag sollte man so fair sein und andere vor Schaden bewahren.

Soweit so gut... also Ok, auf gehts... Du kannst also das Programm direkt von der OpenVPN-Community-Seite installieren. Achtung: Alle Steps sind als root auszuführen!

1. Download des Paktes openvpn-2.3.6.tar.gz von OpenVPN

2. Das runtergeladene Archiv tar.gz in ein leeres Verzeichnis entpacken, z.B. nach /media/vpncreate

Code: Alles auswählen

        mkdir /media/vpncreate
        tar -xpz -f openvpn-2.3.6.tar.gz -C /media/vpncreate
        cd /media/vpncreate/openvpn-2.3.6
        ls -lah               	                         // alles da?
An der Stelle muss jetzt eine Entscheidung getroffen werden. Entweder ich deinstalliere vor der Installation das alte OpenVPN und muss dazu vorher ein paar Abhängigkeiten sichern, oder ich lasse das alte bestehen, muss aber dann später ein paar Abhängigkeiten ändern. Das ist aber kein Hexenwerk. Wenn man die beiden Installationen über Paketquelle und "eigene" vergleicht, wird der Unterschied deutlich. Wenn ich das alte entferne, muss ich also vorher ein paar Verzeichnisse sichern, um sie für das "neue" OpenVPN wieder restoren zu können. Wenn ich das alte OpenVPN zunächstmal behalten möchte, muss ich später ein paar Verweise ändern.... eigentlich funktioniert beides.

Hier sind zur (frühen) Information die später bestehenden Unterschiede zwischen Paketquelle und make gelistet:
(ermittelt mit: find / -name media -prune -o -iname openvpn -print)

Code: Alles auswählen

apt-get install                         make                            
---------------------------------------------------------------------
/usr/lib/openvpn                        /usr/local/lib/openvpn          
/usr/sbin/openvpn                       /usr/local/sbin/openvpn         
/usr/share/doc/openvpn                  /usr/local/share/doc/openvpn    

/etc/network/if-up.d/openvpn                                         
/etc/network/if-down.d/openvpn                                       
/etc/init.d/openvpn                                                  
/etc/default/openvpn                                                 
/etc/openvpn                                                         
/usr/share/doc/openvpn/exampel                                       

/usr/share/openvpn                                                   
/usr/include/openvpn                                                 
/etc/bash_completion.d/openvpn 

3. Die alten und nach dem Make fehlenden OpenVPN-Verzeichnisse bzw. Scripte sichern. Bitte beachten, der tar-Befehl ist hier EINE Zeile, also alles in einer Rutsche hinteranderweg ausführen. (Das tar-Archiv wird ggf. später in Pkt. 7 verwendet)

Code: Alles auswählen

mkdir /media/vpnsik

tar -cz -f /media/vpnsik/openvpn.tgz /etc/network/if-up.d/openvpn /etc/network/if-down.d/openvpn /etc/init.d/openvpn /etc/default/openvpn /etc/openvpn /usr/share/doc/openvpn/examples usr/share/openvpn /usr/include/openvpn /etc/bash_completion.d/openvpn
Wenn Du das alte Openvpn behalten willst, bitte Punkt 4. überspringen. Gesichert ist trotzdem alles. Ich würde die alte Version erst mal belassen wie sie ist... wenn der make "failed", läuft zumindest das alte Programm unverändert weiter. Es sollte allein durch das Erstellen des neuen Programms eigentlich nichts kaputtgehen.

4. Sofern gewünscht das alte OpenVPN deinstallieren

Code: Alles auswählen

apt-get purge --remove openvpn
5. Für den Compiler (und das neue Programme) notwendige Developement-Abhängigkeiten installieren. Das sind (vermutlich) Verweise (Headerfiles) auf Funktionen, mit denen sich OpenVPN an anderer Stelle bedient.

Code: Alles auswählen

apt-get install libssl-dev                                           // SSL
apt-get install liblzo2-dev                                          // LZO-Kompression
apt-get install libpam0g-dev                                         // Pluggable Authentication Modules
6. Programm erstellen und installieren

Code: Alles auswählen

cd /media/vpncreate/openvpn-2.3.6

./configure
make
make install
7. Anpassen und Starten
Das weitere Vorgehen orientiert sich daran, ob das alte OpenVPN noch vorhanden ist, oder ob es deinstalliert wurde.

Variante 1, OpenVPN wurde vorher entfernt.

Code: Alles auswählen

Restore Files  (siehe Pkt. 3)
          tar -xpzv -f /media/vpnsik/openvpn.tgz -C / --keep-old-files

Symlinks generieren:
           ln -s  /usr/local/lib/openvpn       /usr/lib/openvpn
           ln -s  /usr/local/sbin/openvpn      /usr/sbin/openvpn
           ln -s  /usr/local/share/doc/openvpn /usr/share/doc/openvpn
Variante 2, OpenVPN besteht noch. Das ist eigentlich genauso einfach.

Code: Alles auswählen

Daemon "schließen" und Startscript aus runlevels entfernen
        
           /etc/init.d/openvpn stop                             // Prozess anhalten/pausieren oder mit
           service openvpn stop                                 // (je nachdem, was fehlerfrei klappt)
           killall openvpn                                      // Den Prozess endgültig killen                                                              
           update-rc.d -f openvpn remove                        // Den Daemon-Start aus den RunLevels entfernen
Als nächstes wird im RunLevel-Startscript das "neue" OpenVPN eingetragen. Diese Anpassung ist für beide Varianten notwendig:

Code: Alles auswählen

nano /etc/init.d/openvpn

Die Zeile 
         DAEMON=/usr/sbin/openvpn
ersetzen durch
         DAEMON=/usr/local/lib/openvpn
    
Nun wieder den Daemon in die Runlevels eintragen. 
         update-rc.d openvpn start 01 2 3 4 5 . stop 99 0 1 6 .

Bei beiden Varianten sollte der Daemon nach dem nächsten Systemstart laufen. Um OpenVPN sofort zu starten, gibst Du ein:

Code: Alles auswählen

/etc/init.d/openvpn start

Sofern Du die Logs nicht umgeleitet hast, kannst Du den Erfolg sofort kontrollieren:

Code: Alles auswählen

cat /var/log/syslog | grep openvpn

Code: Alles auswählen

Steht dort als erstes 
        Feb 28 11:34:43 raspi3 ovpn-openvpn[2572]: OpenVPN 2.3.6 armv6l-unknown-linux-gnueabihf [SSL (OpenSSL)].....

und als letztes 
        Feb 28 11:34:43 raspi3 ovpn-openvpn[2581]: Initialization Sequence Completed

war das Update erfolgreich.

8. Jetzt noch Aufräumen und das Create-Dir löschen

Code: Alles auswählen

        rm -r /media/vpncreate
Ganz am Ende noch ein wichtiger Hinweis für den Fall, dass das alte Paket installiert geblieben ist. Ich kann mir hierbei vorstellen, dass die Paketverwaltung möglicherweise bei einem Update trotzdem dieses alte Programm "austauscht". Wenn auch gleichzeitig noch das Init.d-Script ausgetauscht werden würde, gibts vermutlich ein Problem, weil dann nicht mehr die manuell installierte Version läuft, sondern das upgedatete. Dann muss man evtl. noch mal von Hand nachbessern. Dieses Problem (und ich weiss nicht genau, obs wirklich eins werden kann) besteht nicht, wenn man das alte OpenVPN vorher deinstalliert, denn dann ist diese "Nummer" aus dem Paketmanagement ausgenommen. Diese Entscheidung muss mal aber selber treffen. Und schlimmstensfalls installiert man es einfach erneut aus den Paketquellen.

BestOfMe
Beiträge: 46
Registriert: 29.04.2012 19:25:55

Re: OpenVPN Update

Beitrag von BestOfMe » 28.02.2015 20:29:20

wow vielen dank für die wirklich mega-ausführliche Anleitung!!

Ich werde es mal die Tage in Angriff nehmen.

Zu OpenVPN ist mir nun eine andere Frage aufgekommen. Jedesmal wenn ich OpenVPN starte erhalte ich folgende Meldung im Log:

Code: Alles auswählen

do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
was genau bedeutet das?

Benutzeravatar
orcape
Beiträge: 1525
Registriert: 07.11.2008 18:37:24
Wohnort: 50°36'23.99"N / 12°10'20.66"E

Re: OpenVPN Update

Beitrag von orcape » 01.03.2015 08:54:08

Hi,

Code: Alles auswählen

do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
...ich würde mal vermuten das IPv6 in der Config nicht aktiviert ist.
Dann schreibt er in die Logs, das er das eben nicht aktiviert hat.
Das schlußfolgere ich natürlich nur aus meinen begrenzten Englisch Kenntnissen.....
- do ......zu tun
- did.......getan
...würde ich das übersetzen. :mrgreen:
Gruß orcape

Antworten