Centos 7 – instalacja i konfiguracja Samby

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