Category Archives: HowTo

WPA Key’s mit GFX-Power cracken – Pyrit

Das Cracken von WPA Keys kann schon sehr lange dauern. Eine Grafikkarte welche CUDA unterstützt leistet hier erstaunliches an Rechenpower um schneller an den Key zu kommen. Bei NVIDIA gibt es eine Liste der unterstützen Karten welche mit CUDA Support kommen. In Backtrack 5 müssen erst einmal die Treiber für die CUDA Unterstützung kompiliert und installiert… Read More »

Linux sicherer machen

Here you can find some stuff to make your Server more Secure.
Absolutely no warranty, use it at your own risk.

1.) Disable the Apache ServerSignature like this one

1
Apache/2.2.3 (Debian) mod_fastcgi/2.4.2 mod_perl/2.0.2 Perl/v5.8.8

Put only these lines in your httpd.conf

1
# Disable ServerInfoServerSignature OffServerTokens Prod

2.) Disable Debugging functions
An attacker may use this flaw to trick your legitimate web users to give him their credentials. Add the following lines for each virtual host in your configuration file to disable the Debugging

1
RewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* - [F]

3.) Disable ProFTPD Banner
When you connect to your FTP-Server it looks like this

1
Verbindung mit 62.75.xx.xx wurde hergestellt.220 ProFTPD 1.3.0 Server (vsxxxxxx) [62.75.xx.xx]Benutzer (62.75.xx.xx:(none)):

Here can you see the ProFTPD Version -> 1.3.0 To Disable the Banner add, the following line to the proftpd.conf:

1
ServerIdent                    off

4.) Enable SSL in ProFTPD
For a secure File Transfer you can add SSL to your ProFTPD

Create a SSL Certificate:

1
openssl req -new -x509 -days 365 -nodes  -out /etc/proftpd/ssl.crt -keyout /etc/proftpd/ssl.key

Open your proftpd.conf to enable SSL

1
# vi /etc/proftpd/proftpd.conf

enable the last lines like this and set TLSEngine ‚on

1
## SSL via TLS#<IfModule mod_tls.c>TLSEngine                   onTLSLog                      /var/log/proftpd/ftp_ssl.logTLSProtocol                 SSLv23TLSOptions                  NoCertRequest TLSRSACertificateFile       /etc/proftpd/ssl.crt TLSRSACertificateKeyFile    /etc/proftpd/ssl.keyTLSVerifyClient             off </IfModule>

Restart proftpd to bring the effect:

1
# /etc/init.d/proftpd restart

5.) Change the SMTP-Banner
If you want to change this Postfix SMTP-Banner:

1
Connected to your-domain.tld.Escape character is '^]'.220 your-domain.tld. ISPCP 1.0 Priamos Managed ESMTP 1.0.0 RC2 OMEGA

Open your „/etc/postfix/main.cf“ and change the SMTP-Banner here to what you want

1
smtpd_banner = $myhostname ISPCP 1.0 Priamos Managed ESMTP 1.0.0 RC2 OMEGA

6. Install & Configure fail2ban
Fail2Ban automatic blocks an IP-Address after some failed Logins.
It works with Apache,SSH,FTP and Mail.

Install fail2ban per apt-get

1
# apt-get install fail2ban

After the installation you can configure fail2ban with these two configs under /etc/fail2ban/

1
/etc/fail2ban/fail2ban.conf/etc/fail2ban/jail.conf

Open your jail.conf to enable the blocks for some Services.

1
# vi /etc/fail2ban/jail.conf

Now you can enable or disable the Services you want to protect. By default SSH is enabled.

If you want to enable Apache,
change:

1
## HTTP servers#[apache]enabled = falseport    = httpfilter  = apache-authlogpath = /var/log/apache*/*access.logmaxretry = 6

to

1
## HTTP servers#[apache]enabled = trueport    = httpfilter  = apache-authlogpath = /var/log/apache*/*access.logmaxretry = 6

For FTP (proftpd)

1
[proftpd]enabled  = falseport     = ftpfilter   = proftpdlogpath  = /var/proftpd/proftp.logmaxretry = 6

change it to

1
[proftpd]enabled  = trueport     = ftpfilter   = proftpdlogpath  = /var/log/auth.logmaxretry = 3

You can change the maximal retry´s before ban with

1
maxretry = X

If you want to change the bantime,

1
bantime  = 600 (is set in seconds)

