پرش به محتوا

پوشه‌ی اشتراکی Samba با SELinux در Rocky و AlmaLinux

Samba را نصب کنید، پوشه‌ی اشتراکی بسازید و برچسب SELinux و سرویس فایروال لازم را تنظیم کنید.

AlmaLinux 9سطح: مقدماتیبرای: Rocky Linux 10، AlmaLinux 10، CentOS Stream 10، Rocky Linux 9، AlmaLinux 9به‌روزرسانی: ۱۶ آبان ۱۴۰۵

۱. نصب و فایروال

bash
sudo dnf install -y samba samba-client
sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload

۲. پوشه و برچسب SELinux

بدون برچسب samba_share_t، کاربران با وجود مجوز درست، خطای دسترسی می‌گیرند:

bash
sudo groupadd -f office
sudo mkdir -p /srv/samba/office
sudo chgrp office /srv/samba/office && sudo chmod 2770 /srv/samba/office
sudo semanage fcontext -a -t samba_share_t "/srv/samba(/.*)?"
sudo restorecon -Rv /srv/samba

اگر می‌خواهید پوشه‌های خانه‌ی کاربران هم اشتراک‌گذاری شوند:

bash
sudo setsebool -P samba_enable_home_dirs on

۳. تعریف اشتراک

bash
sudo nano /etc/samba/smb.conf
ini
[office]
    path = /srv/samba/office
    valid users = @office
    writable = yes
    create mask = 0660
    directory mask = 2770

۴. کاربر و اجرا

bash
sudo useradd -M -s /sbin/nologin -G office reza
sudo smbpasswd -a reza
testparm -s
sudo systemctl enable --now smb
smbclient //localhost/office -U reza -c 'ls'