OpenVPN mit LEDE/OpenWRT oder „Bubbles“: Unterschied zwischen den Versionen
Erich (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „ENTWURF - FEEDBACK WILLKOMMEN Diese Anleitung unterscheidet sich nicht besonders von dem, was wir für Debian oder für den EdgeRouter brauchen. Voraussetzung…“) |
|||
(6 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
Diese Anleitung unterscheidet sich nicht besonders von dem, was wir für Debian oder für den EdgeRouter brauchen. | Diese Anleitung unterscheidet sich nicht besonders von dem, was wir für Debian oder für den EdgeRouter brauchen. | ||
Voraussetzung ist ein OpenWRT-Build mit bridge-utils, iproute2 und openvpn. | Voraussetzung ist ein OpenWRT-Build mit bridge-utils, iproute2 und openvpn. | ||
Wir legen auf OpenWRT eine Bridge ohne | Wir legen auf OpenWRT eine Bridge ohne Brigeports an, konfigurieren OpenVPN und legen ein ifup-down-Skript für den Tunnel an. OLSR läuft auf der Bridge. | ||
Paketvorschlag: | Paketvorschlag: | ||
luci-app-openvpn luci-i18n-openvpn-de openvpn-mbedtls ip-full | luci-app-openvpn luci-i18n-openvpn-de openvpn-mbedtls ip-full | ||
== Bridge anlegen über die Konsole == | |||
[Da klappt etwas noch nicht; OpenWRT startet offenbar eine Bridge ohne Bridgeports in 18.06.2 nicht] | |||
uci set network.ff=interface | |||
uci set network.ff.ifname='ff' | |||
uci set network.ff.type='bridge' | |||
uci set network.ff.proto='static' | |||
uci set network.ff.ipaddr='[FUNKFEUER-IP-ADRESSE-AUS-REDEEMER]' | |||
uci set network.ff.netmask='255.255.255.255' | |||
uci set network.ff.empty_bridge='1' | |||
uci commit | |||
[Ergänzen ... OLSR mittels UCI konfigurieren ...] | == [Ergänzen ... OLSR mittels UCI konfigurieren ...] == | ||
/etc/config/openvpn: | == Auf die OpenVPN-Konfigurationsdatei verweisen == | ||
config openvpn 'Funkfeuer' | Die Datei /etc/config/openvpn soll beinhalten: | ||
config openvpn 'Funkfeuer' | |||
option enabled '1' | |||
option config '/etc/openvpn/funkfeuer.conf' | |||
Über UCI legt man das an wie folgt: | |||
uci set openvpn.Funkfeuer=openvpn | |||
uci set openvpn.Funkfeuer.enabled='1' | |||
uci set openvpn.Funkfeuer.config='/etc/openvpn/funkfeuer.conf' | |||
uci commit | |||
== Die OpenVPN-Konfigurationsdatei == | |||
/etc/openvpn/funkfeuer.conf: | /etc/openvpn/funkfeuer.conf: | ||
dev tap-ff | |||
dev tap-ff | dev-type tap | ||
dev-type tap | proto udp | ||
proto udp | remote 78.41.115.16 | ||
remote 78.41.115.16 | port [5XXX] | ||
port [5XXX] | up-delay | ||
up-delay | down-pre | ||
down-pre | up-restart | ||
up-restart | # comp-lzo #lassen wir aus Kompatibilitätsgrunden aus | ||
# comp-lzo #lassen wir aus Kompatibilitätsgrunden aus | script-security 2 | ||
script-security 2 | nobind | ||
nobind | ping 10 | ||
ping 10 | ping-restart 60 | ||
ping-restart 60 | ping-timer-rem | ||
ping-timer-rem | fast-io | ||
fast-io | sndbuf 524288 | ||
sndbuf 524288 | rcvbuf 524288 | ||
rcvbuf 524288 | txqueuelen 1000 | ||
mute 2 | mute 2 | ||
verb 0 | verb 0 | ||
secret /etc/openvpn/funkfeuer.secret | secret /etc/openvpn/funkfeuer.secret | ||
auth none | auth none | ||
cipher none | cipher none | ||
up "/etc/openvpn/scripts/funkfeuer-ifupdown.sh" | up "/etc/openvpn/scripts/funkfeuer-ifupdown.sh" | ||
down "/etc/openvpn/scripts/funkfeuer-ifupdown.sh" | down "/etc/openvpn/scripts/funkfeuer-ifupdown.sh" | ||
== Das Secret == | |||
Die Datei /etc/openvpn/funkfeuer.secret enthält den Key, den Du vom Tunneladmin erhalten hast - Beispielsweise: | |||
# | |||
# 2048 bit OpenVPN static key | |||
# | |||
-----BEGIN OpenVPN Static key V1----- | |||
61eaa6a0731c1114b92d98f4c71bc547 | |||
a79050f1f888bb87c84355adbe916a8a | |||
b1e0cdd74f516b654c9542e46ea3216c | |||
f65bdb1fdad755022d73a1b35821f46e | |||
c9da48afb8feb3564f3d2de97a690fa9 | |||
90ca9b2ddcedc842ee88a1f085c9b3e7 | |||
518c8c9ae9a43ce64dc6c55789115652 | |||
964af121b3097dddaf0f12a72981a25f | |||
4790575a0254f93e13ca4176433a0e8f | |||
2d526b12280766b32ef37737199c2d6e | |||
e1b006e9432a26a131cef64833421461 | |||
ca6ae34349b3088c3a00e3ad6b024e6b | |||
fba26277c3818a99fa32f6be4480b075 | |||
525f81b302b527c2e95fff90a4268fe6 | |||
f067a05b484f4ea77e57afcf53c2c0b1 | |||
79be9d144c9ac7aa874d3d248f6e5b35 | |||
-----END OpenVPN Static key V1----- | |||
/etc/openvpn/ | == Das ifupdown-Skript == | ||
=== Das Skript-Verzeichnis anlegen === | |||
mkdir -p /etc/openvpn/scripts | |||
=== /etc/openvpn/scripts/funkfeuer-ifupdown.sh === | |||
#!/bin/sh | |||
logger "$dev $script_type" | |||
br=br-ff | |||
case "$script_type" in | |||
up) | |||
/sbin/brctl addif $br $dev | |||
/sbin/ip link set $br promisc on | |||
/sbin/ip link set $dev up | |||
;; | |||
down) | |||
/sbin/ip link set $dev down | |||
/sbin/ip link set $br promisc off | |||
/sbin/brctl delif $br $dev | |||
;; | |||
*) | |||
esac | |||
exit 0 | |||
=== Das Skript ausführbar machen === | |||
chmod +x /etc/openvpn/scripts/funkfeuer-ifupdown.sh | |||
Aktuelle Version vom 17. Juni 2019, 12:20 Uhr
ENTWURF - FEEDBACK WILLKOMMEN
Diese Anleitung unterscheidet sich nicht besonders von dem, was wir für Debian oder für den EdgeRouter brauchen. Voraussetzung ist ein OpenWRT-Build mit bridge-utils, iproute2 und openvpn. Wir legen auf OpenWRT eine Bridge ohne Brigeports an, konfigurieren OpenVPN und legen ein ifup-down-Skript für den Tunnel an. OLSR läuft auf der Bridge.
Paketvorschlag: luci-app-openvpn luci-i18n-openvpn-de openvpn-mbedtls ip-full
Bridge anlegen über die Konsole
[Da klappt etwas noch nicht; OpenWRT startet offenbar eine Bridge ohne Bridgeports in 18.06.2 nicht]
uci set network.ff=interface uci set network.ff.ifname='ff' uci set network.ff.type='bridge' uci set network.ff.proto='static' uci set network.ff.ipaddr='[FUNKFEUER-IP-ADRESSE-AUS-REDEEMER]' uci set network.ff.netmask='255.255.255.255' uci set network.ff.empty_bridge='1' uci commit
[Ergänzen ... OLSR mittels UCI konfigurieren ...]
Auf die OpenVPN-Konfigurationsdatei verweisen
Die Datei /etc/config/openvpn soll beinhalten:
config openvpn 'Funkfeuer' option enabled '1' option config '/etc/openvpn/funkfeuer.conf'
Über UCI legt man das an wie folgt:
uci set openvpn.Funkfeuer=openvpn uci set openvpn.Funkfeuer.enabled='1' uci set openvpn.Funkfeuer.config='/etc/openvpn/funkfeuer.conf' uci commit
Die OpenVPN-Konfigurationsdatei
/etc/openvpn/funkfeuer.conf:
dev tap-ff dev-type tap proto udp remote 78.41.115.16 port [5XXX] up-delay down-pre up-restart # comp-lzo #lassen wir aus Kompatibilitätsgrunden aus script-security 2 nobind ping 10 ping-restart 60 ping-timer-rem fast-io sndbuf 524288 rcvbuf 524288 txqueuelen 1000 mute 2 verb 0 secret /etc/openvpn/funkfeuer.secret auth none cipher none up "/etc/openvpn/scripts/funkfeuer-ifupdown.sh" down "/etc/openvpn/scripts/funkfeuer-ifupdown.sh"
Das Secret
Die Datei /etc/openvpn/funkfeuer.secret enthält den Key, den Du vom Tunneladmin erhalten hast - Beispielsweise:
# # 2048 bit OpenVPN static key # -----BEGIN OpenVPN Static key V1----- 61eaa6a0731c1114b92d98f4c71bc547 a79050f1f888bb87c84355adbe916a8a b1e0cdd74f516b654c9542e46ea3216c f65bdb1fdad755022d73a1b35821f46e c9da48afb8feb3564f3d2de97a690fa9 90ca9b2ddcedc842ee88a1f085c9b3e7 518c8c9ae9a43ce64dc6c55789115652 964af121b3097dddaf0f12a72981a25f 4790575a0254f93e13ca4176433a0e8f 2d526b12280766b32ef37737199c2d6e e1b006e9432a26a131cef64833421461 ca6ae34349b3088c3a00e3ad6b024e6b fba26277c3818a99fa32f6be4480b075 525f81b302b527c2e95fff90a4268fe6 f067a05b484f4ea77e57afcf53c2c0b1 79be9d144c9ac7aa874d3d248f6e5b35 -----END OpenVPN Static key V1-----
Das ifupdown-Skript
Das Skript-Verzeichnis anlegen
mkdir -p /etc/openvpn/scripts
/etc/openvpn/scripts/funkfeuer-ifupdown.sh
#!/bin/sh logger "$dev $script_type" br=br-ff case "$script_type" in up) /sbin/brctl addif $br $dev /sbin/ip link set $br promisc on /sbin/ip link set $dev up ;; down) /sbin/ip link set $dev down /sbin/ip link set $br promisc off /sbin/brctl delif $br $dev
;; *) esac exit 0
Das Skript ausführbar machen
chmod +x /etc/openvpn/scripts/funkfeuer-ifupdown.sh