Warning: fail2ban use Firewall ruls to block the IP.
A ban is per default for 10 minutes active. After this time the IP is unblocked automatically.

The fail2ban Log is under

1
/var/log/fail2ban.log

7.) SSL for Mailservice (Courier)

First we need to install the courier-ssl packages.

1
# apt-get install courier-imap-ssl courier-pop-ssl

A default Certificate will be created during the installation. So we need to change them.

Open the /etc/courier/imapd.cnf

1
# vi /etc/courier/imapd.cnf

and change the attributes to your needs.
And then the same with /etc/courier/pop3d.cnf

1
# vi /etc/courier/pop3d.cnf

After these changes, first backup the old Certificate before we generate some new.

1
# cd /etc/courier/ && mv pop3d.pem pop3d.pem.orig && mv imapd.pem imapd.pem.orig

Now we can generate the new one:

1
# dpkg-reconfigure courier-pop-ssl && dpkg-reconfigure courier-imap-ssl

Done – your Mailservice is now ready for SSL.
Change your Client to use POP3-SSL on port 995 and IMAP-SSL on port 993

8.) Make SSH safer

Every Scriptkiddy checks your Server for a open Port 22 and test to login with the root account.
We will change these things to the good with an other Port and disable the root login via ssh.

First we need a user on the system for a later login. If there is already one, jump over to the next step. If not, create it:

1
# adduser new_username

Open your sshd_config to change the settings:

1
# vi /etc/ssh/sshd_config

Change the Port from

1
Port 22

to

1
Port 222

Change this line:

1
PermitRootLogin yes

to

1
PermitRootLogin no

Restart the SSH-Server

1
# /etc/init.d/ssh restart

Close your connection and connect again to your Server on Port 222 with your new Username.
To become root, only do a:

1
# su

9.) Prevent DOS-Attacks
To prevent simple Denial-of-Service attacks you can use the mod_evasive module. Download the actual version from http://www.zdziarski.com/projects/mod_evasive/ and unpack it. Make sure, that apache2-prefork-dev is installed.

1
# apt-get install apache2-prefork-dev# wget http://www.zdziarski.com/projects/mod_evasive/mod_evasive_1.10.1.tar.gz# tar -xzf mod_evasive_1.10.1.tar.gz# cd mod_evasive

Install it with Apache Extensions Module (apxs).

1
#  apxs2 -i -a -c mod_evasive20.c

The module will be built and installed into your httpd.conf.

Optionally you can change some specific directives in your /etc/apache2/apache2.conf file. Just add the following lines and change them to your needs.

1
<IfModule mod_evasive20.c>DOSHashTableSize    3097DOSPageCount        2DOSSiteCount        50DOSPageInterval     1DOSSiteInterval     1DOSBlockingPeriod   10</IfModule>

You can also add the following directives:

1
    DOSEmailNotify      you@yourdomain.comDOSSystemCommand    "su - someuser -c '/sbin/... %s ...'"DOSLogDir           "/var/lock/mod_evasive"

After all, just restart your Apache to load the module.

1
# sudo /etc/init.d/apache2 restart

10.) Securing Open DNS server (BIND 9)After a clean install of a Debian server, dnsstuff.com reports the server as an open dns server(anyone can query the server about any domain => high load and high transfer). 2 steps for fixing this problem:

a. first edit /etc/bind/named.conf.options (or /etc/named/named.conf for other distros, options paragraph) and add:

1
recursion no;transfer-format many-answers; //this is for speed up the transfer to a secondary dns

b. we need to modify the template used by ISPCP to generate to zone files, on Debian this is /etc/ispcp/bind/parts/cfg_entry.tpl. The file after modification should looks like:

1
zone "{DMN_NAME}" {type    master;file    "{DB_DIR}/{DMN_NAME}.db";notify  YES;allow-query {any;};};

Restart BIND:

1
/etc/init.d/bind9 restart

You are done.

OpenVZ HowTo

Da das Thema Virtualisierung immer mehr im kommen ist und die Tools schon eine verdammt gutes performanceergebniss erzielen, will ich in diesem HowTo OpenVZ etwas näher erläutern. OpenVZ wird schon seit längerer Zeit bei vielen Hostern eingesetzt, da Virtuozzo auch auf OpenVZ aufbaut.

Dieses HowTo bezieht sich auf eine Installation unter Debian Etch.

