zaterdag 14 juni 2025

Windows share via Samba op CasaOS

Op de CasaOS manier

CasaOS is een stuk software waarmee je een goed beheersbaar docker systeem op een Raspberry PI of andere linux machine kunt plaatsen en vele apps kunt draaien.

Er is GEEN app waarmee je samba kunt activeren. Deze is standaard al geactiveerd.

Start de filebrowser "Files"en ga naar de map die je wilt delen:

Klik rechtsboven op de map en daar staan dan drie stipjes. Als je daar op klikt, ontvouwt zich een menu waarin je de optie delen kunt kiezen. CasaOS regelt dan zelf dat deze map gedeeld wordt in het locake netwerk voor de gebruikers die beschikbaar zijn in de linux distributie waarop CasaOS draait.

CasaOS past zelf de smb.conf setting aan en voegt daar een tweede smb.casa.conf file aan toe.


Op de ouderwetse manier

Alle onderstaande informatie is verouderd, maar WEL bruuikbaar als je geen CasaOS op de linux server hebt draaien.

Vanuit een terminal kun je de samba configuratie aanpassen

sudo nano /etc/samba/smb.casa.conf

Daarin tref je deze zettings aan:

[media]
comment = CasaOS share media
public = Yes
path = /media
browseable = Yes
read only = No
guest ok = Yes
create mask = 0777
directory mask = 0777
force user = root

Je kunt een tweede share toevoegen aan dit bestand door deze tekst te herhalen en tussen [ ] een andere naam te geven. Dat is namelijk de naam waarondee de share bekend wordt op het netwerk.

verder achter path= het zoekpad van de share die je wilt delen.


na afloop CTRL X
Y(es) of J(a)
en de naam bevestigen.

daarna moet de samba deamon herstart worden met dit commando:

sudo service smbd restart

Nu werkt de share en is zichtbaar vanaf andere linux machines.  

Een samba wachtwoord voeg je toe met het volgende commando:

sudo smbpasswd -a gebruiker

Nu de volgende casus: Twee personen met verschillende rechten toegang geven tot (een deel van) een share:

[media]
   path = /media
   browsable = yes
   writable = yes
   read only = no
   guest ok = no
   write list = user
   force user = user
   force group = user

[deelmap]
   path = /media/deelmap
   browsable = yes
   writable = yes
   read only = no
   guest ok = no
   valid users = user, user2

Zorg er voor dat beide gebruikers bestaande gebruikers zijn in linux. Een wachtwoord ken je toe met dit commando

sudo smbpasswd -a user
sudo smbpasswd -a user2
sudo service samba restart

Windows 11 client

Windows 11 is echter kieskeuriger en ziet de share niet. Daarvoor is een andere ingreep nodig:

open smb.conf:

sudo nano /etc/samba/smb.conf

pas aan dat alleen smb 2 of 3 gebruikt mogen worden . Voeg daarom dit toe onder [global]

[global]
   server min protocol = SMB2
   server max protocol = SMB3

controleer of elders geen SMB 1 verwijzingen staan. Dat kan ook NT1 heten:

verwijder dus regels zoals: 

ntlm auth = yes

client min protocol = NT1

server min protocol = NT1

herstart samba:
sudo systemctl restart smbd

controleer welke samba versie actief is:
testparm -v | grep "server min protocol"

vanaf een linux client:
smbclient -L localhost -m SMB3

Nu zal de share nog niet zichtbaar zijn omdat linux mint een bepaalde service niet installeert:
sudo apt update
sudo apt install wsdd
sudo nano /etc/systemd/system/wsdd.service

Plak het volgende er in:

[Unit]
Description=Web Services Discovery Daemon for Samba (Windows 11)
After=network.target

[Service]
Type=simple
# Vervang 'wlp2s0' hieronder door jouw interface van: ip route show default
ExecStart=/usr/bin/python3 -W ignore /usr/bin/wsdd -i wlp2s0
Restart=always
RestartSec=5


[Install]
WantedBy=multi-user.target


Belangrijk, vervang wlp2s0 door hetgeen je ziet via: 
ip route show default


Geef nu:
sudo systemctl daemon-reload
sudo systemctl enable wsdd
sudo systemctl start wsdd
sudo systemctl status wsdd

controleer dat wsdd luitert: 
ss -ulpn | grep 3702

Dat moet een antwoord geven dat hier op lijkt:
udp UNCONN 0 0 0.0.0.0:3702 0.0.0.0:* users:(("python3",pid=...,fd=...))

herstart SAMBA:
sudo systemctl restart smbd

Dit zou moeten werken. Het is wel een hoop gedoe om op windows 11 een samba share zichtbaar te maken.

Geen opmerkingen:

Een reactie posten

Opmerking: Alleen leden van deze blog kunnen een reactie posten.

SFTP instellen op een Linux Mint 22.2

De casus is alsvolgt: Ik draai CasaOS op een linux mint 22.2 machine  waarop CasaOS draait met docker containers. Ik wil toegang tot enkele ...