Заметки о решаемых задачах АйТишников

Сделал - запиши. Нашёл - сохрани :)

Прошу прощения за рекламу на сайте. Я постарался сделать это максимально ненавязчиво и по минимуму. При чтении заинтересовавших вас статей она не будет вам мешать.
И если есть возможность поставить мой сайт в исключения у блокировщика рекламы, я буду очень признателен вам.

Настройка Samba в Ubuntu 16.04

Настройка Samba в Ubuntu 16.04

 

 

 

Есть статья про настройку Samba-сервера, используя графическую оболочку - поглядеть.
Есть статья про настройку режимов безопасности Samba-сервера - поглядеть.



Samba — это программное обеспечение для организации обмена файлами и работы с общими ресурсами между компьютерами под управлением Linux/Unix и операционной системой Windows.



Т.к. мы будем считать, что у нас одноранговая сеть, то нужно озаботиться тем, чтобы рабочие группы машин под управлением Windows и Linux, были одинаковыми — WORKGROUP.



Workgroup я выбрал для примера, у вас рабочая группа может быть любой.



В винде рабочую группу смотрим так:



net config workstation





В строке «Домен рабочей станции» мы видим название нашей рабочей группы.



Желательно, чтобы Samba-сервер имел статический IP-адрес.



Если это так, то пропишем его в файле hosts, Windows-машины



Для этого запускаем командную строку от имени администратора:





Выполняем команду:



notepad C:\Windows\System32\drivers\etc\hosts

В открывшимся файле добавляем строчку с IP адресом компа, на котором будет установлен пакет Samba:



192.168.0.10 ИмяSambaСервера.domain.com ИмяSambaСервера

Где 192.168.0.10 — адрес Samba-сервера



Здесь закончили.



Настройка Samba в Ubuntu 16.04



Ставим Samba и если у кого нет — пакет gksu, для возможности запуска окна настроек Samba:



sudo apt install samba system-config-samba gksu

Теперь переходим к настройке сервера



Создаём резервную копию оригинального файла конфигурации Samba:



sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

После этого, создаём свой файл конфигурации:



sudo gedit /etc/samba/smb.conf

Указываем глобальные настройки файлового сервера.
Копируем в файл эти строки:



[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = SambaSrv
security = user
map to guest = bad user
name resolve order = bcast host
wins support = no
dns proxy = no

Что мы скопировали?
А вот что:



workgroup - рабочая группа, в которой находятся все наши машины
server string - строка коментария, где %v - это макрос, который будет заменён на версию Самбы
netbios name - имя Самба-сервера, которое будет отображаться в Windows
security - по умолчанию выполнять аутентификацию на уровне пользователя
map to guest - это инструкция демону, которая сообщает, что делать с запросами. bad user - означает,
что запросы с неправильным паролем будут отклонены, если такое имя пользователя существует
name resolve order - очередность разрешения IP адресов по NetBIOS имени. bcast - означает отправить
в локальную сеть широковещательный запрос. Если все компьютеры между которыми планируется взаимодействие
находятся в одной сети этот вариант оптимальный.
wins support - не устанавливайте этот параметр в yes если у вас нет нескольких подсетей и вы не хотите,
чтобы ваш nmbd работал как WINS сервер

Сохраняем изменения.



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



Общий доступ к папке в Ubuntu



Создаём папку, к которой будем открывать доступ для всех:



sudo mkdir -p /samba/obmen

Ключ -p разрешает создавать вложенные папки.
~ — создать каталоги в домашней папке пользователя



После того как папка создана, нужно сделать для нее правильные права доступа. Следующие команды разрешают доступ к папке для всех и делают владельцем nobody:



cd /samba
sudo chmod -R 0755 obmen
sudo chown -R nobody:nogroup obmen/

Внесём изменения в файл настройки samba, добавив следующий раздел:



[obmen]
path = /samba/obmen
browsable = yes
writable = yes
guest ok = yes
read only = no

Теперь ваш конфигурационный файл должен выглядеть вот так:



[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = SambaSrv
security = user
map to guest = bad user
name resolve order = bcast host
dns proxy = no

[obmen]
path = /samba/obmen
browsable =yes
writable = yes
guest ok = yes
read only = no

Чтобы применить изменения, перезапустите сервер Samba:



sudo service smbd restart

С анонимным доступом к общему ресурсу мы закончили.



Теперь можем проверить доступность этой папки в Windows-машине.



Нажимаем Win+R и в адресной строке пишем:


\\SambaSrv\obmen



Скрин показывает, что доступ получен, и получен он без вводи логин и пароля, то есть анонимно.



Защищенный общий доступ к папке Ubuntu



Чтобы расшарить папку для Windows в Ubuntu, к которой будут иметь доступ только пользователи из определенной группы, создадим отдельную папку и опишем ее в файле настройки Samba в Ubuntu.



Создаем папку:



sudo mkdir -p /samba/obmen/sec

Устанавливаем права, чтобы доступ к папке получали только пользователи из группы securedgroup.



Создаем группу:



sudo addgroup securedgroup

Настраиваем права:



cd /samba/obmen
sudo chmod -R 0770 sec/
sudo chown -R alex:securedgroup sec

Добавляем настройки в конфигурационный файл samba



Открываем конфигурационный файл



sudo gedit /etc/samba/smb.conf

И добавляем в него этот блок:



[sec]
path = /samba/obmen/sec
valid users = @securedgroup
guest ok = no
writable = yes
browsable = yes

Перезапускаем сервер Samba.



Теперь доступ к общей папке в Ubuntu могут получить только пользователи группы securegroup.



Чтобы проверить как это работает добавим пользователя alex в нашу группу:



sudo usermod -a -G securedgroup alex

Чтобы пользователь мог работать с расшаренными папками в Ubuntu, он должен быть в базе данных Samba.



Создаём для него пароль Samba:



sudo smbpasswd -a alex

После ввода команды будет предложено ввести новый пароль.



Для применения изменений перезагружаем файловый сервер.



Для того, чтобы доступ к папке мог получить только определённый пользователь, заменяем @securedgroup на имя пользователя.



Вот и всё


 

10 октября 2016, 18:32    Александр Linux 0    0 0

 

 

 

 



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.