NetVision-Technik

Zur?ck   NetVision-Technik > Forum > Server > Webserver

Webserver Fragen zum Apache, MySQL-Einrichtung und was sonst noch mit WebServern zu tun hat

 
 
Themen-Optionen Ansicht
Alt 31.07.2014, 08:43   #1
schienbein
Benutzer
Punkte: 8.089, Level: 60 Punkte: 8.089, Level: 60 Punkte: 8.089, Level: 60
Levelaufstieg: 70% Levelaufstieg: 70% Levelaufstieg: 70%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
 
Benutzerbild von schienbein
 
Registriert seit: 24.03.2008
Beitr?ge: 46
Abgegebene Danke: 3
Erhielt 43 Danke für 8 Beiträge
Downloads: 55
Uploads: 1
Nachrichten: 19
Renommee-Modifikator:
0 schienbein ist einfach richtig nettschienbein ist einfach richtig nettschienbein ist einfach richtig nettschienbein ist einfach richtig nettschienbein ist einfach richtig nett
Standard OpenVPN einrichten Part 1-2

OpenVPN einrichten Part 1 – VPN-Server konfigurieren

Da ich mich seid ein Paar Wochen mit dem Thema Openvpn und co. beschäftige und gefühlte 1001 Howtos gelesen habe sowie die offizielle Dokumentation durch gearbeitet habe möchte ich euch hier mal 1 meiner erarbeiteten Nutzungs Möglichkeiten als kleines howto bereitstellen.

Als erstes prüfen wir ob auf unserem System Tun/Tap Device Supportet wird.
Fall nicht könnt ihr hier schon Diereckt aufhören weiter zu Lesen!!!!!!!!!

Das ganze wurde mit einem Frisch eingerichtetem Debian7.0 64 bit System

Part 1 Tun/Tap Device

1. Das System auf den neuesten Stand bringen

Code:
 apt-get update && apt-get upgrade
2.Überprüfen ob TUN/TAP aktiviert ist
Code:
 cat /dev/net/tun
cat: /dev/net/tun: File descriptor in bad state
Info: Wenn hier eine Meldung der Art “File descriptor in bad state” erscheint dann ist alles in Ordnung und TUN/TAP ist aktiviert. Wenn hier hingegen eine Meldung der Form “No such device” erscheint dann sollte der Support des Hosters mit der Bitte kontaktiert werden TUN/TAP zu aktivieren.

Alternativ zum Support könnt ich auch noch versuchen das Modul Tun zu mit modprobe zu laden
Code:
modprobe tun
überprüft ob das Modul geladen wurde und bereit ist mit
Code:
lsmod | grep tun
info: vielleicht sollte mann noch überlegen eine Datei zu erstellen die das Modul bei einem System neustart automatisch mit startet
sollte tun aktiv sein kann man normal weiter machen.
Alle anderen müssen sich an ihren Support wenden um Tun zu Aktivieren

Part 2 Mit Openvpn einen Root/Vserver als Gateway Nutzen

1. OpenVPN installieren und einrichten

Code:
 Root werden
su
# OpenVPN und OpenSSL installieren
apt-get install openvpn openssl
# wechseln in Open-VPN-Verzeichnis und kopieren der Standardkonfiguration
CD  /etc/openvpn
CP  -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 ./easy-rsa
# Datei easy-rsa/vars editieren
nano  easy-rsa/vars
In der Datei wird die Variable export EASY_RSA editiert:
Code:
export EASY_RSA="/etc/openvpn/easy-rsa"
#ändern von
 export KEY_SIZE=2048
#zu
 export KEY_SIZE=4096
#optional
Jetzt beginnt die Basiskonfiguration zur Vorbereitungs der Schlüsselgenerierung.
Code:
 #Verzeichnis wechseln
CD  /etc/openvpn/easy-rsa
# Konfiguration
source vars
./clean-all
./pkitool --initca
# symbolischen (weichen) Link erzeugen
ln  -s openssl-1.0.0.cnf openssl.cnf
Jetzt werden die Zertifikate und Schlüssel generiert. Beim Kürzel für das Land tragen wir DE für Deutschland ein. Die anderen Angaben sind optional. Sofern der gleiche Common Name (CN) mehrmals bei verschiedenen Clients vergeben wird erscheint die folgende Fehlermeldung:
Code:
failed to update database
TXT_DB error number 2
Die Lösung ist, dass der CN nur einmal vergeben werden darf.

