Zeige QuelltextNach oben Teilen per Teilen per... Twitter LinkedIn Telegram Yammer RedditLetzte ÄnderungenPer E-Mail sendenDruckenPermalink × Inhaltsverzeichnis Domäne managen Befehle Benutzer und Passwörter Fileserver only Installation Ubuntu Authentifizierung Debian-spezifisch Installation der Pakete Startmodus für Samba anpassen Winbind starten Winbind Kerberos NSSwitch SSSd PAM smb.conf Parameter Netzlaufwerke einbinden Linux CIFS mit einem festen Benutzer Einbinden mit pam_mount Windows Mac OS X Troubleshooting users can't write to public share Windows XP can't connect Samba 4 Domäne managen https://wiki.samba.org/index.php/Samba_AD_DC_HOWTO http://www.stefanwienert.de/blog/2014/07/02/samba-4-active-directory-controller-with-windows-7-roaming-profiles-plus-linux-login-the-definitive-guide/ Befehle AD beitreten net ads join -UAdministrator Beitritt ohne AD net rpc join WORKGROUP -UAdministrator Beitritt überprüfen net rpc testjoin Domäne provisionieren samba-tool domain provision Domain-Level anheben samba-tool domain level raise –domain-level 2008_R2 –forest-level 2008_R2 Benutzer und Passwörter Benutzer anlegen samba-tool user add [Benutzername] Benutzer deaktivieren samba-tool user disable [Benutzername] Benutzer anzeigen pdbedit -v -u [Benutzername] Passwort ändern samba-tool user setpassword [Benutzername] Kickoff time pdbedit -u [Benutzername] -K never Logon-Script pdbedit -u [Benutzername] -S script (ohne Dateinamenerweiterung) Konto nie ablaufen lassen pdbedit -u [Benutzername] -c "[X]" (src) Passwortrichtlinie anzeigen samba-tool domain passwordsettings show Passwortrichtlinie ändern samba-tool domain passwordsettings set –help Passwortrichtlinie lockern samba-tool domain passwordsettings set –complexity=off –min-pwd-length=11 –min-pwd-age=0 Fileserver only Benutzer anlegen pdbedit -a -u [Benutzername] Passwort ändern (als Benutzer) smbpasswd Passwort ändern (als Admin) smbpasswd [Benutzername] Installation Kerberos-Realm ad.company.org Kerberos-Auth-Server cmp-authsrv.ad.company.org Kerberos-Admin-Server cmp-authsrv.ad.company.org Domain company Ubuntu apt-get install samba krb5-config libpam-smbpass # Kerberos-Config, falls sie nicht automatisch auftaucht dpkg-configure krb5-config Authentifizierung Debian-spezifisch (siehe: Galileo Computing Samba 4, S.156) /etc/apt/sources.list.d/samba.list # # SerNet Samba 4.1 Packages # # (debian-wheezy) # deb https://user:password@download.sernet.de/packages/samba/4.1/debian wheezy main deb-src https://user:password@download.sernet.de/packages/samba/4.1/debian wheezy main Zuerst muss das Paket apt-transport-https installiert werden, damit Sernet-Samba zu den Paketquellen hinzugefügt werden kann. Auch muss der Authentifizierungs-Server in der hosts eingetragen sein, damit die Authentifizierung nicht ewig dauert. Installation der Pakete wget http://ftp.sernet.de/pub/sernet-samba-keyring_1.4_all.deb dpkg -i sernet-samba-keyring_1.4_all.deb apt-get install apt-transport-https apt-get update apt-get install sernet-samba-winbind sernet-samba libpam-heimdal Startmodus für Samba anpassen /etc/default/sernet-samba SAMBA_START_MODE="classic" SAMBA_RESTART_ON_UPDATE="no" NMBD_EXTRA_OPTS="" WINBINDD_EXTRA_OPTS="" SMBD_EXTRA_OPTS="" SAMBA_EXTRA_OPTS="" SAMBA_IGNORE_NSUPDATE_G="no" Winbind starten service sernet-samba-winbindd start Winbind /etc/hosts # Domain server 192.168.1.10 domain-server domain-server.domain.lan Die krb5.conf muss dieselbe sein, die auch auf dem Domänencontroller angelegt ist. /etc/krb5.conf [libdefaults] # DON'T USE .LOCAL FOR THE DOMAIN; IT'S "RESERVED" BY mDNS/Avahi/Bonjour! default_realm = DOMAIN.LAN dns_lookup_realm = false dns_lookup_kdc = true [realms] DOMAIN.LAN = { kdc = domain-server } Samba für den Client konfigurieren: /etc/samba/smb.conf [global] workgroup = DOMAIN realm = DOMAIN.LAN security = ADS ### winbind settings # separate domain and username with '.', like DOMAIN.username winbind separator = . idmap config * : range = 10000 - 20000 idmap config DOMAIN : backend = rid idmap config DOMAIN : range = 10000 - 20000 # allow enumeration of winbind users and groups winbind enum users = yes winbind enum groups = yes winbind use default domain = yes winbind refresh tickets = yes # give winbind users a real shell (only needed if they have telnet access) template homedir = /home/domain.lan/%u template shell = /bin/bash Zur Authentifizierung sollte noch entweder NSSwitch oder SSSd richtig konfiguriert sein. Kommandos: User anzeigen wbinfo -u Gruppen anzeigen wbinfo -g Cache leeren net cache flush Kerberos Die Zeit vom Client muss mit der des Servers übereinstimmen, deswegen sollte NTP konfiguriert sein. apt-get install heimdal-clients Ticket anfordern: kinit Administrator klist NSSwitch In die /etc/nsswitch.conf hinzufügen: /etc/nsswitch.conf passwd: compat winbind group: compat winbind shadow: compat winbind SSSd System Security Services Daemon, besonders für mobile Rechner interessant, da er Zugangsdaten zwischenspeichert. PAM Homeverzeichnis automatisch erstellen (Überverzeichnis muss angelegt sein, siehe samba-Konfiguration): /etc/pam.d/common-session session required pam_mkhomedir.so umask=0022 skel=/etc/skel smb.conf offizielle Manpage Parameter Parameter = Standardwert Beschreibung create mask = 0744 UNIX mode is bit-wise 'AND'ed with this parameter. Any bit not set here will be removed from the modes set on a file when it is created. Default value: g-wx, o-wx. → maximum permissions possible for new files force create mode = 000 Samba will bit-wise 'OR' the UNIX mode created from *create mask* with the value of this parameter. → minimum permissions min protocol = SMB1 Protokollversion, SMB2 empfohlen wg. WannaCry Netzlaufwerke einbinden Linux Für mount.cifs müssen unter Debian die cifs-utils installiert werden. CIFS mit einem festen Benutzer /etc/fstab //server/share /mnt/server/share cifs credentials=/etc/samba/credentials/server 0 0 /etc/samba/credentials/server username=[Benutzername] password=[Passwort] Wichtig: chmod 600 auf credentials-Dateien! Einbinden mit pam_mount Installation von libpam-mount, danach Konfiguration über /etc/security/pam_mount.conf.xml. Kerberos und/oder Samba müssen je nach Authentifizierungsmethode konfiguriert sein. /etc/security/pam_mount.conf.xml <volume fstype="cifs" server="domain-server" path="share" mountpoint="/home/domain.lan/%(DOMAIN_USER)/Share" options="sec=ntlmv2,workgroup=DOMAIN" /> Windows net use Z: \\server\share Mac OS X Anleitung bei Apple Troubleshooting users can't write to public share $ find 'directory_name' -type d -exec chown user:group {}\; $ find 'directory_name' -type d -exec chmod 2775 {}\; $ find 'directory_name' -type f -exec chmod 0775 {}\; $ find 'directory_name' -type f -exec chown user:group {}\; $ chmod 2775 /foodbar $ ls -al /foodbar/.. Further reading: Samba Manual Chapter 16, setgid on Wikipedia Windows XP can't connect error may be: Error 1326: Logon failure: unknown user name or bad password /etc/samba/smb.conf [global] lanman auth = yes ntlm auth = yes Zuletzt geändert: 2019-12-20 14:21