Ä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
Von Version 22.1
bearbeitet von Jonas Mayer
am 2022/05/23 10:48
am 2022/05/23 10:48
Änderungskommentar:
Renamed from xwiki:Main.LD Server.Allgemein.Samba4 Verzeichnisdienst direkt im Internet freigeben (ohne Stream via rev-proxy).WebHome
Auf Version 14.1
bearbeitet von jonasmayer@sbede
am 2022/05/19 19:22
am 2022/05/19 19:22
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 0 hinzugefügt, 1 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 - xwiki:XWiki.jonasmayer@sbede1 +XWiki.jonasmayer@sbede - Inhalt
-
... ... @@ -1,15 +1,12 @@ 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 -))) 1 +(% style="color:#e74c3c; font-size:18px" %)**__Wichtig__**(%%) 2 +(% style="color:#e74c3c; font-size:16px" %)**Diese Art der Verzeichnisdienst-Freigabe wird von SBE nicht empfohlen, da hier die Freischaltung ohne zertifikatsgesicherte Transportverschlüsselung erfolgt. 3 +Wir empfehlen Ihnen stattdessen, dieser **(% style="font-size:16px" %)**[[(% style="font-size: 16px; color: rgb(41, 128, 185); font-size: 16px" %)Anleitung>>doc:Main.LD Server.Puppet-Version.1\.3\.22\.14.Geändert\: LDAP Admin-Benutzer und ReadOnly-Benutzer im logosrv.WebHome||target="_blank"]](%%)**(% style="color:#e74c3c; font-size:16px" %)**[[ >>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!** 7 7 8 8 9 9 ---- 10 10 11 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.9 +(% style="color:#000000" %)Wenn Sie den Verzeichnisdienst des Samba4-Containers direkt (und nicht über einen Tunnel via rev-proxy / nginx) im Internet freigeben wollen, folgen Sie bitte dieser Anleitung. 13 13 14 14 {{toc start="4" numbered="true"/}} 15 15 ... ... @@ -18,11 +18,10 @@ 18 18 19 19 20 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 schondurch den OpenLDAP-Dienstbelegtist,wird mitnachfolgendem Shorewall-Eintrag der Portserverinternzunächstauf einen anderen Port umgemappt.18 +Da der Port 636 intern schon vergeben ist wird mit diesem Eintrag der Port intern auf einen anderen Port umgemappt. 22 22 23 23 (% class="box" %) 24 24 ((( 25 -(% style="color:#16a085" %)### TCP-Port 636 vom Internet-Router entgegennehmen und auf benutzerdefiniertem Port 1636 zum LXC-Container logosrv weiterleiten##(%%) 26 26 (% style="color:#000000" %)##DNAT ext dmz:172.28.29.2:1636 tcp 636## 27 27 ))) 28 28 ... ... @@ -38,6 +38,7 @@ 38 38 39 39 40 40 (% style="color:#000000" %)Erstellen Sie die Datei {{box}}/usr/sbin/ldfirewall.custom{{/box}} mit einem Editor Ihrer Wahl. 37 +Sollte die Datei schon mit anderweitigen Regeln existieren, bearbeiten Sie stattdessen den Inhalt in geeigneter Form. 41 41 42 42 (% class="box" %) 43 43 ((( ... ... @@ -45,14 +45,9 @@ 45 45 ))) 46 46 47 47 48 -(% style="color:#000000" %)Kopieren Sie nun folgenden Text in die Datei. 45 +(% style="color:#000000" %)Kopieren Sie nun folgenden Text in die Datei. Wichtig sollte sich schon Inhalt in der Datei befinden fügen sie folgenden Text hinzu. 46 +Wie Sie dem Abschnitt unter// ipaddr// sehen können wird, hier der Port auf 636 zurückgemappt: 49 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 56 (% class="box" %) 57 57 ((( 58 58 (% style="color:#000000" %)###!/bin/bash ... ... @@ -66,54 +66,52 @@ 66 66 } 67 67 run() 68 68 { 69 - 70 - 71 - 72 - 73 - 74 - 61 + if [ "$VERBOSE" = "yes" ]; then 62 + echo "$@" 63 + fi 64 + if [ "$DRYRUN" = "no" ]; then 65 + "$@" 66 + fi 75 75 } 76 76 \\case "$1" in 77 - start|restart) ##(%%)78 - (%style="color:#16a085"%)##(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.282 - *Webuntis Server in Österreich IP: 213.208.138.146##(%%)83 -(% style="color:#e74c3c" %)## 129.143.69.1129.143.232.18129.143.255.2213.208.138.146"84 - 85 - 86 -\\(% style="color:# e67e22" %)##87 - 88 - echo -n "Adding custom rules to allow ldaps connections (tcp/1636) from host '${ipaddr}' and redirect to 'samba4-ad:636'... " 89 - 90 - 91 - 92 - ##(%%)93 - (%style="color:#000000"%)##69 + start|restart) 70 + # Zugelassene externe IP-Adressen 71 + # (falls mehrere IP-Adressen nötig, diese per Leerzeichen trennen) 72 + # ~-~-~-~-~-~-- 73 + # - BelWue-Moodle-Server IPs: 129.143.69.1 129.143.232.18 129.143.255.2 74 + # - Webuntis Server in Österreich IP: 213.208.138.146 75 + ##(% style="color:#e74c3c" %)## SOURCEIP="213.23.76.144 213.23.76.123 195.34.83.83 87.130.28.26" 76 + IP_LOGOSRV_DMZ=172.28.29.2 77 + IP_SAMBA4_SERVERNET=172.28.28.30##(%%) 78 +\\(% style="color:#000000" %)## for ipaddr in $SOURCEIP 79 + do 80 + echo -n "Adding custom rules to allow ldaps connections (tcp/1636) from host '${ipaddr}' and redirect to 'samba4-ad:636'... " 81 + $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 82 + $ipt -t mangle -I mark_from_internet_check_ports -p tcp -s ${ipaddr} -d ${IP_LOGOSRV_DMZ} ~-~-dport 1636 -g mark_from_internet_allowed 83 + echo "OK" 84 + done 85 + ;; 94 94 stop) 95 95 ;; 96 96 *) 97 - 98 - 89 + echo "Benutzung: $0 {start|restart}" 90 + exit 1 99 99 ;; 100 100 esac## 101 101 ))) 102 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 Ziel-Container samba4-ad weitergeleitet wird. An diesen Port ist der Samba4 Verzeichnisdienst gebunden. 104 104 96 +(% style="color:#000000" %)Hier müssen nun folgende Werte angepasst werden: 105 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 108 (% class="box" %) 109 109 ((( 110 -(% style="color:# e74c3c" %)##SOURCEIP="213.208.138.146"##(% style="color:#16a085" %)##eextern gehostete Moodle-Instanz##(%%)111 -(% style="color:# e74c3c" %)##IP_LOGOSRV_DMZ=172.28.29.2##(% style="color:#16a085" %)##aufrufen,dortdieIP-Adresse der Schnittstelle "dmz" anschauenund hier in der Variable eintragen##(%%)112 -(% style="color:# e74c3c" %)##IP_SAMBA4_SERVERNET=172.28.28.30##(% style="color:#16a085" %)##samba4-ad Containeraufrufen,dortdieIP-Adresse der Schnittstelle "servernet" anschauenund hier in der Variable eintragen##100 +(% style="color:#000000" %)##SOURCEIP="87.130.28.26" ##(% style="color:#e74c3c" %)### <- Öffentliche IP(s), von denen aus Verbindungen erlaubt werden. In der Regel handelt es sich um IPv4-Adressen von Webservern, z.B. ein extern gehostete Moodle-Instanz##(%%) 101 +(% style="color:#000000" %)##IP_LOGOSRV_DMZ=172.28.29.2 ##(% style="color:#e74c3c" %)### <- ifconfig im logosrv und IP-Adresse der Schnittstelle "dmz" anschauen##(%%) 102 +(% style="color:#000000" %)##IP_SAMBA4_SERVERNET=172.28.28.30 ##(% style="color:#e74c3c" %)## # <- ifconfig im Samba4-ad Container und IP-Adresse der Schnittstelle "servernet" anschauen## 113 113 ))) 114 114 115 115 116 -(% style="color:#000000" %)Danach müssen Sie das Skript nochausführbar machen, damit sie im Zuge eines Firewall-Restarts automatisch verarbeitet wird:106 +(% style="color:#000000" %)Danach müssen Sie das Skript ausführbar machen, damit sie im Zuge eines Firewall-Restarts automatisch verarbeitet wird: 117 117 118 118 (% class="box" %) 119 119 ((( ... ... @@ -121,33 +121,46 @@ 121 121 ))) 122 122 123 123 124 -(% style="color:#000000" %)Führen Sie nun das Skript einmal im Vordergrundaus und stellen Sie sicher, dass keine Fehlermeldungen an der Konsole ausgegeben werden (Syntaxkontrolle):114 +(% style="color:#000000" %)Führen Sie nun das Skript einmal aus und stellen Sie sicher, dass keine Fehlermeldungen an der Konsole ausgegeben werden (Syntaxkontrolle): 125 125 126 126 (% class="box" %) 127 127 ((( 128 -(% style="color:#000000" %)##bash /usr/sbin/ldfirewall.custom restart##118 +(% style="color:#000000" %)##bash /usr/sbin/ldfirewall.custom## 129 129 ))) 130 130 131 131 132 -(% style="color:#000000" %)Im Anschluß daranstarten SiedieFirewallkomplettneu, um dieRegelnzu laden:122 +(% style="color:#000000" %)Im nächsten Schritt öffnen Sie mit einem Editor Ihrer Wahl die //internet.conf// 133 133 134 134 (% class="box" %) 135 135 ((( 136 -(% style="color:#000000" %)##ld firewallrestart##126 +(% style="color:#000000" %)##nano /etc/logodidact/internet.conf## 137 137 ))) 138 138 139 139 140 - ====(% style="color:#000000" %)Schritteam vorgeschaltetenRouterfürden Internetzugriff(%%) ====130 +(% style="color:#000000" %)Hier fügen Sie nun den Port 1636 im Abschnitt //FromInternetAllowTCP// hinzu 141 141 132 +(% class="box" %) 133 +((( 134 +(% style="color:#000000" %)##FromInternetAllowTCP 1636## 135 +))) 142 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 144 145 - [[image:1653294111427-417.png||class="img-thumbnail"]]138 +(% style="color:#000000" %)Im Anschluß daran starten Sie die Firewall neu 146 146 140 +(% class="box" %) 141 +((( 142 +(% style="color:#000000" %)##ldfirewall restart## 143 +))) 147 147 145 + 146 +(% style="color:#000000" %)Damit die Freigabe des Samba4-LDAP funktioniert, ist es außerdem noch wichtig, die Portfreigabe (TCP-Port 636) am vorgeschalteten Router nicht zu vergessen: 147 + 148 +(% style="color:#000000" %)[[image:Port_Router.png]] 149 + 150 + 148 148 (% class="box successmessage" %) 149 149 ((( 150 150 (% style="color:#000000" %)**__Hinweise:__**(%%) 151 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 wieim Artikelhier beschrieben) werden hierin der Abbildungaußerdem noch die Ports 80+443 zur Freischaltung vonLogoDIDACTWebdiensten durch den Router weitergeleitet155 +- (% style="color:#000000" %)Neben dem Port 636 (LDAP-Freigabe als Thema dieses Artikels) werden hier außerdem noch die Ports 80+443 zur Freischaltung von Webdiensten durch den Router weitergeleitet 153 153 )))
- 1653294111427-417.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.jonasmayer@sbede - Größe
-
... ... @@ -1,1 +1,0 @@ 1 -27.9 KB - Inhalt