Code:
# Root CA erzeugen
./etc/openvpn/easy-rsa/build-ca OpenVPN
# Server Certificate erzeugen
./etc/openvpn/easy-rsa/build-key-server server
# erstes Client Certificate erzeugen (bei weiteren einfach durchzählen)
./etc/openvpn/easy-rsa/build-key client1
#Diffie Hellman Parameter erzeugen:
./etc/openvpn/easy-rsa//build-dh
#Dies dauert ne gewisse Zeit, je nach Speed der Server-CPU.
Um DOS-Attacken oder Port Scanning auf den OpenVPN Server zu erschweren erstellt man noch einen zusätzlichen TLS-AUTH Schlüssel:
Code:
openvpn --genkey --secret ta.key
Die Schlüssel und Zertifikate sowie die Clients befinden sich nun im Verzeichnis /etc/openvpn/easy-rsa/keys.
Der ta.key befindet sich unter /etc/openvpn/easy-rsa/
Ihr könnt diese dort liegen lassen oder wie ich es gemacht habe und legt euch weitere Ordner an und trennt die Zertifikate
zb. erstellt ihr den Ordner User und packt dort alle user.keys hinein achtet drauf das ihr die server.conf dem entsprechend
anpasst


Code:
# Konfigurationsdatei für OpenVPN anlegen
CD  /etc/openvpn
touch openvpn.conf
nano  openvpn.conf

Die Datei hat folgenden Inhalt und dient uns als server
Code:
port 1194

proto udp

tun-mtu 1500

dev tun

ca /etc/openvpn/keys/ca.crt

cert /etc/openvpn/keys/server.crt

key /etc/openvpn/keys/server.key

dh /etc/openvpn/keys/dh2048.pem

tls-auth /etc/openvpn/keys/ta.key 0

cipher AES-256-CBC

auth SHA256

tls-cipher DHE-RSA-AES256-SHA

topology subnet

server 10.8.0.0 255.255.255.0

push "redirect-gateway def1"

;push "dhcp-option DNS DNS-Server-IP"

;push "dhcp-option DNS DNS-Server-IP"

keepalive 10 120

comp-lzo

max-clients 10

user nobody

group nogroup

persist-key

persist-tun

verb 0
Wenn man mïöchte, dass der Server alternative DNS Server an die Clients bei Verbindungsaufbau mit pusht, so muss man bei den Zeilen:

;push "dhcp-option DNS DNS-Server-IP"

;push "dhcp-option DNS DNS-Server-IP"

das einleitende Semikolon löschen und jeweils DNS-Server-IP durch die IP Adresse des DNS Servers ersetzen.

neustart von openvpn
Code:
service openvpn restart
Nun erzeugt man (unter Windows zb mit dem Notepad) auf dem Client Rechner von user1 (für user2 entsprechend genauso) die Client Konfig Datei:

Man kann die Datei client1.ovpn client2.ovpn usw. nennen oder auch beliebig anders, wichtig ist nur die Dateiendung *.ovpn. und das für jeden user ein eigenen Schlüssel erstellt wird
Anschließend editiert man diese folgender maßen


Code:
client

dev tun

remote IP_DES_oVPN_SERVERS 1194

proto udp

resolv-retry infinite

nobind

persist-key

persist-tun

route-delay 2

tun-mtu 1500

ca ca.crt

cert user1.crt

key user1.key

tls-auth ta.key 1

cipher AES-256-CBC

auth SHA256

remote-cert-tls server

comp-lzo

verb 3
IP_DES_oVPN_SERVERS natïürlich durch die Server-IP ersetzen!



Um jetzt eine Verbindung zum Server aufzubauen benötigt man unter Windows als Beispiel den OpenVPN client, download unter:



OpenVPN Client



Dort den Windows installer laden und installieren. Anschlieïßend kopiert man die Dateien:



- ca.crt

- ta.key

- user1.crt

- user1.key

- client.ovpn



