Zuletzt geändert von Jonas Mayer am 2022/05/23 10:48

Von Version 1.1
bearbeitet von michaelecer@sbede
am 2021/08/28 16:16
Änderungskommentar: Neuen Anhang 1597240262579-305.png hochladen
Auf Version 13.1
bearbeitet von jonasmayer@sbede
am 2022/05/19 19:21
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Titel
... ... @@ -1,0 +1,1 @@
1 +Samba4 Verzeichnisdienst direkt im Internet freigeben (ohne Stream via rev-proxy)
Übergeordnete Seite
... ... @@ -1,0 +1,1 @@
1 +Main.LD Server.Allgemein.WebHome
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.michaelecer@sbede
1 +XWiki.jonasmayer@sbede
Inhalt
... ... @@ -1,0 +1,156 @@
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!**
4 +
5 +
6 +----
7 +
8 +
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.
10 +
11 +{{toc start="4" numbered="true"/}}
12 +
13 +
14 +==== (% style="color:#000000" %)Schritte im Container (% style="color:#2980b9" %)ldhost(%%) ====
15 +
16 +
17 +(% 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.
18 +Da der Port 636  intern schon vergeben ist wird mit diesem Eintrag der Port intern auf einen anderen Port umgemappt.
19 +
20 +(% class="box" %)
21 +(((
22 +(% style="color:#000000" %)##DNAT ext dmz:172.28.29.2:1636 tcp 636##
23 +)))
24 +
25 +(% style="color:#000000" %)Im Anschluß daran starten Sie mit folgendem Befehl die Shorewall neu:
26 +
27 +(% class="box" %)
28 +(((
29 +(% style="color:#000000" %)##shorewall restart##
30 +)))
31 +
32 +
33 +==== (% style="color:#000000" %)Schritte im Container (% style="color:#2980b9" %)logosrv(%%) ====
34 +
35 +
36 +(% 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.
38 +
39 +(% class="box" %)
40 +(((
41 +(% style="color:#000000" %)##nano /usr/sbin/ldfirewall.custom##
42 +)))
43 +
44 +
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:
47 +
48 +(% class="box" %)
49 +(((
50 +(% style="color:#000000" %)###!/bin/bash
51 +\\DRYRUN=no
52 +VERBOSE=no
53 +ipt=do_iptables
54 +PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/bin:/usr/local/bin/support"
55 +\\do_iptables()
56 +{
57 + run iptables "$@"
58 +}
59 +run()
60 +{
61 + if [ "$VERBOSE" = "yes" ]; then
62 + echo "$@"
63 + fi
64 + if [ "$DRYRUN" = "no" ]; then
65 + "$@"
66 + fi
67 +}
68 +\\case "$1" in
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 + ;;
86 + stop)
87 + ;;
88 + *)
89 + echo "Benutzung: $0 {start|restart}"
90 + exit 1
91 + ;;
92 +esac##
93 +)))
94 +
95 +
96 +(% style="color:#000000" %)Hier müssen nun folgende Werte angepasst werden:
97 +
98 +(% class="box" %)
99 +(((
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##
103 +)))
104 +
105 +
106 +(% style="color:#000000" %)Danach müssen Sie das Skript ausführbar machen, damit sie im Zuge eines Firewall-Restarts automatisch verarbeitet wird:
107 +
108 +(% class="box" %)
109 +(((
110 +(% style="color:#000000" %)##chmod +x /usr/sbin/ldfirewall.custom##
111 +)))
112 +
113 +
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):
115 +
116 +(% class="box" %)
117 +(((
118 +(% style="color:#000000" %)##bash /usr/sbin/ldfirewall.custom##
119 +)))
120 +
121 +
122 +(% style="color:#000000" %)Im nächsten Schritt öffnen Sie mit einem Editor Ihrer Wahl die //internet.conf//
123 +
124 +(% class="box" %)
125 +(((
126 +(% style="color:#000000" %)##nano /etc/logodidact/internet.conf##
127 +)))
128 +
129 +
130 +(% style="color:#000000" %)Hier fügen Sie nun den Port 1636 im Abschnitt //FromInternetAllowTCP// hinzu
131 +
132 +(% class="box" %)
133 +(((
134 +(% style="color:#000000" %)FromInternetAllowTCP 1636
135 +)))
136 +
137 +
138 +(% style="color:#000000" %)Im Anschluß daran starten Sie die Firewall neu
139 +
140 +(% class="box" %)
141 +(((
142 +(% style="color:#000000" %)##ldfirewall restart##
143 +)))
144 +
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 +
151 +(% class="box successmessage" %)
152 +(((
153 +(% style="color:#000000" %)**__Hinweise:__**(%%)
154 +(% 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(%%)
155 +- (% 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
156 +)))
Port_Router.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.aku@sbede
Größe
... ... @@ -1,0 +1,1 @@
1 +21.5 KB
Inhalt