Инструменты пользователя

Инструменты сайта


linux:network:samba

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
linux:network:samba [2025/12/06 08:48] – создано Кириллlinux:network:samba [2025/12/28 16:23] (текущий) Кирилл
Строка 1: Строка 1:
 +====== Samba ======
 +
 +----
 +
 +===== О Samba =====
 +
 +Samba - это программное обеспечение для организации обмена файлами и работы с общими ресурсами между компьютерами под управлением Linux/Unix и ОС Windows. Samba состоит из клиентской и серверной части. Клиентская часть позволяет получить доступ к сетевым папкам и ресурсам Windows, а серверная, в свою очередь, открывает общий доступ к папке Ubuntu для других машин, в том числе и Windows.
 +
 +Открываем терминал Ctrl+Alt+T, и пишем следующие команды:
 +
 +===== Установка Samba =====
 +
 +Устанавливаем Samba:
 +<code>
 +sudo apt install samba samba-common smbclient smbldap-tools cifs-utils winbind libpam-winbind krb5-user ntp
 +</code>
 +
 +<code>
 +sudo apt install samba samba-common smbldap-tools winbind libpam-winbind ntp
 +</code>
 +
 +После установки автоматически будет запущен демон smbd. Давайте посмотрим его статус:
 +<code>
 +sudo systemctl status smbd
 +</code>
 +
 +===== Настраиваем время =====
 +
 +Переключаемся на локальное время:
 +<code>
 +sudo timedatectl set-local-rtc 1 --adjust-system-clock
 +</code>
 +
 +Проверяем:
 +<code>
 +sudo timedatectl
 +</code>
 +
 +===== Настройка Samba =====
 +Разрешаем порты Samba в UFW:
 +<code>
 +sudo ufw allow samba
 +sudo ufw allow 445/tcp
 +sudo ufw allow 137/udp
 +sudo ufw allow 138/udp
 +sudo ufw allow 139/tcp
 +</code>
 +
 +Чтобы пользователь мог работать с расшаренными папками, он должен быть добавлен в базу данных Samba. Поэтому создадим для него пароль:
 +<code>
 +sudo smbpasswd -a <Имя пользователя>
 +</code>
 +
 +Сначала создайте резервную копию оригинального файла конфигурации Samba:
 +<code>
 +sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
 +</code>
 +
 +После создания резервной копии, откройте файл конфигурации:
 +<code>
 +sudo nano /etc/samba/smb.conf
 +</code>
 +
 +==== Гостевой доступ к папке ====
 +<code>
 +[Общая папка]
 +    comment = Public Folder
 +    path = /home/data/public
 +    public = yes
 +    writable = yes
 +    read only = no
 +    guest ok = yes
 +    create mask = 0777
 +    directory mask = 0777
 +    force create mode = 0777
 +    force directory mode = 0777
 +</code>
 +
 +Создаем каталог и назначим права:
 +<code>
 +sudo mkdir -p /home/data/public
 +</code>
 +<code>
 +sudo chmod 777 /home/data/public
 +</code>
 +
 +==== Доступ к папке по логину и паролю ====
 +<code>
 +[Папка сотрудников]
 +    comment = Staff Folder
 +    path = /home/data/staff
 +    public = no
 +    writable = yes
 +    read only = no
 +    guest ok = no
 +    create mask = 0777
 +    directory mask = 0777
 +    force create mode = 0777
 +    force directory mode = 0777
 +</code>
 +
 +Создаем каталог и назначим права:
 +<code>
 +sudo mkdir -p /home/data/staff
 +</code>
 +
 +<code>
 +sudo chmod 777 /home/data/staff
 +</code>
 +
 +==== Доступ к папке определенным пользователям и группам ====
 +
 +<code>
 +[Приватная папка]
 +    comment = Private Folder
 +    path = /home/data/private
 +    public = no
 +    writable = no
 +    read only = yes
 +    guest ok = no
 +    valid users = admin, staff2, staff3, @privateusers
 +    write list = admin, staff2
 +    create mask = 0777
 +    directory mask = 0777
 +    force create mode = 0777
 +    force directory mode = 0777
 +    inherit owner = yes
 +</code>
 +
 +Создаем каталог и назначим права:
 +<code>
 +sudo mkdir -p /home/data/private
 +</code>
 +<code>
 +sudo chmod 777 /home/data/private
 +</code>
 +
 +Создаём группу, если она ещё не создана:
 +<code>
 +sudo addgroup sambashare
 +</code>
 +
 +Добавим нашего пользователя в созданную группу:
 +<code>
 +sudo usermod -a -G sambashare kirill
 +</code>
 +
 +==== Корзина ====
 +<code>
 +[Recycle]
 +    comment = Snap Directories
 +    path = /home/data/recycle
 +    public = yes
 +    browseable = yes
 +    writable = yes
 +    vfs objects = recycle
 +    recycle:repository = .recycle/%U
 +    recycle:keeptree = Yes
 +    recycle:touch = Yes
 +    recycle:versions = Yes
 +    recycle:maxsize = 0
 +    recycle:exclude = *.tmp, ~$*
 +    recycle:exclude_dir = /tmp
 +</code>
 +
 +Создаем каталог и назначим права:
 +<code>
 +sudo mkdir -p /home/data/recycle
 +</code>
 +<code>
 +sudo chmod 777 /home/data/recycle
 +</code>
 +
 +Для применения настроек перезапускаем Файловый сервер Samba:
 +<code>
 +sudo systemctl restart smbd
 +</code>