OpenVPN Verbindung aufbauen

In dieser Anleitung geht es darum auf zwei Windows Systemen ein VPN aufzubauen. Dabei wird hier mit OpenVPN gearbeitet und sogenanntes Bridging benutzt. Das hat den Vorteil das der Clientrechner sich so verhält als wäre er direkt in dem entsprechenden LAN.

Im ersten Schritt installieren wir OpenVPN GUI (http://openvpn.se) auf dem Server (in diesem Fall ein Windows Server 2003 / 64 Bit Rechner) sowie auf dem Client (Windows XP / 32 Bit). Nachdem dies geschehen gehen wir auf einen der Rechner in das OpenVPN Verzeichnis und dort in den easy_rsa Ordner.

Dort öffnen wir eine Konsole und führen die Datei init-config.bat aus. Anschließend bearbeitet man die vars.bat und ändert da die Werte dementsprechend (KEY_SIZE, KEY_COUNTRY usw.) und führt dann in der gleichen Konsole die vars.bat sowie anschließend die clean-all.bat aus.

Damit ist das ganze Verzeichnis erst einmal sauber. Nun bauen wir den Schlüssel für die Certificate-Authority. Dies geschieht mittels der Ausführung der Dateien build-ca.bat in der gleichen Konsole. Danach wird noch die Datei build-dh.bat ausgeführt. Der darauf folgende Prozess kann einige Minuten dauern.

Nun müssen noch die Schlüsseldateien für den Server und den Client angelegt werden. Dies geschieht mittels build-key-server.bat [SERVERNAME] z.B. build-key-server.bat Lethery. Ist das geschafft wird mittels build-key.bat [CLIENTNAME] der Schlüssel für den Client generiert. Damit ist die Schlüsselgeneration abgeschlossen.

Nun werden die erzeugten Dateien separiert. Für den Server sind folgende Dateien nötig:

– ca.crt
– server.crt
– server.key
– dh1024.pem

Der Client benötigt diese Dateien:

– ca.crt
– client.crt
– client.key

Die Dateien kommen dabei in den config Ordner der OpenVPN Installation. Nun müssen die Konfigurationsdateien angelegt werden. Für den Client sieht das ganze so aus:

client

remote myserver.dyndns.com 1194
proto udp
dev tap

ca ca.crt
cert client.crt
key client.key
ns-cert-type server

verb 3
mute 50

Hier muss im Ideallfall nur der Servername hinter remote angepasst werden. Die Datei für den Server ist dabei etwas umfangreicher:

server-bridge 192.168.4.5 255.255.0.0 192.168.1.100 192.168.1.200

port 1194
proto udp
dev tap

ca ca.crt
cert server.crt
key server.key
dh dh1024.pem

client-to-client

ping-timer-rem
keepalive 20 180

verb 3
mute 50

Beim Server wird in der ersten Zeile das Standardgateway, das Subnetz, sowie die Start- und End IP Adresse angegeben. Die Start- und Endadressen dienen dazu dem OpenVPN Server zu sagen welche Adressen er für VPN Clients benutzen darf.

Danach kann man in der OpenVPN GUI auf Connect drücken (erst auf dem Server, dann auf dem Client) und wird dann zu seinem Netz verbunden. Sollte die Verbindung nicht funktionieren so muss am Router ein Portforwarding eingerichtet werden. Dazu muss Port 1194/UDP auf die entsprechende IP des OpenVPN Servers geforwardet werden.

Weitere Informationen gibt es unter:
http://wiki.openvpn.eu/index.php/Config_ServerNET_Bridging

Vala

Erstaunt stellte ich gestern fest das der neue Standardfotomanager unter Ubuntu (Shotwell) in Vala geschrieben ist. Bei Vala handelt es sich um eine Programmiersprache welche stark an C# und Java angelehnt ist. Dabei benötigt sie aber keine Laufzeitumgebung. Man hat dann also eine Sprache welche eine moderne Syntax bietet und keine Laufzeitumgebung benötigt sondern nativ auf dem System läuft. Im Gegensatz zu .NET/Mono hat die Sprache keinen Garbage Collector sondern implementiert automatische Referenzzählung zur Speicherverwaltung.

Beim durchschauen der Syntax (verglichen mit C#) sind mir einige Unschönheiten aufgefallen welche einige Konstrukte nicht sehr elegant aussehen lassen, aber das muss man sich wahrscheinlich mal in einem kleinen Projekt anschauen. Es ist möglich mit Vala plattformunabhängige Anwendungen zu schreiben. Als Standardbibliothek steht einem die glibc sowie die Geelib zur Verfügung. Der Vala Compiler wandelt den Quellcode in C Code um und kompiliert diesen dann anschließend. Definitiv eine Sprache die man sich mal anschauen sollte :) Die offizielle Seite von Vala ist unter http://live.gnome.org/Vala zu finden.

Weitere Informationen gibt es unter:
http://de.wikipedia.org/wiki/Vala_%28Programmiersprache%29

WebsiteBaker und die Lizenz

Bei WebsiteBaker handelt es sich um ein Open Source Content Managment System welches unter der GPL steht. Dazu steht auf der offiziellen Seite folgendes:

WebsiteBaker ist Open-Source-Software und unter der GNU General Public License (GPL) lizenziert. WebsiteBaker kann sowohl für private als auch für kommerzielle Zwecke kostenfrei (ohne jegliche Lizenzgebühren) genutzt und verändert werden, solange nachfolgende Punkte eingehalten werden:

– Beibehaltung der Copyright-Hinweise im Quellcode aller mit WebsiteBaker ausgelieferten Dateien
– Beibehaltung des Links: „WebsiteBaker is released under the GNU General Public License“ in der Fußzeile des Backends (muss sichtbar sein)

In diesem Fall geht es mir besonders um die zweite Bedingung, die „Beibehaltung des Links“. Dabei handelt es sich dabei um eine ungerechtfertigte Einschränkung welche nicht mit der GPL konform ist und muss demzufolge nicht beachtet werden. Auch sollte das nicht auf der offiziellen Seite stehen. Eine Hinweismail welche vor einigen Tagen (22ter Oktober) an das WebsiteBaker e.V. Board ging wurde leider nicht beantwortet.

Nur der Vollständigkeit halber, ich liebe WebsiteBaker und nutze es auch private sehr gerne :) Daran liegt mein Gemäkel also nicht ;)

