Вт. Дек 1st, 2020
samba-logo

Сегодня установим и настроим наш файловый сервер Samba на Ubuntu Server 18.04

Установка Samba на Ubuntu Server 18.04

Для начала необходимо подключиться к нашему серверу Ubuntu 18.04. Для этого воспользуемся утилитой работающей через протокол ssh.

Если Вы настраиваете сервер, к которому у вас есть физический доступ, то на сервере в первую очередь надо настроить доступ по ssh протоколу. Как установить и настроить ssh описано в данной статье.

На  Linux открываем терминал и вводим команду:

ssh user@myhost.ru

С Windows воспользуйтесь утилитой putty

Все, мы в терминале на удаленном компьютере myhost.ru, давайте установим samba:

sudo apt install samba

Настройка Samba

Разработчики Samba настоятельно рекомендуют иметь файл smb.conf как можно более меньшего размера, а также не иметь внутри файла комментариев. Также они рекомендуют как можно более тщательно комментировать все изменения, какие вы делаете. Данные противоречивые рекомендации исполняются следующим образом: мы сделаем файл smb.conf.comments, в котором опишем все, что мы делаем, а потом из него получим рабочий файл smb.conf

И так создаем файл с комментариями:

sudo touch /etc/samba/smb.conf.comments

Внесем в него следующие данные:

[global] # NetBios имя хоста netbios name = SERVER # Режим безопасности security = USER #======================= Сетевые настройки ======================= # Настройка быстродействия Samba socket options = TCP_NODELAY IPTOS_LOWDELAY local master = yes time server = yes read size - 4096 os level = 65 DNS proxy = no # название рабочей группы workgroup = WORKGROUP # имя сервера в сети server string = %h Ubuntu-Server # IP или название интерфейса который будет слушать Samba ;interfaces = 127.0.0.0/8 eth0 #======================= Настройка логирования ======================= # Расположение лог-файла log file = /var/log/samba/log.%m # Максимальный размер лог-файла max log size = 500 panic action = /usr/share/samba/panic-action %d #======================= Настройки аутентификации ======================= server role = standalone server passdb backend = tdbsam obey pam restrictions = yes unix password sync = yes passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . pam password change = yes map to guest = bad user follow symlinks = no #======================= Разное ======================= # Настройки для Windows dos charset = CP866 unix charset = UTF8 store dos attributes = yes # Позволяет не аутентифицированным пользователям получить доступ к общим ресурсам пользователей. usershare allow guests = yes # Файл соответствия пользователей windows к пользователям Unix username map = /etc/samba/smbusers # Пользователь Unix при гостевом доступе guest account = nobody # Запрещенные пользователи invalid users = root administrator admin # Максимальное кол-во одновременно подключившихся сессий usershare max shares = 20 #======================= Расшареные директории ======================= [Smirnov] # Комментарий comment = Личная папка # Расположение директории path = /home/smirnov # Видна ли шара browseable = yes # Права на файлы create mask = 0644 # Права на директории directory mask = 0755 # Только для следующих пользователей valid users = smirnov # Администратор директории с полным доступом admin users = smirnov [Шара] comment = Общая папка path = /home/share # Разрешена ли запись writeable = yes # Гостевой доступ guest ok = yes create mask = 0777 directory mask = 0777 force create mode = 0777 force directory mode = 0777 admin users = smirnov [Торрент] path = /home/torrents writeable = yes guest ok = yes admin users = smirnov

Создаем владельца общих ресурсов и сами директории.

Перейдем под пользователя root

sudo su

Создадим  пользователя в системе, имя пользователя smirnov, его пароль smirnov, при создании сделаем каталог пользователя (ключ -m) и зададим пароль (ключ -p):

useradd -m smirnov -p smirnov

Теперь создадим директорию torrents и share

mkdir /home/{torrents,share}

Назначим нового владельца на только что созданные директории, а также изменим разрешения:

chmod -R 777 /home/{torrents,share} && chown -R smirnov:smirnov /home/{torrents,share}

Создадим копию дефолтного конфигурационного файла на всякий случай:

cp /etc/samba/smb.conf /etc/samba/smb.conf.save

И вообще заведите себе привычку перед любым изменением любого конфигурационного файла делать его резервную копию

Удалим дефолтный конфигурационный файл и создадим новый без комментариев:

rm /etc/samba/smb.conf && testparm -s /etc/samba/smb.conf.comments > /etc/samba/smb.conf

Если все прошло гладко, то рестартуем сервис samba:

/etc/init.d/smbd restart

Проверяем, что все нормально. Подключимся анонимно сами к себе:

smbclient -L SERVER -U%

Для подключения к директории под паролем из сети, также необходимо создать пользователя в samba.

sudo smbpasswd -a smirnov

опция -a добавит и активирует пользователя.

После этого можно будет подключаться к данной директории через сеть (интернет).

Проблемы подключения старых клиентов Wibdows

Если у вас возникает ошибка при подключении по паролю, старых клиентов на Windows и Linux, то для решения необходимо добавить строчку в конфигурационный файл samba:

ntlm auth = yes

После внесения данной строчки, такие клиенты как Windows XP, Ubuntu 10.04 и т.д. смогут подключится к расшариной директории на сервере при помощи логина и пароля, а не как гость.

Статья получилось большой, хотя на самом деле все настраивается за минут 10-ть

[endtxt]

0 0 голос
Article Rating
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x
Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов cookie) с использованием трекеров "Google Analytics" и "Yandex.Metrics". Порядок обработки Ваших персональных данных, а также реализуемые требования к их защите, содержатся в Политике конфиденциальности.
Принять