- Samba freebsd для windows
- Подготовка сервера
- Установка и настройка Samba4
- Устанавливаем с использованием пакетов:
- Media UniX
- freebsd команды, настройка, установка сервера и не только
- Простейшая Samba на FreeBSD с авторизацией для доступа
- Добавить комментарий Отменить ответ
- Sani4.ru
- Записки Саныча
- Простая Samba (расшара для Window) на FreeBSD с авторизацией для доступа
Samba freebsd для windows
Прежде чем начать настройку samba4, у вас должен быть сервер с установленной FreeBSD 10 и настроенной сетью с доступом к сети Интернет.
Подготовка сервера
Заходим в систему под суперпользователем:
Устанавливаем часовой пояс (у меня московское время) и синхронизируем его с сервером времени:
cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime; ntpdate 0.freebsd.pool.ntp.org; |
Настраиваем задание в cron для автоматической синхронизации времени каждый день в 00:00:
echo ‘0 0 * * * /usr/sbin/ntpdate 0.freebsd.pool.ntp.org’ >> /var/cron/tabs/crontab && crontab /var/cron/tabs/crontab |
pkg update && pkg upgrade |
Установка и настройка Samba4
Устанавливаем с использованием пакетов:
Создаем конфигурационный файл и вносим в него следующее:
ee /usr/local/etc/smb4.conf |
mkdir /data && chmod 777 /data |
Создаем учетную запись smbuser в системе FreeBSD:
pw useradd smbuser |
Теперь создаем учетную запись в samba4:
smbpasswd -a smbuser |
Будет запрошен новый пароль для создаваемого пользователя — введите его два раза. Он не будет виден при вводе — это нормально.
Разрешаем запуск демона samba-server:
echo ‘samba_server_enable=»YES»‘ >> /etc/rc.conf |
service samba_server start |
Если все настроено правильно, при попытке подключиться к общей папке, система потребует ввести логин и пароль — воспользуйтесь данными созданной учетной записи smbuser. После вы увидите общую папку DATA.
Media UniX
freebsd команды, настройка, установка сервера и не только
Простейшая Samba на FreeBSD с авторизацией для доступа
Задача:
Дать доступ к ресурсам, расположенным на FreeBSD-сервере, клиентам с операционной системой от M$ посредством Samba-сервера (протокол SMB/CIFS). Доступ должен предоставляться по логину/паролю хранящихся в самой samb’e, а не в разных протоколах для доступа к службам каталогов.
Задача такого уровня, можно сказать, простая, но с ней сталкиваются довольно часто(особенно дома), тем более она актуально не только для FreeBSD, но и для других Unix-like систем.
Приступим.
Ставим samba34:
cd /usr/ports/net/samba34
make config
Выбираем опции:
Options for samba34 3.4.9
[ ] LDAP With LDAP support
[ ] ADS With Active Directory support
[ ] CUPS With CUPS printing support
[X] WINBIND With WinBIND support
[X] SWAT With SWAT WebGUI
[ ] ACL_SUPPORT With ACL support
[ ] AIO_SUPPORT With Asyncronous IO support
[ ] FAM_SUPPORT With File Alteration Monitor
[X] SYSLOG With Syslog support
[ ] QUOTAS With Disk quota support
[ ] UTMP With UTMP accounting support
[ ] PAM_SMBPASS With PAM authentication vs passdb backends
[ ] DNSUPDATE With dynamic DNS update(require ADS)
[ ] AVAHI With Bonjour service discovery support
[ ] EXP_MODULES With experimental modules
[X] POPT With system-wide POPT library
[ ] MAX_DEBUG With maximum debugging
[ ] SMBTORTURE With smbtorture
ставим:
make BATCH=yes -C/usr/ports/net/samba34 install clean
rehash
в /etc/rc.conf добавляем:
samba_enable=»YES»
# WORKGROUP — название рабочей группы
workgroup = WORKGROUP
# server string -комментарий к серверу, который будет
# виден клиентам, например в проводнике.
server string = vbpc003 smb
# security = user — включаем авторизацию по логину и паролю.
security = user
# hosts allow — разрешить доступ только в указаных подсетях
hosts allow = 10.36.1. 192.168.1. 127.
# load printers = no — не показывать принтеры
load printers = no
# log file — файл журнала
log file = /var/log/samba/log.%m
# max log size — максимальный размер журнала
max log size = 50
# local master = no — говорим демону nmbd не пытаться стать
# локальным мастер-браузером. Да и вообще, домена не будет, поэтому
local master = no
domain master = no
# Запрещаем nmbd делать запросы к DNS
dns proxy = no
# resurs_01 — название открываемого ресурса
[resurs_01]
# comment — комментарий к ресурсу, будет виден пользователям в проводнике m$
comment = resurs_01
# path — открываемая для доступа директория
path = /путь/до/resurs_01
# browseable = yes — отображать ресурс в списке доступных ресурсов.
browseable = yes
# writable = no — запретить запись в открытую директорию
writable = no
# guest ok = no — запретить гостям ходить в resurs_01
guest ok = no
# resurs_02 — не видим в проводнике, попасть туда можно
# явно написав полный путь (\\ip_pc\resurs_02).
# Запрещена запись в resurs_02
# и гостю в доступе отказано.
[resurs_02]
comment = resurs_02
path = /путь/до/resurs_02
browseable = no
writable = no
guest ok = no
# resurs_03 — виден в проводнике,
# запись разрешена
# гостям вход разрешён
[resurs_03]
comment = RW resurs_03
path = /путь/до/resurs_03
browseable = yes
writable = yes
guest ok = yes
стартуем самбу:
/usr/local/etc/rc.d/samba start
после внесения изменений в /usr/local/etc/smb.conf самбу надо всегда рестартовать:
/usr/local/etc/rc.d/samba restart
авторизация для доступа на ресурс samba будет производиться по логину и паролю.
создаём пользователей в самбе через smbpasswd (выполняем от root’a):
smbpasswd -a administrator
New SMB password:
Retype new SMB password:
Added user administrator.
Примечание:
Пользователь administrator должен присутствовать в системе (выполнить cat /etc/passwd для получения информации о имеющихся в системе пользователях)
Учётная запись с именем administrator будет внесена в базу пользователей самбы.
Для отключения учётной записи в самбе:
smbpasswd -d administrator
Disabled user administrator.
Для включения отключённой учётной записи:
smbpasswd -e administrator
Enabled user administrator.
Для удаления пользователя из базы samb’ы:
smbpasswd -x administrator
Deleted user administrator.
Посмотреть активные подключения:
smbstatus
Примечание:
1) не забываем про порты с 137 по 139 в фаерволе для samb’ы, они должны быть открыты.
2) и ещё не забываем про доступ на уровне файловой системы: Если вы открываете через samb’у, например, /путь/до/resurs_03 на запись для пользователя administrator, то этот же пользователь должен иметь права на запись в /путь/до/resurs_03 во FreeBSD. Так как пример наипростейший(домашний вариант, так сказать), то можно сделать в консоли:
chmod 0777 /путь/до/resurs_03
(тоесть дать полный доступ на /путь/до/resurs_03 всем пользователям freebsd) и раздавать права на уровне samb’ы.
Всё изложенное выше — это минимум для организации домашней файлопомойки клиентам с операционной системой от m$ с авторизацией для доступа.
Примечание:
Полезный ресурс со всеми опциями smb.conf
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Sani4.ru
Записки Саныча
Простая Samba (расшара для Window) на FreeBSD с авторизацией для доступа
Понадобилось подключить сетевым диском папку, в которую Пользователи складывают файлы. Для этого в портах есть samba. На момент написания этой заметки были обнаружены 3 порта: /usr/ports/net/samba36, /usr/ports/net/samba4, /usr/ports/net/samba41, я выбрал первую, т.к. для моих задач функционала этой версии более чем достаточно. Начиная с 4ой версии samba тесно интегрируется с контроллером домена, точнее заточена выступать в его роли.
Samba — это программа, позволяющая организовать обращение к сетевым дискам и принтерам с различных операционных системах,например Windows, по протоколу SMB/CIFS. Она состоит из клиентской и серверной части. Это свободное программное обеспечение, выпущенное под лицензией GPL.
Прежде всего, samba, позволит дать доступ к определенным, указанным нами каталогам, по сети. Используя протокол SMB и парольную защиту. Вы сможете копировать нужные файлы, например — для настройки, конфигурирования системы или для бэкапов.
Переходим к установке:
portmaster net/samba41
Выбираем опции:
Описание параметров:
LDAP (With LDAP support) — поддержка LDAP;
ADS (With Active Directory support) — поддержка Active Directory (для сети с доменом);
CUPS (With CUPS printing support) — поддержка сервера печати CUPS (принтсервер);
WINBIND (With WinBIND support) — необходимо для Active Directory (для сети с доменом);
SWAT (With SWAT WebGUI) — WebGui, для управления через веб;
ACL_SUPPORT (With ACL support) — поддержка ACL (Access Control List);
AIO_SUPPORT (With Asyncronous IO support) — поддержка возможности асинхронного ввода-вывода;
FAM_SUPPORT (With File Alteration Monitor) — API для мониторинга за состоянием файла или группы файлов/директорий;
SYSLOG (With Syslog support) — поддержка логирования syslog;
QUOTAS (With Disk quota support) — поддержка дисковых квот;
UTMP (With UTMP accounting support) — поддержка уникального идентификатора для каждого вновь подключенного пользователя;
PAM_SMBPASS (With PAM authentication vs passdb backends) — поддержка синхронизации системных пользователей и пользователей samba;
DNSUPDATE (With dynamic DNS update (require ADS)) — поддержка динамического обновления DNS. Необходимо для Active Directory (для сети с доменом);
AVAHI (With Bonjour service discovery support) — технология Apple, представляющая собою протокол автоматического обнаружения сервисов (служб);
PTHREADPOOL (With pthread pool) — особо не вникал что это означает;
EXP_MODULES (With experimental modules) — поддержка експериментальных модулей;
POPT (With system-wide POPT library) — поддержка системной библиотеки анализа командной строки;
IPV6 (With IPv6 support) — поддержка IPv6;
MAX_DEBUG (With maximum debugging) — включение режима максимальной отладки;
SMBTORTURE (With smbtorture) — утилита для стресс-теста.
После установки сохраняем копию дефолтного конфигурационного файла и приступаем к настройке.
cp /usr/local/etc/smb.conf /usr/local/etc/smb.conf.default
Конфигурационный файл samba, находится в /usr/local/etc/smb.conf
# Название рабочей группы
workgroup = WORKGROUP
# server string -комментарий к серверу, который будет виден клиентам.
server string = my.domain.com.ua
# security = user — включаем авторизацию по логину и паролю.
security = user
# hosts allow — разрешить доступ только в указаных подсетях
allow hosts = 10.0.0.,192.168.0., 127., 212.212.212.212, 121.121.121.121
# load printers = no — не показывать принтеры
load printers = no
# log file — файл журнала
log file = /var/log/samba/log.%m
# max log size — максимальный размер журнала
max log size = 500
# local master = no — говорим демону nmbd не пытаться стать
# локальным мастер-браузером. Да и вообще, домена не будет, поэтому
local master = no
domain master = no
# Запрещаем nmbd делать запросы к DNS
dns proxy = no
netbios name = MY2.DOMAIN
netbios aliases = MY
valid users = my_user
[transmission] writeable = yes
write list = my_user
path = /home/transmission/downloads
guest ok = Yes
[share] writeable = yes
user = my_user
path = /home/share
only user = yes
Запускаем samba:
/usr/local/etc/rc.d/samba start
Или перезапускаем, если была запущена (перезапуск необходим после изменения конфигурации)
/usr/local/etc/rc.d/samba start
Проверить, какая в данный момент, загружена конфигурация samba, мы можем командой:
testparm
Осталось создать пользователя для самбы и пароль, которые будут использоваться для доступа к описанные выше расшарам (выполняем от root’a, добавляемый пользователь должен существовать в системе). Для этого у самбы, есть специальная утилита — smbpasswd
Сначала создаем пользователя, а затем активируем его. Делается это так:
smbpasswd -a my_user
New SMB password:
Retype new SMB password:
Вводим пароль для пользователя my_user и подтверждаем его. Теперь переходим к активации.
smbpasswd -e my_user
Enabled user my_user
Вместо ключа можно использовать: -d для отключения пользователя, -x для удаления, -a для добавления. Посмотреть активные подключения:
smbstatus
И напоследок:
1) В фаерволе для samb’ы должны быть открыты порты с 137 по 139.
2) И ещё не забываем про доступ на уровне файловой системы (права доступа к рашарам со стороны пользователей freebsd и их атрибуты). Если вы открываете через samb’у, например, /home/share на запись для пользователя my_user, то этот же пользователь должен иметь права на запись в /home/share во FreeBSD. Как вариант можнораздавать права на уровне конфига samb’ы, а для /home/share установить полное разрешение всем командной:
chmod 0777 /home/share
или же установить на папку права доступа для владельца my_user
chown -R my_user /home/share
Итак необходимый минимум для организации простой расшары, защищенной паролем без доменов и их контроллеров выполнен. Теперь в проводнике, в строке адреса набираем \\192.168.0.254 (свой адрес), вводим имя пользователя и пароль — перед нами все расшаренные папки. Также любую из них можно подключить как сетевой диск, нажав правой кнопкой мыши на Мой компьютер и выбрав подключить сетевой диск. Если что-то не получилось: проверьте конфиг командой testparm, затем убедитесь что прописанный в конфигурации пользователь действительно существует в системе и активирован smbpasswd -a my_user и smbpasswd -e my_user, а также доступны (открыты) ли порты 137 и 139 в фаерволе.
ДОПОЛНЕНО:
Пример правил ipfw для samba для всех (номера правил свои, ip доступа также можно ограничить):
# samba
add 660 allow tcp from any to me 138,139,445 setup keep-state
add 661 pass udp from any 139 to me 139 keep-state