Weitere Informationen gibt es unter:
http://www.websitebaker2.org
http://de.wikipedia.org/wiki/GPL

Neues Update für Invertika

Und da ist es wieder mal das neue Update für Invertika. Mittlerweile haben wir uns auf ein Update pro Monat eingependelt (immer am Ende des Monats), was ich denke ausreichend ist. So haben wir genug Zeit zum testen und der Spieler muss nicht alle zwei Tage neue Updates laden. Für alle die Invertika nicht kennen, dabei handelt es sich um Open Source MMORPG welches vom Stil her von den alten SNES Rollenspielen inspiriert ist. Der Spieleclient ist dabei für Windows, Mac OS X und Linux verfügbar.

In dem neuen Update wurden im ersten Schritt eine ganze Menge Fehler behoben, wie z.B. fehlende Ground Layer oder falsch gesetzte Kollsionslayer. In diesem Update haben auch einige Örtlichkeiten eine komplette Überarbeitung bekommen so z.B. Burg Cédric. Kleinere Überarbeitungen gab es auch in Selphi Timlet und Roststock. Im großen und ganzen kann man sagen, das sehr viel auf die Behebung von Fehlern hingearbeitet wurde.

Aber natürlich sind die Neuerungen nicht vergessen worden. Neu dazu gekommen ist der Zoo, die Invertika Studios, die verlassende Wüstenfestung sowie kleinere Dinge wie Okitas Haus. Neben diesen Dingen wurden auch einige neue Skripte geschrieben, welche sich allerdings noch nicht bemerkbar machen. Sie sind als Vorbereitung zu einigen neuen Quests in Selphi Timlet zu sehen.

Wer jetzt neugierig geworden ist der kann die offizielle Seite von Invertika unter http://invertika.org finden. Die Weltkarte gibt es unter http://weltkarte.invertika.org zu sehen und viele Informationen rund um das Spiel gibt es in der Wiki unter http://wiki.invertika.org. Ich wünsche schon mal viel Spaß :)