LAB Linux in heterogenen Netzen Squid KERBEROS: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 89: | Zeile 89: | ||
auth_param negotiate children 1000 | auth_param negotiate children 1000 | ||
auth_param negotiate keep_alive on | auth_param negotiate keep_alive on | ||
| − | |||
| − | |||
acl auth proxy_auth REQUIRED | acl auth proxy_auth REQUIRED | ||
| − | |||
http_access deny !auth | http_access deny !auth | ||
| − | http_access allow | + | http_access allow auth |
http_access deny all | http_access deny all | ||
| + | |||
</pre> | </pre> | ||
Version vom 7. Oktober 2024, 11:47 Uhr
Ziel
- Wir wollen Proxy Server aufsetzen
- Dieser soll in der AD registriert sein
- Die Anbindung soll auch über Kerberos erfolgen
- Nur an der Domain angemeldete Benutzer sollen Squid nutzen dürfen-
Aus dem Debian Template einen Klon erstellen
- Name: proxy
- Netz: dmz
- HOSTS: proxy.lab34.linuggs.de
- IPv4: 172.26.55.15/24
- GWv4: 172.26.55.1
- NSv4: 172.26.54.2
- DOM: proxy.linuggs.de
- HOSTS: mail.lab34.linuggs.de
- IPv6: 2a02:24d8:71:3037::15/64
- GWv6: 2a02:24d8:71:3037::1
- NSv6: 2a02:24d8:71:3036::2
- DOM: lab34.linuggs.de
Integration des Proxy-Servers in die Active Directory-Domäne mit Samba und Realm
Installation der erforderlichen Pakete
Installieren Sie die erforderlichen Pakete auf dem Proxy-Server:
- sudo apt update
- sudo apt install sssd realmd adcli packagekit krb5-user squid
Konfiguration von Samba
Bearbeiten Sie die Samba-Konfigurationsdatei /etc/samba/smb.conf:
- sudo nano /etc/samba/smb.conf
Fügen Sie die folgenden Zeilen hinzu oder passen Sie die Datei entsprechend an:
[global] workgroup = LAB34 realm = LAB34.LINUGGS.DE security = ADS kerberos method = secrets and keytab log file = /var/log/samba/%m.log max log size = 50
Beitritt zur Active Directory-Domäne
Verwenden Sie den realm-Befehl, um den Proxy-Server der AD-Domäne beizutreten:
- sudo realm join --user=Administrator LAB34.LINUGGS.DE
SSSD konfigurieren
Füge folgendes noch zur Konfiguration ändern
- vi /etc/sssd/sssd.conf
use_fully_qualified_names = False enumerate = true
Kerberos-Konfiguration
Überprüfen Sie die Kerberos-Konfigurationsdatei /etc/krb5.conf:
- sudo nano /etc/krb5.conf
Stellen Sie sicher, dass die Datei wie folgt aussieht:
[libdefaults]
default_realm = LAB34.LINUGGS.DE
dns_lookup_realm = true
dns_lookup_kdc = true
LAB34.LINUGGS.DE = {
kdc = win2022.lab34.linuggs.de
admin_server = win2022.lab34.linuggs.de
}
[domain_realm]
.lab34.linuggs.de = LAB34.LINUGGS.DE
lab34.linuggs.de = LAB34.LINUGGS.DE
Erstellen einer Keytab-Datei
Verwenden Sie net ads oder msktutil, um eine Keytab-Datei zu erstellen:
- sudo net ads keytab add HTTP/proxy.lab34.linuggs.de -U Administrator
Geben Sie das Passwort für den Benutzer Administrator ein, wenn Sie dazu aufgefordert werden.
Konfiguration von Squid
Bearbeiroot@proxy:~# cd /etc/squid/
- cp squid.conf squid.conf.org
- grep "^[^#]" squid.conf.org > squid.conf
- vi /etc/squid/squid.conf
auth_param negotiate program /usr/lib/squid/negotiate_kerberos_auth -d -s HTTP/proxy.lab34.linuggs.de auth_param negotiate children 1000 auth_param negotiate keep_alive on acl auth proxy_auth REQUIRED http_access deny !auth http_access allow auth http_access deny all
Neustart des Squid-Dienstes
Speichern Sie die Änderungen und starten Sie den Squid-Dienst neu:
sudo systemctl restart squid
Testen der Konfiguration
- Überprüfen Sie den Zugriff mit einem Benutzer, der Mitglied der Gruppe lg_proxy ist, um sicherzustellen, dass der Zugriff gewährt wird.
- Testen Sie den Zugriff mit einem Benutzer, der nicht in der Gruppe ist, um sicherzustellen, dass der Zugriff verweigert wird.
Fehlerbehebung
- Überprüfen Sie die Logs unter /var/log/squid/cache.log, um Authentifizierungsfehler oder andere Probleme zu identifizieren.
- Stellen Sie sicher, dass der Benutzer korrekt in der AD-Gruppe lg_proxy ist und dass die Keytab-Datei die richtigen SPNs enthält.