Änderungen von Dokument Samba4 Verzeichnisdienst direkt im Internet freigeben (ohne Stream via rev-proxy)
Zuletzt geändert von Jonas Mayer am 2022/05/23 10:48
Zusammenfassung
-
Seiteneigenschaften (4 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 0 hinzugefügt, 2 gelöscht)
Details
- Seiteneigenschaften
-
- Titel
-
... ... @@ -1,1 +1,0 @@ 1 -Samba4 Verzeichnisdienst direkt im Internet freigeben (ohne Stream via rev-proxy) - Übergeordnete Seite
-
... ... @@ -1,1 +1,0 @@ 1 -Main.LD Server.Allgemein.WebHome - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. jonasmayer@sbede1 +XWiki.michaelecer@sbede - Inhalt
-
... ... @@ -1,153 +1,0 @@ 1 -(% class="box warningmessage" %) 2 -((( 3 -(% style="font-size:16px" %)__**Wichtig**__(%%) 4 -Diese Art der Verzeichnisdienst-Freigabe wird von SBE nicht empfohlen, da hier die Freischaltung ohne zertifikatsgesicherte Transportverschlüsselung erfolgt. 5 -Wir empfehlen Ihnen stattdessen, dieser [[Anleitung >>doc:Main.LD Server.Puppet-Version.1\.3\.22\.14.Geändert\: LDAP Admin-Benutzer und ReadOnly-Benutzer im logosrv.WebHome||target="_blank"]]zu folgen, um den LDAP-Dienst auf sichere Art mit Lets' Encrypt SSL-Zertifikaten freizugeben! 6 -))) 7 - 8 - 9 ----- 10 - 11 - 12 -(% style="color:#000000" %)Wenn Sie den Verzeichnisdienst des Samba4-Containers direkt (d.h. nicht über einen Tunnel via (% style="color:#2980b9" %)**rev-proxy**(% style="color:#000000" %) / (% style="color:#27ae60" %)**nginx**(% style="color:#000000" %)) im Internet freigeben wollen, folgen Sie bitte dieser Anleitung. 13 - 14 -{{toc start="4" numbered="true"/}} 15 - 16 - 17 -==== (% style="color:#000000" %)Schritte im Container (% style="color:#2980b9" %)ldhost(%%) ==== 18 - 19 - 20 -(% style="color:#000000" %)Öffnen Sie die die Datei {{box}}/etc/nano/shorewall/rules{{/box}} mit einem Editor Ihrer Wahl und fügen Sie am Anfang folgende Zeile hinzu. 21 -Da der LDAPS Port 636 schon durch den OpenLDAP-Dienst belegt ist, wird mit nachfolgendem Shorewall-Eintrag der Port serverintern zunächst auf einen anderen Port umgemappt. 22 - 23 -(% class="box" %) 24 -((( 25 -(% style="color:#16a085" %)### TCP-Port 636 vom Internet-Router entgegennehmen und auf benutzerdefiniertem Port 1636 zum LXC-Container logosrv weiterleiten##(%%) 26 -(% style="color:#000000" %)##DNAT ext dmz:172.28.29.2:1636 tcp 636## 27 -))) 28 - 29 -(% style="color:#000000" %)Im Anschluß daran starten Sie mit folgendem Befehl die Shorewall neu: 30 - 31 -(% class="box" %) 32 -((( 33 -(% style="color:#000000" %)##shorewall restart## 34 -))) 35 - 36 - 37 -==== (% style="color:#000000" %)Schritte im Container (% style="color:#2980b9" %)logosrv(%%) ==== 38 - 39 - 40 -(% style="color:#000000" %)Erstellen Sie die Datei {{box}}/usr/sbin/ldfirewall.custom{{/box}} mit einem Editor Ihrer Wahl. 41 - 42 -(% class="box" %) 43 -((( 44 -(% style="color:#000000" %)##nano /usr/sbin/ldfirewall.custom## 45 -))) 46 - 47 - 48 -(% style="color:#000000" %)Kopieren Sie nun folgenden Text in die Datei. 49 - 50 -(% class="box infomessage" %) 51 -((( 52 -(% style="color:#000000; font-size:12px" %)**Hinweis:** Sollte die Datei schon mit anderweitigen Regeln existieren, bearbeiten Sie stattdessen den Inhalt in geeigneter Form und fügen Sie die relevanten Regeln darin ein. Es handelt sich um die rot & orange markierten Zeilen. 53 -))) 54 - 55 - 56 -(% class="box" %) 57 -((( 58 -(% style="color:#000000" %)###!/bin/bash 59 -\\DRYRUN=no 60 -VERBOSE=no 61 -ipt=do_iptables 62 -PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/bin:/usr/local/bin/support" 63 -\\do_iptables() 64 -{ 65 - run iptables "$@" 66 -} 67 -run() 68 -{ 69 - if [ "$VERBOSE" = "yes" ]; then 70 - echo "$@" 71 - fi 72 - if [ "$DRYRUN" = "no" ]; then 73 - "$@" 74 - fi 75 -} 76 -\\case "$1" in 77 - start|restart)##(%%) 78 -(% style="color:#16a085" %)## # Zugelassene externe IP-Adressen (falls mehrere IP-Adressen nötig, diese per Leerzeichen trennen) 79 - # ~-~-~-~-~-~-- 80 - # Beispiele: 81 - # * BelWue-Moodle-Server IPs: 129.143.69.1 129.143.232.18 129.143.255.2 82 - # * Webuntis Server in Österreich IP: 213.208.138.146##(%%) 83 -(% style="color:#e74c3c" %)## SOURCEIP="129.143.69.1 129.143.232.18 129.143.255.2 213.208.138.146" 84 - IP_LOGOSRV_DMZ=172.28.29.2 85 - IP_SAMBA4_SERVERNET=172.28.28.30##(%%) 86 -\\(% style="color:#e67e22" %)## for ipaddr in $SOURCEIP 87 - do 88 - echo -n "Adding custom rules to allow ldaps connections (tcp/1636) from host '${ipaddr}' and redirect to 'samba4-ad:636'... " 89 - $ipt -t nat -I PREROUTING -i dmz -p tcp -s ${ipaddr} -d ${IP_LOGOSRV_DMZ} ~-~-dport 1636 -j DNAT ~-~-to-destination ${IP_SAMBA4_SERVERNET}:636 90 - $ipt -t mangle -I mf_internet_cp -p tcp -s ${ipaddr} -d ${IP_LOGOSRV_DMZ} ~-~-dport 1636 -g mark_from_internet_allowed 91 - echo "OK" 92 - done##(%%) 93 -(% style="color:#000000" %)## ;; 94 - stop) 95 - ;; 96 - *) 97 - echo "Benutzung: $0 {start|restart}" 98 - exit 1 99 - ;; 100 -esac## 101 -))) 102 - 103 -(% style="color:#000000; font-size:12px" %)**Info:** Durch die letzte iptables-Regel wird der temporär verwendete, benutzerdefinierte TCP-Port 1636 serverintern wieder auf Port 636 zurückgemappt, bevor die Verbindung zum LXC-Container samba4-ad weitergeleitet wird. An diesen Port ist der Samba4 Verzeichnisdienst gebunden. 104 - 105 - 106 -(% style="color:#000000" %)In der Datei {{box}}/usr/sbin/ldfirewall.custom{{/box}} müssen nun folgende Werte an die eigene Umgebung angepasst werden: 107 - 108 -(% class="box" %) 109 -((( 110 -(% style="color:#e74c3c" %)##SOURCEIP="87.130.28.26"##(% style="color:#16a085" %)## # <- Öffentliche IP(s), von denen aus Verbindungen erlaubt werden. In der Regel handelt es sich um IPv4-Adressen von Webservern, z.B. eine extern gehostete Moodle-Instanz##(%%) 111 -(% style="color:#e74c3c" %)##IP_LOGOSRV_DMZ=172.28.29.2##(% style="color:#16a085" %)## # <- ifconfig im logosrv aufrufen, dort die IP-Adresse der Schnittstelle "dmz" anschauen und hier in der Variable eintragen##(%%) 112 -(% style="color:#e74c3c" %)##IP_SAMBA4_SERVERNET=172.28.28.30##(% style="color:#16a085" %)## # <- ifconfig im samba4-ad Container aufrufen, dort die IP-Adresse der Schnittstelle "servernet" anschauen und hier in der Variable eintragen## 113 -))) 114 - 115 - 116 -(% style="color:#000000" %)Danach müssen Sie das Skript noch ausführbar machen, damit sie im Zuge eines Firewall-Restarts automatisch verarbeitet wird: 117 - 118 -(% class="box" %) 119 -((( 120 -(% style="color:#000000" %)##chmod +x /usr/sbin/ldfirewall.custom## 121 -))) 122 - 123 - 124 -(% style="color:#000000" %)Führen Sie nun das Skript einmal im Vordergrund aus und stellen Sie sicher, dass keine Fehlermeldungen an der Konsole ausgegeben werden (Syntaxkontrolle): 125 - 126 -(% class="box" %) 127 -((( 128 -(% style="color:#000000" %)##bash /usr/sbin/ldfirewall.custom restart## 129 -))) 130 - 131 - 132 -(% style="color:#000000" %)Im Anschluß daran starten Sie die Firewall komplett neu, um die Regeln zu laden: 133 - 134 -(% class="box" %) 135 -((( 136 -(% style="color:#000000" %)##ldfirewall restart## 137 -))) 138 - 139 - 140 -==== (% style="color:#000000" %)Schritte am vorgeschalteten Router für den Internetzugriff(%%) ==== 141 - 142 - 143 -(% style="color:#000000" %)Damit die Freigabe des Samba4-LDAP im Internet funktioniert, ist es außerdem noch wichtig, die Portfreigabe (TCP-Port 636) am vorgeschalteten Router zum LogoDIDACT Server hinzuzufügen: 144 - 145 -[[image:1653294111427-417.png||class="img-thumbnail"]] 146 - 147 - 148 -(% class="box successmessage" %) 149 -((( 150 -(% style="color:#000000" %)**__Hinweise:__**(%%) 151 -(% style="color:#000000" %)- Bei der IP-Adresse 192.168.1.254 in der Abbildung handelt es sich um die Schnittstelle p_extern des LogoDIDACT Servers(%%) 152 -- (% style="color:#000000" %)Neben dem Port 636 (LDAP-Freigabe wie im Artikel hier beschrieben) werden hier in der Abbildung außerdem noch die Ports 80+443 zur Freischaltung von LogoDIDACT Webdiensten durch den Router weitergeleitet 153 -)))
- 1653294111427-417.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.jonasmayer@sbede - Größe
-
... ... @@ -1,1 +1,0 @@ 1 -27.9 KB - Inhalt
- Port_Router.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.aku@sbede - Größe
-
... ... @@ -1,1 +1,0 @@ 1 -21.5 KB - Inhalt