Samba - установка и настройка: различия между версиями
ALEX (обсуждение | вклад) |
ALEX (обсуждение | вклад) |
||
Строка 69: | Строка 69: | ||
Для начала скопируем полностью пример конфигурационного файла с коментариями в папку, где должен находится рабочий конфиг. | Для начала скопируем полностью пример конфигурационного файла с коментариями в папку, где должен находится рабочий конфиг. | ||
{{root|cp /etc/samba/smb.conf.example /etc/samba/smb.conf}} | |||
В данном файле всё очень подробно прокоментированно, так что есть смысл дочитать его до конца. Если всё же что-то будет не ясно или не до конца понятно то милости просим в страницы мана: | В данном файле всё очень подробно прокоментированно, так что есть смысл дочитать его до конца. Если всё же что-то будет не ясно или не до конца понятно то милости просим в страницы мана: | ||
{{root|man smb.conf}} | |||
После того, как файл настроен необходимо его сохранить в вашем любимом редакторе и запустить сервер самбы: | После того, как файл настроен необходимо его сохранить в вашем любимом редакторе и запустить сервер самбы: | ||
{{root|/etc/init.d/samba start}} | |||
Строка 84: | Строка 84: | ||
Далее добавляем сервер в автозагрузку: | Далее добавляем сервер в автозагрузку: | ||
{{root|rc-update add samba default}} | |||
Рассматривать весь файл конфигурации я не буду, а раскажу, как можно настроить сервер на работу в обычной домашней локальной сети для удобной организации файловой "свалки" с возможность полного доступа к ней всех членов домашней сети, включая выполнение файлов (к примеру удобно воспроизводить видео не скачивая как требует того протокол FTP) | Рассматривать весь файл конфигурации я не буду, а раскажу, как можно настроить сервер на работу в обычной домашней локальной сети для удобной организации файловой "свалки" с возможность полного доступа к ней всех членов домашней сети, включая выполнение файлов (к примеру удобно воспроизводить видео не скачивая как требует того протокол FTP) | ||
Строка 90: | Строка 90: | ||
===Настройка на полный доступ для домашней сети=== | ===Настройка на полный доступ для домашней сети=== | ||
Приведу пример конфига уже с моими коментариями прямо в нём: | Приведу пример конфига уже с моими коментариями прямо в нём: | ||
< | {{file|/etc/samba/smb.conf| | ||
<syntaxhighlight lang="apache" line start="1" line="GESHI_FANCY_LINE_NUMBERS" enclose="div"> | |||
# Samba config file created using SWAT | # Samba config file created using SWAT | ||
# from 192.168.0.104 (192.168.0.104) | # from 192.168.0.104 (192.168.0.104) | ||
# Date: 2008/09/05 17:00:49 | # Date: 2008/09/05 17:00:49 | ||
#Глобальные настройки | |||
[global] | [global] | ||
netbios name = Router_a | |||
#рабочая группа домашней виндовой сети | |||
workgroup = FRC | workgroup = FRC | ||
#Название которое отображается в заголовке окна при заходе на сервер (%v - версия самбы) | |||
server string = Router_a | server string = Router_a | ||
#Говорит о типе доступа на сервер. SHARE - это простая "шара", USER - для доступа по реквизитам логин/пароль | |||
# security = SHARE | |||
security = User | |||
security = | #Всех гостей интерпритируем как не верных юзеров | ||
map to guest = Bad User | |||
log level = 3 | #Степень подробности логов (от 1 до 10) | ||
log level = 3 | |||
log file = /var/log/samba/log.%m | #Путь куда логи сохраняем - %m это имя хоста зашедшего на сервер | ||
log file = /var/log/samba/log.%m | |||
max log size = 10000 | #Максимальный размер лога в килобайтах | ||
max log size = 10000 | |||
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 | socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192 | ||
#Как я понял винда очень не любит когда кто-то выступает в роли мастера и завладевает конектом кроме неё самой | |||
preferred master = No | preferred master = No | ||
local master = No | local master = No | ||
#Не использовать прокси | |||
dns proxy = No | dns proxy = No | ||
#Интерфейсы, которые слушает демон | |||
hosts allow = 192.168.0., 192.168.1. | interfaces = 192.168.0.0/24 | ||
#Разрешённые к коннекту подсети (отсутствие последней цифры означает что она может быть любой) | |||
hosts allow = 192.168.0., 192.168.1. | |||
#read / write share | |||
[secret] | |||
path = /path/to/secret/readwrite/share | |||
read only = No | |||
valid users = username | |||
create mask = 0740 | |||
directory mask = 0750 | |||
guest ok = no | |||
#only read share | |||
[public] | [public] | ||
path = /path/to/public/readable/share | |||
path = / | read only = Yes | ||
valid users = username | |||
read only = | guest ok = no | ||
</syntaxhighlight> | |||
}} | |||
guest ok = | |||
</ | |||
И самое главное не забыть дать права | И самое главное не забыть дать нужные права к папкам с шарами | ||
{{root|chmod 750 /path/to/share/samba}} | |||
==Ссылки== | ==Ссылки== |
Версия 12:26, 26 ноября 2012
Samba - это программа работающая по протоколу smb или cifs, способная обеспечивать взаимодействие систем на базе Linux с системами гед стоит ОС от Microsoft.
Рассмотрим установку Samba и настройку серверной её части для работы в сети Microsoft. То есть мы имеем сервер с установленным на него ОС Gentoo куда и хотим поставить Samba, которая позволит всем компьютерам локальной сети видеть на сервере с ОС Gentoo "расшаренные" папки в стиле того как это делает ОС Windows.
Установка
Для установки в Gentoo воодим:
При этом используются следующие USE флаги:
Use Flags: acl automount kerberos pam swat syslog (?)
- acl - Include support for Kerberos. Enables Access Control Lists. The ACL support in Samba uses a patched ext2/ext3, or SGI's XFS in order to function properly as it extends more detailed access to files or directories; much more so than typical *nix GID/UID schemas
- automount - Enables automount support
- kerberos - Adds kerberos support for authentication to AD
- pam - Include support for pluggable authentication modules (PAM). This provides the ability to authenticate users on the Samba Server, which is required if users have to login to your server. The kerberos USE flag is recommended along with this option
- swat - Includes the files necessary to use the Samba Web Administration Tool (SWAT)
- syslog - для логирования
При этом автоматом поставится пакет sys-apps/xinetd. Если нет, то его необходимо установить (emerge xinetd).
Далее добавим его в автозагрузку:
Далее правим конфиг Swat, где включаем его (по умолчанию он выключен):
Обратите внимание на опцию disable = yes которую надо исправить в соответствии с моим конфигом:
service swat
{
port = 901
socket_type = stream
protocol = tcp
wait = no
only_from = localhost
user = root
server = /usr/sbin/swat
log_on_failure += USERID
disable = no
}
Так же я исправил опцию only_from для указания интерфейса который будет слушаться. При указании 0.0.0.0 - будут слущаться все интерфейсы. По умолчанию стоит localhost. Так же можно изменить и порт - port.
После этого выполним следующую команду, которая позволит установить пароль для пользователя root для самбы:
Далее логинимся по адресу http://localhost:901 и, введя пароль и логин root'а настраиваем самбу через веб!
hosts: files dns wins
Настройка сервера
В первый раз ИМХО есть смысл настроить сервер врчуную через конфиг, а потом уже управлять им и подстраивать его можно будет через веб интерфейс Swat.
Для начала скопируем полностью пример конфигурационного файла с коментариями в папку, где должен находится рабочий конфиг.
В данном файле всё очень подробно прокоментированно, так что есть смысл дочитать его до конца. Если всё же что-то будет не ясно или не до конца понятно то милости просим в страницы мана:
После того, как файл настроен необходимо его сохранить в вашем любимом редакторе и запустить сервер самбы:
Кстати заметте, что при перезапуске сервера через консоль, он автоматически в дополнение к демону smbd перезапускает в качестве зависимости и демон nmbd, что я и советую делать при рестарте через веб админку.
Далее добавляем сервер в автозагрузку:
Рассматривать весь файл конфигурации я не буду, а раскажу, как можно настроить сервер на работу в обычной домашней локальной сети для удобной организации файловой "свалки" с возможность полного доступа к ней всех членов домашней сети, включая выполнение файлов (к примеру удобно воспроизводить видео не скачивая как требует того протокол FTP)
Настройка на полный доступ для домашней сети
Приведу пример конфига уже с моими коментариями прямо в нём:
# Samba config file created using SWAT
# from 192.168.0.104 (192.168.0.104)
# Date: 2008/09/05 17:00:49
#Глобальные настройки
[global]
netbios name = Router_a
#рабочая группа домашней виндовой сети
workgroup = FRC
#Название которое отображается в заголовке окна при заходе на сервер (%v - версия самбы)
server string = Router_a
#Говорит о типе доступа на сервер. SHARE - это простая "шара", USER - для доступа по реквизитам логин/пароль
# security = SHARE
security = User
#Всех гостей интерпритируем как не верных юзеров
map to guest = Bad User
#Степень подробности логов (от 1 до 10)
log level = 3
#Путь куда логи сохраняем - %m это имя хоста зашедшего на сервер
log file = /var/log/samba/log.%m
#Максимальный размер лога в килобайтах
max log size = 10000
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
#Как я понял винда очень не любит когда кто-то выступает в роли мастера и завладевает конектом кроме неё самой
preferred master = No
local master = No
#Не использовать прокси
dns proxy = No
#Интерфейсы, которые слушает демон
interfaces = 192.168.0.0/24
#Разрешённые к коннекту подсети (отсутствие последней цифры означает что она может быть любой)
hosts allow = 192.168.0., 192.168.1.
#read / write share
[secret]
path = /path/to/secret/readwrite/share
read only = No
valid users = username
create mask = 0740
directory mask = 0750
guest ok = no
#only read share
[public]
path = /path/to/public/readable/share
read only = Yes
valid users = username
guest ok = no
И самое главное не забыть дать нужные права к папкам с шарами
Ссылки
- HOWTO Samba в Gentoo