Главная
Главная Руководства FreeBSD › Установка и настройка Samba Server 4.16 (FreeBSD)



Автор:

Статья опубликована: 2025-11-26 22:42:09
Последние правки: 2025-11-26 22:53:00

Запускаем свой файловый сервер на FreeBSD. Для этого используем Samba 4.16. Настраиваем доступ для iPhone и iPad. Настраиваем доступ к папке по паролю.


- это переработка статьи об установке samba44
- добавлена настройка серверной части для доступа с iPhone и iPad
- добавлено описание настройки доступа по паролю (для пользователей и групп).


  • Использованные версии ПО:
    # uname -sr
    FreeBSD 13.5-RELEASE-p3
    
    # pkg info | grep samba
    samba416-4.16.11_10                Free SMB/CIFS and AD/DC server and client for Unix
    

  • Установка
    # cd /usr/ports/net/samba416
    # make install clean
    
    Вот мой конфиг - установка на домашний сервер, так что никаких AD и прочего:
    [ ] ADS            Active Directory client(implies LDAP)
    [ ] AD_DC          Active Directory Domain Controller(implies PYTHON3)
    [ ] CLUSTER        Clustering support
    [ ] CUPS           CUPS printing system support
    [ ] DOCS           Build and/or install documentation
    [ ] FAM            File Alteration Monitor
    [ ] GPGME          GpgME support
    [ ] LDAP           LDAP client
    [ ] MANDOC         Build manpages from DOCBOOK templates
    [X] PROFILE        Profiling data
    [X] PYTHON3        Python 3.x bindings or support
    [X] QUOTAS         Disk quota support
    [X] SYSLOG         Syslog logging support
    [X] UTMP           UTMP accounting
    ─────────────────────────── VFS modules ──────────────────────────────
    [X] FRUIT          MacOSX and TimeMachine support
    [ ] GLUSTERFS      GlusterFS support
    ───────── GSSAPI Security API support [select at least one] ──────────
    ( ) GSSAPI_BUILTIN GSSAPI support via bundled Heimdal
    (*) GSSAPI_MIT     GSSAPI support via security/krb5
    

  • Настройка

    /etc/rc.conf:
    samba_server_enable="YES"
    
    /usr/local/etc/smb4.conf
    #======================= Global Settings =====================================
    [global]
    
    workgroup = HOME
    server string = My File Server
    # метод доступа - по пользователям
    security = user
    # все нераспознанные пользователи приравниваются к guest
    map to guest = Bad User
    # кому разрешен доступ
    hosts allow = 192.168.1. 127.
    load printers = no
    
    # уровень отладки, 0-10
    log level = 0
    log file = /var/log/samba4/log.%m
    max log size = 5000
    
    # интерфейсы, на которых слушает samba
    #interfaces = lo0 re0
    # ИЛИ ip, на которых слушает samba (если, например, на интерфейсе есть 2 ip)
    interfaces = 192.168.1.2
    # слушаем только на заданных в конфиге интерфейсах
    bind interfaces only = yes
    
    # главный в сети
    local master = yes
    os level = 255
    preferred master = yes
    # включена поддержка wins
    wins support = yes
    dns proxy = no
    
    # Charset settings
    # кодировка файловой системы на FreeBSD
    unix charset = utf8
    # кодировка, в которой названия файлов отдаются клиентам
    dos charset = cp1251
    
    # для iPhone iPad
    vfs objects = catia fruit streams_xattr
    fruit:matadata = stream
    fruit:model = MacSamba
    fruit:veto_allpedouble = no
    fruit:posix_rename = yes
    fruit:zero_file_id = yes
    fruit:wipe_intentionally_left_blank_rfork = yes
    fruit:delete_empty_adfiles = yes
    fruit:time machine = yes
    
    #============================ Share Definitions ==============================
    [media]
       comment = Media
       path = /home/media
       public = yes
       guest ok = yes
       writable = no
    # показывать или нет в списке ресурсов сервера
    # доступ к ресурсу все равно будет
    ;   browseable = no
    
    [upload]
       comment = Upload
       path = /home/media/upload
       public = yes
       guest ok = yes
       writable = yes
       read only = no
    ;   browseable = no
    

  • Запускаем
    # /usr/local/etc/rc.d/samba_server start
    

  • Логи
    /var/log/samba4


  • Доступ по паролю
    Для сетевых папок Samba server также можно настроить доступ только для конкретных пользователей и(или) групп. Пользователи и группы при этом должны быть локально заведены на сервере. Для каждого пользователя нужно задать отдельный пароль для доступа к сетевой папке. Это делается специальной утилитой:
    # smbpasswd -a user1
    # smbpasswd -a user2
    
    Описание сетевой папки в /usr/local/etc/smb4.conf с доступом только для user1 и user2
    [private_users]
       comment = Private Folder For users
       path = /home/samba_user
       public = no
       guest ok = no
       writable = yes
       read only = no
       browseable = yes
       valid users = user1, user2
    
    Описание сетевой папки в /usr/local/etc/smb4.conf с доступом только для группы samba_group
    [private_group]
       comment = Private Folder For samba_group
       path = /home/samba_for_group
       public = no
       guest ok = no
       writable = yes
       read only = no
       browseable = yes
       valid users = @samba_group
    



Связанные странички:
Asterisk 18. FreeBSD. Модем Huawei E1550.
Обновление портов в FreeBSD 10.1+
Получаем SSL сертификаты от Let's Encrypt при помощи acme.sh.
Asterisk 13. FreeBSD. Модем Huawei E1550.