Wer näheres zu OpenVZ lesen möchte kann auf die Intertseite des Projects schauen -> OpenVZ.org

1. Kernel installieren

Um den OpenVZ Kernel zu installieren benötigen wir erst die richtige Quelle. Diese tragen wir in der sources.list ein.

1
# vi /etc/apt/sources.list

deb http://download.openvz.org/debian etch main
Danach müssen wir die Quellen aktualisieren und können den Kernel installieren

1
2
3
# apt-get update
# apt-cache search linux-image-2.6.18-openvz
# apt-get install <linux-image>

Wer seinen Kernel nicht kennt –> „uname -a“

2. Tools installieren

OpenVZ können wir mit einigen Tools steuern. Dise müssen wir noch installieren:

1
# apt-get install vzctl vzquota

3. Netzwerk am Hostsystem anpassen

1
# vi /etc/network/interfaces

Folgende Zeilen müssen zur der verwendeten Netzwerkkarte geschrieben werden.
Bitte „%DEV%“ durch das eigentlich Interface ersetzen z.B. eth0

1
2
up sysctl -w net.ipv4.conf.%DEV%.proxy_arp=100
pre-down sysctl -w net.ipv4.conf.%DEV%.proxy_arp=0

Jetzt müssen wir noch Einstellungen für den proxy vornehmen:

1
# vi /etc/sysctl.conf

Die Datei muss so angepasst werden

1
2
3
4
5
6
7
8
9
10
11
12
13
# On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv4.conf.default.proxy_arp = 0
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1
# Enables the magic-sysrq key
kernel.sysrq = 1
# TCP Explict Congestion Notification
# net.ipv4.tcp_ecn = 0
# we do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0

4. Symlink setzen

Jetzt benötigen wir noch einen Symlink für das Verzeichniss VZ

1
# ln -s /var/lib/vz /vz

5. Kernel laden

Um den neuen Kernel zu starten benötigen wir einen neustart des Systems

1
# reboot

6.)Installation prüfen

Nachdem das System wieder erreichbar ist können wir „uname -a“ sehen ob der OpenVZ Kernel geladen wurde

1
2
openvz:/# uname -a
Linux openvz 2.6.18-openvz-12-1etch1-686 #1 SMP Sat May 5 00:26:59 CEST 2007 i686 GNU/Linux

Wenn das so passt sollten wir auch ein neues Netzwerkinterface „venet0“ haben

1
2
3
4
5
6
7
8
9
openvz:/# ifconfig
...
...
venet0    Protokoll:UNSPEC  Hardware Adresse 00-00-00-00-00-00-00-00-00-00-00-00
UP BROADCAST PUNKTZUPUNKT RUNNING NOARP  MTU:1500  Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

7. Templates installieren

Jetzt kommen wir zu den eigentlichen Templates (Betiebsystemen) für OpenVZ.
Hier ist ein größer Unterschied zwischen OpenVZ und VMWare festzustellen.
Unter OpenVZ kann nur wieder ein Linux gestartet werden, nicht aber ein Windows.

Es gibt schon eine große Sammlung von OpenVZ Templates auf der Seite des Projektes -> Template Diese sind schon vorkonfiguriert und müssen nur noch heruntergeladen werden. Wir wollen jetzt einfach mal ein OpenSuSE 10 in OpenVZ zum laufen zu bringen.

7.1 Templates herunterladen

Die Templates müssen in das folgende Verzeichniss abgelegt werden:

1
openvz:/var/lib/vz/template/cache#

Am besten nehmen wir gleich wget um das fertige Template auf unseren Rechner zu bringen:

1
# wget http://download.openvz.org/template/precreated/opensuse-10-i386-default.tar.gz

8. Erste Virtual Environment anlegen

Nachdem wir das Template heruntergeladen haben, können wir es einmal installieren und immer wieder für eine neue Maschine benützen.Es muss auch nicht entpackt werden.
Los gehts:

1
# vzctl create 101 --ostemplate opensuse-10-i386-default

Damit erstellen wir eine neue VE mit der ID 101 und dem Template von OpenSuSE
Wichtig ist das die ID größer 100 sein muss. Das ganze sollte dann so aussehen:

1
2
3
4
5
openvz:/# vzctl create 101 --ostemplate opensuse-10-i386-default
Creating VPS private area: /var/lib/vz/private/101
Performing postcreate actions
VPS private area was created
openvz:/#

