Einrichtung von Samba

Nach der Installation von Samba ist es am besten, die originale Konfigurationsdatei umzubenennen:

mv /etc/samba/smb.conf  /etc/samba/smb.conf_orig

und mit einer einfachen, sicheren smb.conf zu beginnen:

[global]
   bind interfaces only = yes
   interfaces = 127.0.0.1, 10.4.0.1

[free]
  path = /srv/free
  writeable = yes

Nun fehlt noch ein dedizierter Benutzer, mit dem auf die Samba-Freigaben zugegriffen werden soll:

useradd -d /nodir -s /bin/false otto
smbpasswd -a otto

Die Daemons können mit service samba restart neu gestartet werden, um die geänderte Konfiguration einzulesen.

Einrichtung von OpenVPN

Es muss zuerst wieder das OpenVPN-Paket installiert werden, danach wird für erste Versuche der Pre-Shared-Key erzeugt:

cd /etc/openvpn
openvpn --genkey --secret my.key

Für höhere Sicherheit sollte man ihn später durch Zertifikate ersetzen.

Dieser Schlüssel muss nun auf sichere Weise (z.B. via scp oder mit Hilfe eines verschlüsselten Zip-Archives) auf die Client-Rechner kopiert werden.

Konfiguration auf dem Server

In der Datei /etc/openvpn/server.conf sollte folgendes stehen:

dev tap
ifconfig 10.4.0.1 255.255.255.0
link-mtu 1544
secret /etc/openvpn/my.key

Nun noch den Daemon mit

service openvpn start

starten. Gelingt das nicht ohne weiteres, kann es an dem noch nicht geladenen Modul tun liegen. Also einfach

modprobe tun

ausführen. Den VPN-Verbindungsaufbau kann man mit

tail -f /var/log/syslog

beobachten.

Konfiguration auf einem Linux-Client

In der Datei /etc/openvpn/client.conf steht in etwa das Folgende drin:

dev tap
remote my.vserver.tld
ifconfig 10.4.0.2 255.255.255.0

### Wenn komplettes Host-an-Netz umgesetzt werden soll (Szenario "Road-Warrior"):
#route-gateway 10.4.0.1

redirect-gateway
link-mtu 1544
secret /etc/openvpn/my.key

Der oben erzeugte Schlüssel my.key muss hier natürlich vorliegen, vor dem Starten des OpenVPN-Daemons kann es auch hier evl. wieder erforderlich sein, das Modul tun zu laden.

Ein erster Test mit ping -c3 10.4.0.1 sollte zeigen, dass der Tunnel funktioniert.

Konfiguration auf einem Windows-Client

Nach Installation der entsprechenden Windows-Software wird der Schlüssel sowie die Konfigurationsdatei client.ovpn unter C:\Programme\OpenVPN\config\ abgelegt.

Hier ist der Inhalt der Datei C:\Programme\OpenVPN\config\client.ovpn:

dev tap
remote my.vserver.tld
ifconfig 10.4.0.3 255.255.255.0
#route-gateway 10.4.0.1
redirect-gateway
link-mtu 1544
secret C:\\Programme\\OpenVPN\\config\\my.key

Der Tunnel wird hier über das OpenVPN-Icon im Systray gestartet. Danach sollte ebenfalls ein ping 10.4.0.1 möglich sein.

Testings/Nacharbeiten

Unter Linux kann man sich jetzt auf sichere Art mit

smbclient -Uotto //10.4.0.1/free

auf den Samba-Server einloggen und das Share benutzen.

⇒ Damit der VPN-Server nicht nur jeweils eine Verbindung akzeptiert, muss ein allowing multiple clients to connect to a single OpenVPN server umgesetzt werden. Siehe dazu https://openvpn.net/index.php/open-source/documentation/howto.html