80 lines
2.0 KiB
Markdown
80 lines
2.0 KiB
Markdown
|
# OpenVPN auf dem Raspberry Pi installieren
|
||
|
|
||
|
|
||
|
### Client hinzufügen
|
||
|
|
||
|
```shell
|
||
|
cd ~/easy-rsa
|
||
|
./easyrsa gen-req client1 nopass
|
||
|
```
|
||
|
|
||
|
Danach auf dem CA-Server unterschreiben lassen:
|
||
|
```shell
|
||
|
./easyrsa sign-req client client1
|
||
|
```
|
||
|
|
||
|
Nun das eigene Skript ```make_config.sh``` aufrufen, um die Config-Datei zu erstellen:
|
||
|
|
||
|
```shell
|
||
|
./make_config.sh client1
|
||
|
```
|
||
|
|
||
|
Nun wurde eine ```*.ovpn``` Datei erstellt, welche man nur noch beim Client anwenden braucht.
|
||
|
|
||
|
|
||
|
### OpenVPN auf dem Raspberry Pi installieren
|
||
|
|
||
|
1. Update und Upgrade
|
||
|
```shell
|
||
|
sudo apt-get update && sudo apt-get upgrade
|
||
|
```
|
||
|
|
||
|
2. Nun kann OpenVPN und das Paket unzip installiert werden
|
||
|
```shell
|
||
|
sudo apt-get install openvpn unzip
|
||
|
```
|
||
|
|
||
|
Anschließend besitzt man folgende Ordnerstruktur:
|
||
|
```/etc/openvpn```
|
||
|
|
||
|
Nun kann wie oben gezeigt, eine ```.ovpn``` erstellt werden. Diese kann man dann in dem jeweiligen
|
||
|
Verzeichnis abgelegt werden und so kann der Dienst gestartet werden:
|
||
|
```shell
|
||
|
sudo openvpn --config /etc/openvpn/your_file.ovpn --daemon
|
||
|
```
|
||
|
|
||
|
Mit dem Flag ```--daemon``` wird der Task im Hintergrund ausgeführt.
|
||
|
|
||
|
### Optional: starten des Dienstes nach einem Systemneustart
|
||
|
|
||
|
1. Erstelle eine neue Systemd Service Unit File:
|
||
|
```shell
|
||
|
sudo nano /etc/systemd/system/openvpn@your_file.service
|
||
|
```
|
||
|
Ersetze ```your_file``` mit dem Namen der Datei.
|
||
|
|
||
|
2. Erstelle die Unit File
|
||
|
```text
|
||
|
[Unit]
|
||
|
Description=OpenVPN connection to the Server
|
||
|
After=network.target
|
||
|
|
||
|
[Service]
|
||
|
User=<YourUsername>
|
||
|
ExecStart=/usr/sbin/openvpn --config /etc/openvpn/your_file.ovpn --daemon
|
||
|
ExecStop=/usr/sbin/openvpn --config /etc/openvpn/your_file.ovpn --daemon --stop
|
||
|
RemainAfterExit=yes
|
||
|
|
||
|
[Install]
|
||
|
WantedBy=multi-user.target
|
||
|
```
|
||
|
Gute Erklärung zu einem Autostart: [thedigitalpictureframe](https://www.thedigitalpictureframe.com/ultimate-guide-systemd-autostart-scripts-raspberry-pi/)
|
||
|
|
||
|
Anschließend lesen wir die Datei neu ein und starten den Prozess:
|
||
|
```shell
|
||
|
sudo systemctl daemon-reload
|
||
|
sudo systemctl enable openvpn@your_file
|
||
|
```
|
||
|
Nun noch ```sudo reboot now``` und der Service sollte aktiv sein nach dem Neustart.
|
||
|
|