Jetzt müssen wir der VE noch eine IP vergeben:

1
# vzctl set 101 --ipadd 192.168.100.217 --save

Wenn das auch geklappt hat sollte ein „Save parameters for VPS 101“ erscheinen. Das war es auch schon mit der einrichtung und wir können die VE starten:

1
# vzctl start 101

9. Virtual Environment testen

Nachdem die VE jetzt läuft können wir direkt Befehle in der VE absetzen. Der Grundbefehl lautet:

1
# vzctl exec VEID

So können wir mal alle Prozesse die innerhalb der VE laufen abfragen:

1
# vzctl exec 101 ps ax

Jegliches Command kann abgesetzt werden wir es jeder von Linux kennt. Es muss jedeglich ein „vzctl exec VEID“ davor gestellt werden.

SSH ist normalerweise bei den vorkonfigurierten schon am laufen. Es muss nur noch das root Passwort neu gesetzt werden und man kann sich direkt per SSH an der VE anmelden.

10. VE Sichern (Backup)

Wer von seinen VE eine Sicherung machen will, der sollte vzdump installieren

1
2
# wget http://www.proxmox.com/cms_proxmox/cms/upload/vzdump/vzdump_1.0-2_all.deb
# dpkg -i vzdump_1.0-2_all.deb

vzdump ist eigentlich ziemlich selbst erklären:

1
2
3
4
5
6
7
8
9
vzdump OPTIONS [--all ]
--compress              compress dump file (gzip)
--dumpdir DIR           store resulting files in DIR
--xdelta                create a differential backup using xdelta
--mailto EMAIL          send notification mail to EMAIL
--stop                  stop/start VPS if running
--suspend               suspend/resume VPS when running
--snapshot              use LVM snapshot when running
--restore FILENAME      restore FILENAME

11. Comannds im überblick

Hier ein kurzer Überblick der OpenVZ Commandos. Quelle: Wikipedia

1
vzctl create VEID [--ostemplate ] [--config ]

Dieser Befehl erzeugt ein neues VE, das eine numerische ID, ein angegebenes OS-Template (eine Linux Distribution) und die Ressourcen, die in der angegebenen Konfigurationsdatei spezifiziert sind, hat. Die beiden Parameter –ostemplate und –config sind optional. Die Hauptkonfigurationsdatei enthält Standardwerte für beide.

1
vzctl start VEID

Startet das angegebene VE. Das Starten bedeutet das Erzeugen eines Virtual Environment im Kernel, Initialisieren von allen Ressourcenverwaltungsparametern und Starten des VE’s /sbin/init in diesem Umfeld.

1
vzctl stop VEID

Stoppt das angegebene VE. Ein VE kann auch mit Hilfe von eigenen /sbin/halt oder /sbin/reboot -Befehlen gestoppt oder neu gestartet werden.

1
vzctl exec VEID

Startet den Befehl im angegebenen VE. Um beispielsweise alle Prozesse im VE 102 anzeigen zu lassen, kann man vzctl exec 102 ps ax nutzen.

1
vzctl enter VEID

Öffnet die VE-Shell. Das ist nützlich, wenn z. B. sshd nicht gestartet ist und Sie das Problem untersuchen möchten.

1
vzctl set VEID --parameter  [...] [--save]

Setzt den angegebenen Parameter für das VE. Hier können verschiedene Parameter benutzt werden; Um die Festplattenquota für das VE festzulegen, verwenden Sie

1
vzctl set VEID --diskspace soft:hard --save.

Um das Kernel-RAM-Soft-Limit und –Hard-Limit für VE zu (re)definieren, müssen Sie den Befehl so starten:

1
vzctl set VEID --kmemsize barrier:limit --save

Und um eine VE wieder zu löschen

1
vzctl destroy VEID

OpenVPN HowTo

Jeder der sich auf seinem Server einwählen möchte, egal ob aus Sicherheitsgründen um den SSH Port zu schließen oder um die MySQL DB mit Access bearbeiten findet hier ein HowTo für Debian Etch das genau dies alles ermöglicht.

1. OpenVPN Server installieren

Hier gehen wir ganz den einfachen Debian weg:

1
2
# apt-get update
# apt-get install openvpn openssl

2. Erstellen der Zertifikate

