Version 12.1 von jonasmayer@sbede am 2022/05/19 19:20

Zeige letzte Bearbeiter
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 )))