OpenVPN mit LEDE/OpenWRT oder „Bubbles“: Unterschied zwischen den Versionen

Aus FunkFeuer Wiki
Zur Navigation springen Zur Suche springen
(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 Interfaces an, konfigurieren OpenVPN und legen ein ifup-down-Skript für den Tunnel an. OLSR läuft auf der Bridge.
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:
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 commit


== 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:
option enabled '1'
config openvpn 'Funkfeuer'
option config '/etc/openvpn/funkfeuer.conf'
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:
<nowiki>
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"
</nowiki>
 
== 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/funkfeuer.secret:
== 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


/etc/openvpn/scripts/funkfeuer-ifupdown.sh:
        ;;
#!/bin/sh
        *)
logger "$dev $script_type"
esac
br=br-ff
exit 0
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


      ;;
=== Das Skript ausführbar machen ===
      *)
chmod +x /etc/openvpn/scripts/funkfeuer-ifupdown.sh
esac
exit 0

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