in den config Ordner dieses Programms. Die Verbindung client wird dann bereits nach dem Start des Tools in der Taskleiste unter den möglichen Verbindungen angezeigt und mit Klick auf Verbinden startet man die OpenVPN Session. Sollte alles klappen, so zeigt das Tool in der Taskleiste kurz die vom Server zugewiesene VPN-IP an und mit einem:

ping 10.8.0.1

Es fehlen nun noch einige Einstellungen am OpenVPN Server um über diesen surfen zu können.

Dazu muss zunächst das IP-Forwarding aktiviert werden, dazu gibt man als root folgenden Befehl ein:



Code:
echo "1" > /proc/sys/net/ipv4/ip_forward
Um diese Einstellung dauerhaft im System zu aktivieren, also auch nach einem Reboot des Servers muss man
etc/sysctl.conf editieren:
Man sucht die Zeile:

Code:
nano  /etc/sysctl.conf
# Raute entfernen vor folgenden Einträgen bzw. diese hinzufügen
#net.ipv4.ip_forward=1
net.inet.ip.fastforwarding = 1
und löscht die einleitende #. und erweitert um net.inet.ip.fastforwarding = 1

Letzter Schritt: Konfigurieren des Servers als NAT über die iptables:

Man gibt als root folgenden Befehl ein:
Code:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source SERVER_IP
sofern die Netzwerkschnittstelle des Servers eth0 ist, was aber im Regelfall der Fall ist.

Zum vergewissern kann man sich seine verfügbaren Netzwerkschnittstellen über den Befehl:

ifconfig

anzeigen lassen.

So konfiguriert maskiert der OpenVPN Server alle eingehenden privaten VPN IPs aus dem Netz 10.8.0.0/24 durch seine an eth0 gebundene IP, was seine öffentliche im Internet gültige IP darstellt. Damit ist es nun mïöglich über den Server zu surfen.

Um auch diese Einstellung dauerhaft im System zu integrieren kann man folgendermaßen vorgehen:

Man sichert sich die iptables settings in die Datei /etc/iptables.conf mit folgendem Befehl:

iptables-save > /etc/iptables.conf



Anschlieïßend fügt man in der Datei /etc/network/interfaces am Ende von den Eintrügen zu "iface eth0" folgende Zeile an:

pre-up /sbin/iptables-restore < /etc/iptables.conf



Wählt man sich nun erneut zu diesem Server ein und man startet den Webbrowser, so surft man via OpenVPN mit der IP des Servers statt mit seiner eigenen.

Da alle Einstellungen dazu fest im System integriert sind, funktioniert auch nach einem Reboot des Servers wieder alles wie gehabt.

Info: Ich werde das ganze hier noch nach und nach erweitern
ihr könnt sobald ihr openvpn Installiet habt und die Server.conf und client.conf zusätzlich noch Access Server installieren einrichten um mittels einer visuellen Oberfläche Eueren vpnserver weiter zu bearbeiten.
Ich verweise auch mal auf TrackerPolizei poxy howto welches sich mit unserem ssh2 dem Tool myentunnel oder PROXIFIER in verbindung mit dem Socks5-Server und dem vpn tunnel super kombieniren lassen beim richtigen port forwarding das werde ich heute Abend mal ergänzen
__________________
Wo soll das hinführen, wie weit mit uns gehen
Selbst ein Baum ohne Wurzeln kann nicht bestehen
Wann hört ihr auf, eure Heimat zu hassen
Wenn ihr euch ihrer schämt, dann könnt ihr sie doch verlassen
Du kannst dich nicht drücken, auf dein Land zu schauen
Denn deine Kinder werden später darauf bauen
Sprache, Brauchtum, und Glaube sind Werte der Heimat
Ohne sie gehen wir unter, stirbt unser kleines Volk

Ge?ndert von schienbein (31.07.2014 um 09:01 Uhr)
schienbein ist offline   Mit Zitat antworten Nach oben
Folgende 4 Benutzer sagen Danke zu schienbein für den nützlichen Beitrag:
gotthummer (31.07.2014), Schwamm (01.08.2014), Solstice (11.12.2015), Thunder™ (24.08.2014)
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, G?ste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beitr?ge zu antworten.
Es ist Ihnen nicht erlaubt, Anh?nge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beitr?ge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:57 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Template-Modifikationen durch TMS