OpenVPN einrichten
Grundsaetzlich ist diese Anleitung auf allen unixoiden Betriebssystemen anwendbar, der einzige Unterschied bezieht sich auf die Installation des Grundpakets, hier verwende ich Debian mit aptitude.
Zunaechst installieren wir das Grundpaket
aptitude install openvpn
Nun wechseln wir in das Konfigurations-Verzeichnis
cd /etc/openvpn/
Jetzt kopieren wir Scripte zum Generieren der PKI und gehen in dieses Verzeichnis
cp -r /usr/share/doc/openvpn/examples/easy-rsa/ . && cd easy-rsa/2.0
Jetzt passen wir die Umgebungsvariablen hierfuer an
edit vars
Jetzt noch alles ausfuehren
. ./vars && ./clean-all && ./build-ca
Nun koennen wir die Schluessel fuer den Server erstellen (der Parameter server ist der beliebige Server-Name)
./build-key-server server
Anschliessend die Schluessel fuer einen Client
./build-key client1
Und jetzt noch den Diffie-Hellman-Key
./build-dh
Jetzt sind alle erforderlichen Schluessel generiert.
Jetzt muessen wir nur noch die fuer Clients erforderlichen Schluessel auf die Clients bekommen, hierfuer gibt es viele verschiedene Varianten, ich benutze hier SCP um die Files zu transportieren, andere Moeglichkeiten sind Mail, FTP, SFTP, Samba ...
Ich erstelle ein Verzeichnis und taufe es needed, dieses Verzeichnis zieh ich anschliessend per SCP auf den jeweiligen Client.
mkdir needed && cp ca.crt needed && cp client1.crt needed && cp client1.key needed
Jetzt noch den SSH_User angeben
chown SSH_USER needed && chown SSH_USER needed/* && mv needed /home/SSH_USER
client~$ scp -P 22 -r SSH_USER@host:/home/SSH_USER/needed .
Unter Mac mit Tunnelblick:
client~$ mv needed/* ~/Library/Application\ Support/Tunnelblick/Configurations/
Wieder zurueck am Server holen wir die Keys ins Konfigurations-Verzeichnis
srv:/etc/openvpn/easy-rsa/2.0# cd ../.. && mv easy-rsa/2.0/keys .
Jetzt holen wir eine Beispiel-Konfiguration
srv:/etc/openvpn# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz . && gunzip server.conf.gz
... und dieses bearbeiten
edit server.conf
Folgende Punkte sollten bearbeitet werden (die route muss an das eigene Netz im LAN angepasst werden.
port WXYZ # anything > 49151 < 2^16-1
proto tcp
ca keys/ca.crt
cert keys/server.crt
key keys/server.key
dh keys/dh1024.pem
push "route 10.0.0.0 255.255.255.0" #beispielsweise 192.168.1.0 ...
Nun noch am Server IP-forwarding aktivieren
echo 1 > /proc/sys/net/ipv4/ip_forward
... und fertig ist die Laube.
Samba fuer Filesharing einrichten inkl Sicherung

Eine kurze Version, fuer erfahrene Benutzer, der Anleitung ist unten auffindbar. Kursivgeschriebenes dient der Sicherheit und ist staerkstens empfohlen, wenn der Rechner Internetzugang hat. Es bewirkt, dass man auf die Shares nur aus dem lokalen LAN Zugriff hat.
Voraussetzungen
- Samba *
- Netzinformationen (eine IP-Adresse) um die Netzadresse zu bestimmen;
Bsp: 192.168.1.1 -> 192.168.1.0 / 24
Zunaechst bearbeiten wir die Konfigurationsdatei mit einem beliebigen Editor wie nano, pico oder vim:
srv: root# nano /etc/samba/smb.conf
Folgende Punkte muessen ueberarbeitet bzw aktiviert (ent-aus-kommentiert
) werden:
- interfaces mit folgenden Moeglichkeiten:
interfaces = eth0interfaces = 192.168.0.0 / 24sprich Netzadresse und Subnet- bind interfaces only
bind interfaces only = yessecurity = user
Hier ein Template fuer eine Netzlaufwerk:
[NAME] #Der Name des Netzlaufwerks, unter diesem wird es verfuegbar sein
comment = Desc #Eine Beschreibung oder Kommentar
browseable = yes #Ob es im Explorer angezeigt werden soll
read only = no #Ob geschrieben werden darf (Files erstellen)
# Siehe http://de.wikipedia.org/wiki/Unix-Dateirechte#Grundlegende_Rechte
# Wenn die Grp Schreib- und Leserechte haben soll: 0775
create mask = 0700
directory mask = 0700
guest ok = no #Gastzugang erlauben
path = /path/to/dir
valid users = %S # oder eine Auflistung der erlaubten User: hans, michael
Nun muss Samba nur noch wissen welche User, die bereits im System existieren, Samba benutzen duerfen, hierzu wird erst geadded:
smbpasswd -a USER
und anschliessend enabled:
smbpasswd -e USER
BTW: USER ist auch der gleiche Name wie er ggbf ins smb.conf-File zu schreiben ist.
Nach einem Neustart per /etc/init.d/samba restart sind die Shares auch schon verfuegbar.
Unter Windows lassen sie sich einfach per Arbeitsplatz -> Extras hinzufuegen und unter Mac mit CMD+K wenn man sich im Finder befindet.
Eine weiterfuehrende Anleitung, um Samba auch aus dem Internet erreichbar zu machen, findet sich bei OpenVPN Einrichtung.
* - Samba laesst sich unter Linux fuer gewoehnlich bequem per Paketmanager wie apt (apt-get install samba oder aptitude (aptitude install samba) installieren.
===
Kurzanleitung:
edit /etc/samba/smb.conf
interfaces = 10.0.0.0/24 # ODER eth0
bind interfaces only = yes
security = user
[NAME]
comment = Beschreibung
browseable = yes
read only = no
create mask = 0700
directory mask = 0700
guest ok = no
path = /path/to
valid users = %S
smbpasswd -a USER
smbpasswd -e USER
SSH sichern

Vorhanden sein muss:
- Unixoides Server-Betriebssystem
- Unixiodes Client-Betriebssystem
- SSH-Server
- SSH-Client
- Benutzer dem wir SSH erlauben wollen (spaeter ssh_user genannt) *
Zunaechst erstellen wir am Client das RSA-Schluesselpaar (alternativ kann man auch analog hierzu DSA verwenden):
client$ ssh-keygen -t rsa
Der folgende Dialog erfragt Speicherort (Default: ~/.ssh/) und Passphrase (Kennwort).
Nach dem Erstellen des privaten und oeffentlichen Keys koennen wir nun den oeffentlichen Schluessel auf den Server kopieren:
client$ cat ~/.ssh/*.pub | ssh user@host 'umask 077; cat >>.ssh/authorized_keys'
Die Schluessel sind fertig, nun koennen wir SSH fertig konfigurieren. Hierzu editieren wir das Config-File (Default: /etc/ssh/sshd_config). Den Editor hierfuer kann man natuerlich frei waehlen, fuer Kleinigkeiten nutze ich gerne nano oder pico, empfehlenswert ist auch vi bzw vim.
srv: root$ nano /etc/ssh/sshd_config
Geaendert werden folgende Einstellungen:
- Port
beliebig >= 49152 - AllowUsers
ssh_user - AuthorizedKeysFile
%h/.ssh/authorized_keys - ChallengeResponseAuthentication
no - PasswordAuthentication
no - UsePAM
yes
Folgende Punkte muessen gesucht (In nano strg+w; in VI/VIM /) und bearbeitet bzw hinzugefuegt werden:
srv: root$ nano /etc/ssh/sshd_config
Nach einem SSH-Server-Neustart kann man bereits sein gesichertes Werk benutzen.
Eine weitere Moeglichkeit zum Sichern ist ein SSL-VPN-Tunnel á la OpenVPN und den SSH-Server nur auf eine interne LAN-IP listen zu lassen (ListenAddress W.X.Y.Z). Eine Anleitung hierzu findest du hier auf Szenenews.
* - Ein Benutzer laesst sich leicht per adduser NAME hinzufuegen.