Instalacja Samby
yum install -y samba samba-client cifs-utils
yum install -y samba-doc
Sprawdzenie instalacji Samby:
smbd --version
rpm -ql samba-client
rpm -qa | grep samba
Pliki konfiguracyjne:
/etc/samba/smb.conf - udziały, prawa i parametry
/etc/samba/smbusers - uzytkownicy
/etc/sysconfig/samba - ustawienia startowe
/var/lib/samba/private/smbpasswd - hasła
/var/log/samba - logi
/etc/passwd - hasla i konfiguracja kont uzytkownikow
Włączanie i wyłączanie usługi, sprawdzanie statusu:
systemctl start smb
systemctl enable smb
systemctl status smb
Konfiguracja zapory:
firewall-cmd --permanent --add-service samba
firewall-cmd --reload
Konfiguracja pliku /etc/samba/smb.conf.
Konfiguracja Samby – scenariusza I;
Użytkownik admin posiada prawo modyfikacji obu katalogów, użytkownik gosc może modyfikować tylko katalog TU_WRZUCAC_DANE i przeglądać jedynie katalog FILMY (nie modyfikować).
Stworzenie grupy użytkowników Samby o nazwie sambausers, należących do niej dwóch użytkowników: admin oraz gosc i nadanie im haseł.
groupadd sambausers
adduser gosc --shell /bin/false
usermod -a -G sambausers gosc
useradd -G sambausers admin --shell /bin/false
smbpasswd -a gosc
smbpasswd -a admin
Utworzenie udziałów (katalogów do udostępnienia użytkownikom):
mkdir /mnt/DANE/TU_WRZUCAC_DANE
chmod 777 /mnt/DANE/TU_WRZUCAC_DANE
mkdir /mnt/DANE/FILMY
chmod 777 /mnt/DANE/FILMY
Poniżej konfiguracja pliku /etc/samba/smb.conf:
[TU_WRZUCAC_DANE]
comment = TU_WRZUCAC_DANE
path = /mnt/DANE/TU_WRZUCAC_DANE
guest ok = no
write list = @sambausers
create mask = 0777
directory mask = 0777
[FILMY]
comment = FILMY
path = /mnt/DANE/FILMY
guest ok = no
valid users = @sambausers
write list = admin
create mask = 0777
directory mask = 0777
[homes] # zmienić 2 wpisy na:
browseable = No
read only = Yes
Konfiguracja Samby – scenariusza II;
Stworzenie zasobów: „programy” oraz „wspolny”.
Do zasobu „wspolny” wszyscy użytkownicy mają dostęp bez konieczności podawania poświadczeń. Mogą wykonywać wszystkie operacje: dodawać pliki i foldery, usuwać, modyfikować.
Do zasobu „programy” wszyscy mają dostęp, jednak nikt nie może go modyfikować.
mkdir /samba
mkdir /samba/programy
chmod -R 775 /samba/programy
chown -R nobody:nobody /samba/programy
mkdir /samba/wspolny
chmod -R 775 /samba/wspolny
chown -R nobody:nobody /samba/wspolny
Poniżej konfiguracja pliku /etc/samba/smb.conf:
[global]
workgroup = samba.local
security = user
netbios = samba
map to guest = bad user
[programy]
comment = programy
path = /samba/programy
browsable = yes
guest ok = yes
read only = Yes
create mask = 0775
directory mask = 0775
[wspolny]
comment = wspolny
path = /samba/wspolny
browsable = yes
guest ok = yes
read only = no
create mask = 0775
directory mask = 0775
Ważne:
Parametry map to guest:
#bad user – uzytkownicy bez konta w Sambie maja dostęp do zasobów
#never – ustawienie domyślne, uzytkownicy bez konta w Sambie nie maja dostępu do zasobów
#bad password – użytkownicy podający błędne hasło uzyskają dostęp do zasobu z uprawnieniami gościa
Sprawdzenie poprawności konfiguracji pliku smb.conf poleceniem testparm
Konfiguracja systemu SELinux dla Samby:
setsebool -P samba_export_all_ro on
setsebool -P samba_export_all_rw on
semanage fcontext -at public_content_rw_t " /mnt/DANE/TU_WRZUCAC_DANE(/.*)?"
semanage fcontext -at public_content_rw_t " /mnt/DANE/FILMY(/.*)?"
semanage fcontext -at public_content_rw_t " /samba(/.*)
restorecon /samba
restorecon /mnt/DANE/FILMY
restorecon /mnt/DANE/TU_WRZUCAC_DANE
Udostępnianie zasobu publicznie (bez podawania poświadczeń): https://unix.stackexchange.com/questions/155651/samba-share-open-for-all-to-all