- это переработка статьи об установке 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