Bevor wir mit der Schlüsselerstellung anfangen, noch ein Hinweis. Es wird bei der Erstellung der Schlüssel auch eine Abfrage gestartet, wo Land, Stadt, Benutzer E-Mail usw. eingegeben werden müssen. Dafür kann man immer die gleiche Bezeichnung nehmen mit einer Ausnahme

Der CommonName muss immer verschieden sein.
Wechseln in das SSL Verzeichniss

1
# cd /etc/ssl/

Erstellen eines Unterverzeichniss

1
# mkdir Zertifikate

Jetzt erstellen wird die Schlüssel für das CA (Certifikate Authority)

Wir benützen dazu die OpenSSL Tools

1
# openssl genrsa -aes256 -out private/vpn-cakey.pem 2048

Was macht der Befehl:
openssl: startet die Prozedur genrsa: generiert die Schlüssel
-aes256: ist der Verschlüsselungsalgorithmus
-out: erstellt die Ausgabedatei

Beim ausführen muss ein Passwort eingegeben werden:

(Enter Pass Phrase for vpn-cakey.pem: )

Diese wird später gebraucht um unsere Zertifikate zu verifizieren.

Danach erstellen wir unser CA

1
# openssl req -new -x509 -days 365 -key private/vpn-cakey.pem -out vpn-ca.pem -set_serial 1

Was macht der Befehl:

req: erstellt eine Anfrage ( Request )
-new: sagt das wir eine neue Anfrage schicken
-x509: verwendeter Standart für das CA
-days: solange ist das Zertifikat gültig
-key: der verwendete Masterschlüssel zum erstellen des CA
-set_serial: die Seriennummer die hochgezählt wird.

Jetzt erstellen wir die Clientzertifikate. Der Serverschlüssel wird als erstes von den Schlüsselpaaren erstellt

1
# touch index.txt && echo "01" > serial

index.txt: damit man später die Zertifikate sperren kann echo „01“ > serial: um eine 1 in die Serialdatei zu schreiben

Jetzt erstellen wir die Zertifikatanfrage und den Schlüssel
(alles in eine Zeile)

1
2
# openssl req -new -newkey rsa:2048 -out Zertifikate/server_csr.pem
-nodes -keyout private/server_key.pem -days 365

newkey: erstellt einen neuen Schlüsselbund
rsa:2048: ist die Schlüssellänge
-nodes: es wird kein Passwort auf das Zertifikt gelegt (sollte aber bei den Clientzertifikaten nicht verwendet werden)
-keyout: Ausgabe des Schlüssel in die Datei server_csr.pem: Zertifikatanfrage
So jetzt der Schlüssel und das signierte Zertifikat
(alles in eine Zeile)

1
2
# openssl x509 -req -in Zertifikate/server_csr.pem -out Zertifikate/server_cert.pem
-CA vpn-ca.pem -CAkey private/vpn-cakey.pem  -CAserial serial -days 365

-in: sagt uns welche Zertifikatanfrage verarbeitet werden soll
-out: Zertifikatname
-CA: für das Unterzeichnen des Zertifikates
-Cakey: Masterschlüssel für das erstellen des Zertifikates
Nun die Clients (daselbe wie beim Server und wieder alles in eine Zeile)

1
2
# openssl req -new -newkey rsa:2048 -out Zertifikate/Client1_csr.pem -keyout private/Client1_key.pem -days 365
# openssl x509 -req -in Zertifikate/Client1_csr.pem -out Zertifikate/Client1_cert.pem -CA vpn-ca.pem -CAkey private/vpn-cakey.pem -CAserial serial -days 365

Zum Schluss noch den Diffie Hellman Parameter erzeugen.

1
# openssl dhparam -out dh2048.pem 2048

Das erzeugen des Diffie Hellman Parameter dauert sehr lange.

Erstellen der Config-Dateien

Nun müssen wir die Configdateien für den Server und für den Client erstellen. Dieses habe ich auf meinen Windowsrechner mit dem Texteditor gemacht. Beim speichern ist darauf zu achten, dass die Config für den Server unter „Server.ovpn“ und die Config für den Windows Client unter „Client.ovpn“ gespeichert werden. Bei Speicher darauf achten das die endung „.ovpn“ bleibt.

Server-Config (Server.ovpn)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# Port Standardport 1194
port 1194
 
# Die Revoke Liste überprüfen #crl-verify /etc/ssl/crl.pem
# TCP oder UDP? proto udp mode server tls-server dev tap
 
