samba
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| samba [2021-07-16 10:44:52] – [montieren] manfred | samba [2026-01-05 23:28:31] (aktuell) – [montieren] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Samba ====== | ||
| + | |||
| + | * [[http:// | ||
| + | |||
| + | |||
| + | ===== Client ===== | ||
| + | |||
| + | |||
| + | ==== Kommandozeile ==== | ||
| + | |||
| + | aptitude -y install smbclient | ||
| + | |||
| + | Alle Samba-Server im Netz zeigen. | ||
| + | |||
| + | mit den Rechten eines bestimmten Benutzers: | ||
| + | # smbtree -U fritz | ||
| + | |||
| + | anonym (klappt aber nicht immer bzw. überall): | ||
| + | # smbtree -N | ||
| + | | ||
| + | WORKGROUP | ||
| + | \\VENUS | ||
| + | \\VENUS\IPC$ | ||
| + | \\VENUS\HDD1 | ||
| + | |||
| + | |||
| + | # smbtree -S -N | ||
| + | WORKGROUP | ||
| + | \\VENUS | ||
| + | |||
| + | |||
| + | Alle Freigaben auf dem Rechner //venus// zeigen: | ||
| + | # smbclient -L venus -N | ||
| + | | ||
| + | Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c] | ||
| + | | ||
| + | Sharename | ||
| + | --------- | ||
| + | HDD1 Disk | ||
| + | IPC$ IPC IPC Service (Samba 3.0.23c) | ||
| + | Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c] | ||
| + | | ||
| + | Server | ||
| + | --------- | ||
| + | VENUS Samba 3.0.23c | ||
| + | | ||
| + | Workgroup | ||
| + | --------- | ||
| + | WORKGROUP | ||
| + | |||
| + | |||
| + | Alle Freigaben auf dem Rechner // | ||
| + | # smbclient -L mediabox -N | ||
| + | WARNING: The " | ||
| + | Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c] | ||
| + | | ||
| + | Sharename | ||
| + | --------- | ||
| + | HDD1 Disk | ||
| + | IPC$ IPC IPC Service (Samba 3.0.23c) | ||
| + | Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c] | ||
| + | | ||
| + | Server | ||
| + | --------- | ||
| + | FANTEC | ||
| + | PSD28958 | ||
| + | | ||
| + | Workgroup | ||
| + | --------- | ||
| + | WORKGROUP | ||
| + | |||
| + | |||
| + | Alle Freigaben auf dem Rechner //venus// zeigen, wenn der Netbios-Name und der DNS-Name nicht gleich sind: | ||
| + | |||
| + | # smbclient -L venus -I 192.168.1.1 -N | ||
| + | | ||
| + | # smbclient -A / | ||
| + | |||
| + | Einloggen in die Freigabe //HDD1//: | ||
| + | |||
| + | # smbclient // | ||
| + | | ||
| + | Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.23c] | ||
| + | Server not using user level security and no password supplied. | ||
| + | smb: \> | ||
| + | smb: \> exit | ||
| + | |||
| + | |||
| + | Als //fritz// in die Freigabe //HDD1// einloggen: | ||
| + | |||
| + | # smbclient // | ||
| + | |||
| + | |||
| + | Passwortlos in die Freigabe //HDD1// einloggen: | ||
| + | |||
| + | # smbclient // | ||
| + | |||
| + | # vi / | ||
| + | | ||
| + | username = fritz | ||
| + | password = geheim | ||
| + | domain = WORKGROUP | ||
| + | |||
| + | Alles in einem Aufruf: | ||
| + | > smbclient // | ||
| + | smb: \> | ||
| + | | ||
| + | > smbclient // | ||
| + | . | ||
| + | .. D 0 Fri Jul 16 03:17:52 2021 | ||
| + | datei_01.ide | ||
| + | datei_02.ide | ||
| + | datei_03.ide | ||
| + | |||
| + | |||
| + | ==== montieren ==== | ||
| + | |||
| + | > aptitude -y install smbfs | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | Seit Ubuntu-Version 11.04 sollte man die Option " | ||
| + | |||
| + | > mount // | ||
| + | |||
| + | > apt install cifs-utils | ||
| + | > mount // | ||
| + | |||
| + | |||
| + | ==== FreeBSD ==== | ||
| + | |||
| + | * [[:: | ||
| + | |||
| + | |||
| + | ==== AutoFS / Automount (Linux) ==== | ||
| + | |||
| + | Ubuntu 20.04 | ||
| + | # apt install smbclient autofs cifs-utils | ||
| + | |||
| + | ältere Linux-Versionen | ||
| + | # aptitude -y install autofs smbfs smbclient | ||
| + | # mkdir -p / | ||
| + | |||
| + | # vi / | ||
| + | venus -fstype=cifs, | ||
| + | multimedia -fstype=cifs, | ||
| + | tmp | ||
| + | |||
| + | # vi / | ||
| + | /cifs / | ||
| + | |||
| + | # / | ||
| + | |||
| + | # ln -s /cifs/venus /home/ | ||
| + | # ln -s / | ||
| + | |||
| + | # ls -lha / | ||
| + | # ls -lha / | ||
| + | |||
| + | Jetzt wird ''/ | ||
| + | |||
| + | Ubuntu 20.04 LTS: | ||
| + | > echo "/ | ||
| + | > touch / | ||
| + | > chmod 0600 / | ||
| + | > echo " | ||
| + | > echo " | ||
| + | > echo " | ||
| + | > echo " | ||
| + | > service autofs restart | ||
| + | > ls -lha / | ||
| + | |||
| + | |||
| + | ===== Samba-Server ===== | ||
| + | |||
| + | |||
| + | ==== installation von Samba 4.6 ==== | ||
| + | |||
| + | > smbd -b | grep " | ||
| + | CONFIGFILE: / | ||
| + | |||
| + | > mv / | ||
| + | > ln -s / | ||
| + | |||
| + | > testparm -v | ||
| + | > echo " | ||
| + | |||
| + | die SHARE-Namen sollten nur max. 12 Zeichen lang sein | ||
| + | |||
| + | > service samba_server status | ||
| + | nmbd is not running. | ||
| + | smbd is not running. | ||
| + | |||
| + | > service samba_server start | ||
| + | Performing sanity check on Samba configuration: | ||
| + | Starting nmbd. | ||
| + | Starting smbd. | ||
| + | |||
| + | > service samba_server status | ||
| + | nmbd is running as pid 68580. | ||
| + | smbd is running as pid 68584. | ||
| + | |||
| + | > ps ax | fgrep -v grep | egrep " | ||
| + | 68794 - Ss 0:00,00 / | ||
| + | 68798 - Ss 0:00,02 / | ||
| + | 68800 - S | ||
| + | 68801 - S | ||
| + | 68803 - S | ||
| + | |||
| + | > smbd -b | egrep " | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | <file bash / | ||
| + | ### Samba 4.0 - Binary: ftp:// | ||
| + | # server role = active directory domain controller | ||
| + | # server services = +smb | ||
| + | # dcerpc endpoint servers = remote | ||
| + | # start smbd/ | ||
| + | |||
| + | # https:// | ||
| + | # https:// | ||
| + | |||
| + | [global] | ||
| + | unix charset = UTF8 | ||
| + | workgroup = ENERGIE | ||
| + | server string = ERDE | ||
| + | interfaces = 192.168.2.1/ | ||
| + | bind interfaces only = Yes | ||
| + | passdb backend = smbpasswd | ||
| + | smb passwd file = / | ||
| + | log file = / | ||
| + | max log size = 50 | ||
| + | min protocol = NT1 | ||
| + | disable netbios = Yes | ||
| + | enable asu support = Yes | ||
| + | socket options = TCP_NODELAY IPTOS_LOWDELAY | ||
| + | #socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536 | ||
| + | os level = 64 | ||
| + | preferred master = Yes | ||
| + | domain master = Yes | ||
| + | dns proxy = No | ||
| + | ##socket address = 192.168.2.1 | ||
| + | usershare prefix allow list = /tmp, /Export | ||
| + | usershare prefix deny list = /etc, /dev, /boot, /root | ||
| + | idmap config * : backend = tdb | ||
| + | invalid users = root, @wheel | ||
| + | valid users = kontor, multimedia, kinder, fritz, fratz | ||
| + | create mask = 0664 | ||
| + | directory mask = 0775 | ||
| + | hosts allow = 127., 192.168.2. | ||
| + | # aio read size = 65536 | ||
| + | # aio write size = 65536 | ||
| + | write cache size = 262144 | ||
| + | case sensitive = Yes | ||
| + | fstype = Samba | ||
| + | ### Samba 4.0 - Binary: ftp:// | ||
| + | # | ||
| + | dcerpc endpoint servers = +unixinfo +browser | ||
| + | enable core files = no | ||
| + | client max protocol = SMB3 | ||
| + | # | ||
| + | load printers = no | ||
| + | printable = no | ||
| + | # | ||
| + | #tls enabled = No | ||
| + | #tls keyfile = | ||
| + | #tls certfile = | ||
| + | #tls cafile = | ||
| + | #tls crlfile = | ||
| + | #tls dh params file = | ||
| + | |||
| + | [cdrom] | ||
| + | comment = cdrom | ||
| + | path = /cdrom | ||
| + | valid users = kontor | ||
| + | force user = kontor | ||
| + | force group = kontor | ||
| + | read only = Yes | ||
| + | create mask = 0660 | ||
| + | directory mask = 0770 | ||
| + | |||
| + | [kontor] | ||
| + | comment = kontor | ||
| + | path = / | ||
| + | valid users = kontor | ||
| + | force user = kontor | ||
| + | force group = kontor | ||
| + | read only = No | ||
| + | create mask = 0660 | ||
| + | directory mask = 0770 | ||
| + | |||
| + | [tmp] | ||
| + | comment = Tmp | ||
| + | path = /tmp | ||
| + | valid users = kontor, multimedia | ||
| + | force user = kontor | ||
| + | force group = kontor | ||
| + | read only = No | ||
| + | create mask = 0660 | ||
| + | directory mask = 0770 | ||
| + | |||
| + | [mm] | ||
| + | comment = " | ||
| + | path = /Export/mm | ||
| + | valid users = multimedia | ||
| + | force user = multimedia | ||
| + | force group = dlna | ||
| + | read only = No | ||
| + | create mask = 0660 | ||
| + | directory mask = 0770 | ||
| + | |||
| + | [kinder] | ||
| + | comment = " | ||
| + | path = / | ||
| + | valid users = kinder | ||
| + | force user = kinder | ||
| + | force group = dlna | ||
| + | read only = No | ||
| + | create mask = 0660 | ||
| + | directory mask = 0770 | ||
| + | |||
| + | [freecom] | ||
| + | comment = " | ||
| + | path = /Freecom | ||
| + | valid users = fritz, fratz | ||
| + | force user = fritz | ||
| + | force group = fritz | ||
| + | read only = No | ||
| + | create mask = 0666 | ||
| + | directory mask = 0777 | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Benutzer anlegen in Samba 3.4 ==== | ||
| + | |||
| + | ACHTUNG!\\ | ||
| + | __Die Benutzer, die mit '' | ||
| + | Sonst bekommt man den Fehler '' | ||
| + | |||
| + | Als erstes muss natürlich Samba installiert werden: | ||
| + | # aptitude -y install samba | ||
| + | |||
| + | Dann brauchen wir einen Systemuser: | ||
| + | # useradd fritz | ||
| + | |||
| + | Samba muss den Benutzer natürlich auch kennen: | ||
| + | # smbpasswd -a fritz | ||
| + | |||
| + | oder für Scripte so: | ||
| + | # echo -e " | ||
| + | |||
| + | Das " | ||
| + | sind sehr wichtig, sonst funktioniert das automatische Anlegen des Benutzers nicht! | ||
| + | |||
| + | so wird das Passwort in der Samba-Datenbank geändert: | ||
| + | > smbpasswd -U fritz | ||
| + | New SMB password: | ||
| + | Retype new SMB password: | ||
| + | |||
| + | man kann auch Benutzer wieder aus der SMB-Datenbank entfernen: | ||
| + | > smbpasswd -x root | ||
| + | smb_delete_user: | ||
| + | Deleted user root. | ||
| + | |||
| + | alle User, die Samba kennt, kann man so sehen: | ||
| + | > pdbedit -L | ||
| + | Ignoring unknown parameter " | ||
| + | Ignoring unknown parameter " | ||
| + | fritz: | ||
| + | |||
| + | > pdbedit -Lv | ||
| + | --------------- | ||
| + | Unix username: | ||
| + | NT username: | ||
| + | Account Flags: | ||
| + | User SID: | ||
| + | Primary Group SID: S-1-5-21-2557483769-2213720445-2638791776-513 | ||
| + | Full Name: Benutzer | ||
| + | Home Directory: | ||
| + | HomeDir Drive: | ||
| + | Logon Script: | ||
| + | Profile Path: | ||
| + | Domain: | ||
| + | Account desc: | ||
| + | Workstations: | ||
| + | Munged dial: | ||
| + | Logon time: 0 | ||
| + | Logoff time: never | ||
| + | Kickoff time: never | ||
| + | Password last set: Sa., 06 Nov. 2010 23:55:34 CET | ||
| + | Password can change: | ||
| + | Password must change: never | ||
| + | Last bad password | ||
| + | Bad password count : 0 | ||
| + | Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF | ||
| + | |||
| + | Passwort ändern: | ||
| + | > echo ' | ||
| + | |||
| + | Benutzerdaten ändert: | ||
| + | > pdbedit -ru fritz | ||
| + | |||
| + | Benutzer aus der Samba-Datenbank löschen: | ||
| + | > pdbedit -xu fritz | ||
| + | |||
| + | Benutzer-Datenbank exportieren: | ||
| + | > pdbedit -e smbpasswd:/ | ||
| + | |||
| + | Benutzer-Datenbank importieren: | ||
| + | > pdbedit -i smbpasswd:/ | ||
| + | |||
| + | Jetzt muss Samba (smb.conf) noch konfiguriert werden: | ||
| + | |||
| + | |||
| + | ==== / | ||
| + | |||
| + | workgroup = ARBEITSGRUPPE | ||
| + | netbios name = SERVERNAME | ||
| + | server string = Samba %v (%h) | ||
| + | security = user | ||
| + | hosts allow = 127. 172.0. 192.168.0. | ||
| + | load printers = no | ||
| + | log file = / | ||
| + | socket options = TCP_NODELAY | ||
| + | local master = yes | ||
| + | os level = 64 | ||
| + | domain master = yes | ||
| + | preferred master = yes | ||
| + | disable netbios = yes | ||
| + | invalid users = root | ||
| + | strict sync = yes | ||
| + | sync always = yes | ||
| + | kernel oplocks = yes | ||
| + | unix extensions = yes | ||
| + | case sensitive = yes | ||
| + | | ||
| + | [Freigabe] | ||
| + | | ||
| + | path = / | ||
| + | read only = no | ||
| + | | ||
| + | | ||
| + | valid users = fritz fratz | ||
| + | |||
| + | |||
| + | ==== / | ||
| + | |||
| + | [global] | ||
| + | workgroup | ||
| + | server string | ||
| + | netbios name = FreeBSD-Server | ||
| + | wins support | ||
| + | hosts allow = 192.168.1. 192.168.2. 127. | ||
| + | log file = / | ||
| + | max log size = 50 | ||
| + | security | ||
| + | ; | ||
| + | ; | ||
| + | ; force user = nobody | ||
| + | ; force group = nogroup | ||
| + | socket options | ||
| + | os level = 33 | ||
| + | domain master | ||
| + | preferred master = yes | ||
| + | dns proxy = no | ||
| + | client code page = 850 | ||
| + | | ||
| + | [printers] | ||
| + | comment | ||
| + | path = / | ||
| + | browseable | ||
| + | guest ok = no | ||
| + | writeable | ||
| + | printable | ||
| + | | ||
| + | [tmp] | ||
| + | comment | ||
| + | path = /tmp | ||
| + | read only = no | ||
| + | public | ||
| + | browseable | ||
| + | create mask = 0777 | ||
| + | | ||
| + | [homes] | ||
| + | comment | ||
| + | valid users = %S | ||
| + | read only = No | ||
| + | browseable | ||
| + | writeable | ||
| + | create mask = 0700 | ||
| + | | ||
| + | [var-tmp] | ||
| + | comment | ||
| + | path = /var/tmp | ||
| + | read only = No | ||
| + | public | ||
| + | writeable | ||
| + | printable | ||
| + | browseable | ||
| + | |||
| + | Glücklicherweise braucht man Samba jetzt **nicht** neu zu starten! | ||
| + | |||
| + | |||
| + | ====== SWAT ===== | ||
| + | |||
| + | SWAT ist ein grafisches Konfigurationswerkzeug für Samba. | ||
| + | |||
| + | |||
| + | ==== SWAT aktivieren ==== | ||
| + | |||
| + | Hat man Samba mit SWAT installiert, | ||
| + | in dem man in der Datei "/// | ||
| + | durch das entfernen des "#" | ||
| + | > vi / | ||
| + | ... | ||
| + | # | ||
| + | # Enable the following two entries to enable samba startup from inetd | ||
| + | # (from the Samba documentation). | ||
| + | # samba configuration tool. | ||
| + | # | ||
| + | # | ||
| + | #netbios-ns dgram udp wait root / | ||
| + | swat stream | ||
| + | |||
| + | Läuft Samba/SWAT auf einem Linux, dann muss es in der Datei [[http:// | ||
| + | disable = no | ||
| + | only_from = 127.0.0.1 192.168.100.0 | ||
| + | |||
| + | und anschließend den INETD neu startet: | ||
| + | > service inetd restart | ||
| + | |||
| + | Jetzt kann man die SWAT-Oberfläche mit " | ||
| + | |||
| + | |||
| + | ==== Problembehebung ==== | ||
| + | |||
| + | Bekommt man jetzt im Browser ein **//Access Denied.//** angezeigt, | ||
| + | dann fehlt u.U. noch der Benutzer " | ||
| + | |||
| + | Dieses Problem kann vier verschiedene Ursachen haben: | ||
| + | - man darf den Server-Namen nicht in der SWAT-URL-Zeile verwenden sondern nur die IP, das war bei mir (trotz funktionierendem DNS) der Fall; | ||
| + | - man muss den Port 901/swat in der Datei /// | ||
| + | - der Benutzer " | ||
| + | - SWAT hat nur lokal den Port 901 geöfnet; | ||
| + | |||
| + | Lösung für Problem " | ||
| + | http:// | ||
| + | |||
| + | Lösung für Problem " | ||
| + | > vi / | ||
| + | ... | ||
| + | # Swat - Samba port 901 | ||
| + | swat : 192.168.100. : allow | ||
| + | swat : ALL : deny | ||
| + | |||
| + | Lösung für Problem " | ||
| + | > smbpasswd -a root | ||
| + | New SMB password: | ||
| + | Retype new SMB password: | ||
| + | Added user root. | ||
| + | |||
| + | Lösung für Problem " | ||
| + | Dann kann man den [[http:// | ||
| + | |||
