Ä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 16.1
bearbeitet von jonasmayer@sbede
am 2022/05/23 10:21
am 2022/05/23 10:21
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 3.13
bearbeitet von michaelecer@sbede
am 2022/03/24 20:41
am 2022/03/24 20:41
Änderungskommentar:
Renamed from xwiki:Main.LD Server.Allgemein.OpenLDAP direkt im Internet freigeben (ohne Tunnel via rev-proxy).WebHome
Zusammenfassung
-
Seiteneigenschaften (3 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 0 hinzugefügt, 1 gelöscht)
Details
- Seiteneigenschaften
-
- Titel
-
... ... @@ -1,1 +1,1 @@ 1 - Samba4 Verzeichnisdienstdirekt im Internet freigeben (ohneStreamvia rev-proxy)1 +OpenLDAP direkt im Internet freigeben (ohne Tunnel via rev-proxy) - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. jonasmayer@sbede1 +XWiki.michaelecer@sbede - Inhalt
-
... ... @@ -1,33 +1,11 @@ 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:#2980b9" %)ldhost 7 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 23 (% class="box" %) 24 24 ((( 25 -(% style="color:# 16a085" %)### TCP-Port 636 vom Internet-Routerentgegennehmen und auf benutzerdefiniertem Port 1636 zum LXC-Containerlogosrv weiterleiten##(%%)##26 - (% style="color:#000000" %)DNAT ext dmz:172.28.29.2:1636 tcp 636(%%)##5 +(% style="color:#000000" %)##nano /etc/shorewall/rules 6 +DNAT ext dmz:172.28.29.2:1636 tcp 636## 27 27 ))) 28 28 29 -(% style="color:#000000" %)Im Anschluß daran starten Sie mit folgendem Befehl die Shorewall neu: 30 - 31 31 (% class="box" %) 32 32 ((( 33 33 (% style="color:#000000" %)##shorewall restart## ... ... @@ -34,25 +34,15 @@ 34 34 ))) 35 35 36 36 37 - ====(% style="color:#000000" %)Schritte im Container (% style="color:#2980b9" %)logosrv(%%) ====15 +(% style="color:#2980b9" %)logosrv 38 38 39 - 40 -(% style="color:#000000" %)Erstellen Sie die Datei {{box}}/usr/sbin/ldfirewall.custom{{/box}} mit einem Editor Ihrer Wahl. 41 - 42 42 (% class="box" %) 43 43 ((( 44 44 (% style="color:#000000" %)##nano /usr/sbin/ldfirewall.custom## 45 45 ))) 46 46 22 +(% style="color:#000000" %)folgenden Text pasten und bearbeiten: 47 47 48 -(% style="color:#000000" %)Kopieren Sie nun folgenden Text in die Datei. 49 - 50 -(% class="box infomessage" %) 51 -((( 52 -(% style="font-size: 12px; color: rgb(0, 0, 0)" %)**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 ... ... @@ -74,23 +74,23 @@ 74 74 fi 75 75 } 76 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) 45 + start|restart) 46 + # Zugelassene externe IP-Adressen 47 + # (falls mehrere IP-Adressen nötig, diese per Leerzeichen trennen) 79 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" 49 + # - BelWue-Moodle-Server IPs: 129.143.69.1 129.143.232.18 129.143.255.2 50 + # - Webuntis Server in Österreich IP: 213.208.138.146 51 + SOURCEIP="213.23.76.144 213.23.76.123 195.34.83.83 87.130.28.26" 84 84 IP_LOGOSRV_DMZ=172.28.29.2 85 - IP_SAMBA4_SERVERNET=172.28.28.30 (%%)##86 -\\ (%style="color:#e67e22"%)##53 + IP_SAMBA4_SERVERNET=172.28.28.30 54 +\\ for ipaddr in $SOURCEIP 87 87 do 88 88 echo -n "Adding custom rules to allow ldaps connections (tcp/1636) from host '${ipaddr}' and redirect to 'samba4-ad:636'... " 89 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 58 + $ipt -t mangle -I mark_from_internet_check_ports -p tcp -s ${ipaddr} -d ${IP_LOGOSRV_DMZ} ~-~-dport 1636 -g mark_from_internet_allowed 91 91 echo "OK" 92 - done ##(%%)##93 - (%style="color:#000000"%)60 + done 61 + ;; 94 94 stop) 95 95 ;; 96 96 *) ... ... @@ -97,70 +97,39 @@ 97 97 echo "Benutzung: $0 {start|restart}" 98 98 exit 1 99 99 ;; 100 -esac (%%)##68 +esac## 101 101 ))) 102 102 103 -(% style=" font-size: 12px;color:rgb(0,0,0)" %)**Info:** Durch dieletzte iptables-Regel wird der temporär verwendete,benutzerdefinierte TCP-Port 1636serverinternwieder auf Port 636 zurückgemappt, bevor die Verbindung zum LXC-Containersamba4-ad weitergeleitetwird. An diesen Port istder Samba4 Verzeichnisdienst gebunden.71 +(% style="color:#000000" %)folgendes muss hier angepasst werden: 104 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 108 (% class="box" %) 109 109 ((( 110 -(% style="color:# e74c3c" %)##SOURCEIP="87.130.28.26"##(%style="color:#16a085"%)###<-ÖffentlicheIP(s),vondenenausVerbindungenrlaubtwerden.In der Regelhandeltssich um IPv4-Adressenvon Webservern, z.B. eine externgehostete Moodle-Instanz##(%%)111 - (% style="color:#e74c3c" %)##IP_LOGOSRV_DMZ=172.28.29.2##(%style="color:#16a085"%)###<- ifconfig imlogosrvaufrufen,dortdie IP-Adresse der Schnittstelle"dmz" anschauenund hier in der Variable eintragen##(%%)112 - (% style="color:#e74c3c" %)##IP_SAMBA4_SERVERNET=172.28.28.30##(% style="color:#16a085" %)###m samba4-ad Containeraufrufen,dortdie IP-Adresse der Schnittstelle"servernet" anschauenund hier in der Variable eintragen##75 +(% style="color:#000000" %)##SOURCEIP=" 87.130.28.26" <- SBE IP, da wird eine zusätzliche gewhitelistet, die öffentliche ip der moodle Instanz 76 +IP_LOGOSRV_DMZ=172.28.29.2 <- (ifconfig in logosrv und Eintrag "DMZ" anschauen 77 +IP_SAMBA4_SERVERNET=172.28.28.30 <- ifconfig in Sambacontainer und Eintrag "servernet" anschauen## 113 113 ))) 114 114 80 +(% style="color:#000000" %)Das Skript muss für den Cronjob ausführbar gemacht werden und einmalig ausgeführt werden 115 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 118 (% class="box" %) 119 119 ((( 120 -(% style="color:#000000" %)##chmod +x /usr/sbin/ldfirewall.custom## 84 +(% style="color:#000000" %)##chmod +x ldfirewall.custom 85 +bash ldfirewall.custom## 121 121 ))) 122 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 126 (% class="box" %) 127 127 ((( 128 -(% style="color:#000000" %)##bash /usr/sbin/ldfirewall.custom restart## 129 -))) 130 - 131 - 132 -(% style="color:#000000" %)Im nächsten Schritt öffnen Sie mit einem Editor Ihrer Wahl die //internet.conf// 133 - 134 -(% class="box" %) 135 -((( 136 136 (% style="color:#000000" %)##nano /etc/logodidact/internet.conf## 137 137 ))) 138 138 93 +(% style="color:#000000" %)FromInternetAllowTCP 636 als Port freigeben in der Internet.conf 139 139 140 -(% style="color:#000000" %)Hier fügen Sie nun den Port 1636 im Abschnitt //FromInternetAllowTCP// hinzu 141 - 142 142 (% class="box" %) 143 143 ((( 144 -(% style="color:#000000" %)##FromInternetAllowTCP 1636## 145 -))) 146 - 147 - 148 -(% style="color:#000000" %)Im Anschluß daran starten Sie die Firewall neu 149 - 150 -(% class="box" %) 151 -((( 152 152 (% style="color:#000000" %)##ldfirewall restart## 153 153 ))) 154 154 100 +(% style="color:#000000" %)Portfreischalten auf dem Router nicht vergessen! 155 155 156 -(% style="color:#000000" %) Damit die Freigabe des Samba4-LDAP funktioniert, ist es außerdem noch wichtig, diePortfreigabe (TCP-Port636) am vorgeschaltetenRouter nicht zu vergessen:102 +(% style="color:#000000" %)[[image:1597240262579-305.png]] 157 157 158 -(% style="color:#000000" %)[[image:Port_Router.png]] 159 - 160 - 161 -(% class="box successmessage" %) 162 -((( 163 -(% style="color:#000000" %)**__Hinweise:__**(%%) 164 -(% 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(%%) 165 -- (% 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 166 -)))
- Port_Router.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.aku@sbede - Größe
-
... ... @@ -1,1 +1,0 @@ 1 -21.5 KB - Inhalt