Настройка файлового сервера SAMBA на FreeBSD
Samba – сервер предоставляющий клиентам WinNT (и некоторых других ОС) возможность доступа к файлам и принтерам Linux.
В данном случае я решил создать на UNIX системе две папки, назовем одну “Docs” в которой будет лежать файлы только для чтения, и вторую “Share” в которую любой пользователь может положить все что душе угодно.
Для этого нам понадобиться два установочных cd диска с FreeBSD, потому что в портах самбы нет.
Вставляем второй диск в CD-ROM привод и монтируем его:
# mount_cd9660 /dev/acd0 /cdrom
После чего заходим в sysinstall и переходим по разделам:
Configure — > Packages — > CD/DVD — > net
Ставим два пакета:
Samba-…
Samba–libsmbclient…
Система несколько раз предложит поменять диски, потому что придется менять диски № 1 и 2 местами от 4 до 6. В зависимости от устанавливаемых пакетов.
Теперь переходим непосредственно к настройке.
Для начала заходим в файл inetd.conf
# ee /etc/inetd.conf
И разкоменчиваем следующую строку, для того чтобы получить доступ к web-интерфейсу samba:
swat stream tcp nowait/400 root /usr/local/sbin/swat swat
После чего сохраняем данный файл и переходим в rc.conf
# ee /etc/rc.conf
B добавляем в него:
inetd_enable=”YES”
samba_enable=”YES”
Сохраняемся и перегружаем систему.
После перезагрузки будет видно что файл smb.conf не читабелен.
/etc/rc: WARNING: /usr/local/etc/smb.conf is not readable
/etc/rc: WARNING: /usr/local/etc/smb.conf is not readable
На самом деле это значит, что все настроено правильно, просто пока данного файла не существует.
Существует несколько вариантов настройки самбы, один из них это полное конфигурирование файла smb.conf (это будет долго и не факт что заработает), или комфортная настройка самбы в web-интерфейсе.
Я решил пойти по самому простому и быстрому способу настройки Самбы, через WEB-интерфейс.
Все что нужно, это подключиться по web-интерфейсу к нашему серверу на порт 901.
Пишем:
http://192.168.1.1:901
Если все настроено правильно, то будет видно окно SWAT которое попросит ввести логин и пароль существующего пользователя принадлежащего к группе wheel. Обычно это root.
Так же с помощью команды smbpasswd можно установить каким пользователям разрешить доступ к настройкам самбы.
После авторизации появится панель «Samba Web Administration Tool»
Там есть 8 закладок: HOME, GLOBALS, SHARE, PRINTERS, WIZARD, STATUS, VIEW и PASSWORD.
Нас интересует GLOBALS и SHARE.
Переходим на вкладку GLOBALS:
Сразу в параметре “Change View To:” выбираем “Advanced”
Я не буду рассказывать про каждый пункт, только о самых нужных:
“server string” – название сервера самбы которое будет отображаться в Сетевом окружении.
“security” – должен быть не равен “USER”, я обычно ставлю “SHARE”, иначе в Сетевом окружении данный компьютер отображаться не будет.
Переходим на вкладку SHARE:
Вводим в поле возле кнопочки “Create Share” название новой папки для общего доступа, в данном случаи “Docs” и жмем “Create Share”.
Появятся основные настройки папки:
“Comment” – Комментарий к папке.
“path” – Путь к папке.
Пишем:
# /usr/local/docs или /tmp/share
“read only” – Доступ только на чтение или нет. В данном случае оставляем “YES”.
“available” – Нужно изменить на YES иначе папка не будет отображаться.
С папкой “Share” поступаем точно также, кроме того, что параметр “read only” ставим в значение NO.
С технической точки зрения, на этом все. Но на самом деле есть одна проблема. К папке “Share” хоть и есть доступ, но все равно в ней ничего создавать и редактировать нельзя. Дело в том что нехватает прав на редактирование данного файла. Потому, все что надо, это под рутом воспользоваться командой chmod
chmod 666 путь к файлу который вы указали в «path»
Например:
# chmod 666 /usr/local/docs
После этого все должно работать.