# Unsere Server IP
ifconfig 192.168.100.1 255.255.255.0
ifconfig-pool 192.168.100.2 192.168.100.9
 
# Server IP Adresse (Adressbereich. in dem Fall alles von 10.10.10.0)
#server
#Wo liegen unsere Zertifikate
ca /etc/ssl/vpn-ca.pem cert /etc/ssl/Zertifikate/server_cert.pem key /etc/ssl/private/server_key.pem
 
# Diffie-Hellmann Parameter
dh /etc/ssl/dh2048.pem
 
#Die Selbe IP in der nächsten Sitzung vergeben
#ifconfig-pool-persist ipp.txt
#IPs in den IP Tables eintragen,
#DNS neu vergeben und über Den Server das Routing machen,
#dass man z.B. über den Tunnel auf ein
# lokales Intranet zuzugreifen
#push "route 10.0.0.0 255.0.0.0"
#push "dhcp-option DNS 192.168.1.xyz"
#push "redirect-gateway"
#push "route 0.0.0.0 0.0.0.0"
 
#Authentifizierungsmethode auth SHA1
 
#Verschlüsselungs Algorithmus cipher aes-256-cbc
 
#Benutze Komprimierung comp-lzo
 
#Setzt die Rechte user nobody group nogroup
 
#Wird wegen user nobody/group nobody benötigt. persist-key persist-tun
 
#Logging 0, (Zum testen:5) verb 7

Client-Config (Client.ovpn)

Die Client-Config nicht blind kopieren. Es muss noch die „Serveradresse“ durch die IP vom Server ersetzt werden!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#Festlegen als was fungiert wird
tls-client
pull
 
# Methode festlegen tun oder tap dev tap
# Protokoll auswaehlen udp oder tcp proto udp
# IP/Name und Port des Servers (bitte ändern) remote 123.123.123.123 1194
# Auflösen des Hostnames des Servers resolv-retry infinite
# Localen Port festlegen oder freigeben nobind
# Verbindung immer gleich halten persist-key persist-tun
#zu verwendende Zertifikate und Schlüssel ca C:\\Programme\\Openvpn\\config\\vpn-ca.pem cert C:\\Programme\\Openvpn\\config\\Client1_cert.pem key C:\\Programme\\Openvpn\\config\\Client1_key.pem
 
# Verschlüsselung cipher AES-256-CBC
 
# Komprimiernug comp-lzo
 
# Authentifizierungsmethode auth SHA1
 
# "Gesprächigkeit" des Tunnels verb 3
 
# Silence repeating messages mute 20

So nun folgende Dateien mit z.B. WinSCP auf den Clientrechner unter „C:\Prorgamme\OpenVPN\config“ kopieren

1
2
3
4
vpn-ca.pem
client1_cert.pem
client1_key.pem
Client.ovpn

Wir sind fast fertig mit der Installation. Nur noch unsere erstellte „Server.ovpn“ mit z.B WinSCP auf den Server unter

1
/etc/openvpn/

kopieren. Um spätere Warnungen zu vermeiden ändern wir noch die Rechte der „server_key.pem“ ab

1
# chmod 600 /etc/ssl/private/server_key.pem

Serverconfig testen

Bevor wir den Tunnel starten, sollten wir die Config mal testen

1
openvpn --config /etc/openvpn/Server.ovpn

Hier sollten keine Fehler auftauchen.

Tunnel starten

Wenn wir beim Configtest keine Fehler erhalten haben können wir das ganze jetzt starten:

openvpn /etc/openvpn/Server.ovpn

Sobald der Server läuft können wir versuchen, uns mit dem Client zu verbinden: Am Client auf Start -> Programme -> OpenVPN -> OpenVPN GUI In der Taskleiste erscheint dann ein Symbol mit 2 roten Bildschirmen und einer Weltkugel. Dieses Symbol klicken wir mit der „rechten Maustaste“ an Dann gehen wir im Auswahlfeld auf „Verbinden“, geben unser Passwort ein und klicken auf „Ok“. Nun wird eine Verbindung zum Server aufgebaut. Dies sieht man daran, das das VPN-Symbol von rot auf gelb wechselt. Ist der Verbindungsaufbau abgeschlossen erscheint das VPN-Symbol in grün. Und „Hurra“ wir haben einen VPN-Tunnel zu unserem Server aufgebaut.