52 0

Настройка Samba сервера

Один из способов взаимодействия по сети между компьютерами Linux и Windows – это настройка Samba в качестве файлового сервера. К файловому серверу можно будет подключаться как с Windows, так и с Linux. На сервере будет находиться 2 каталога – публичный и приватный. Публичному доступ всем, приватному только довереным пользователям.

Настройка файлового сервера на Linux

sudo apt-get update # Обновим базу пакетов
sudo apt-get install -y samba samba-client # Установим пакеты самой samba

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

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.copy

Далее создайте или выберете директорию, к которой будут иметь доступ ограниченное число пользователей:

 sudo mkdir /samba/private

Создайте или выберете директорию, к которой все пользователи будут иметь общий доступ:

sudo mkdir -p /samba/public
cd /samba            # Перейдём к каталогам
sudo chmod -R 0755 public    # Измените режим доступа для public

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

sudo groupadd smbprivate

Создадим пользователей для доступа к каталогу private:

sudo useradd user1

Добавим созданных пользователей в группу:

sudo usermod -aG smbprivate user1

Изменим группу, которой принадлежит приватная директория:

chgrp smbprivate /samba/private

Зададим пароль, с помощью которого пользователь будет подключаться к каталогу:

sudo smbpasswd -a user1    # Пароль будет smbpasswd

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

sudo nano /etc/samba/smb.conf

Заменим содержимое на следующий конфиг:

[global]
 workgroup = WORKGROUP
 security = user
 map to guest = bad user
 wins support = no
 dns proxy = no
[public]
 path = /samba/public # Адрес публичного каталога
 guest ok = yes
 force user = nobody # Имя пользователя с доступом к публичному каталогу
 browsable = yes
 writable = yes
[private]
 path = /samba/private # Адрес приватного каталога
 valid users = @smbprivate # Группа пользователей с доступом к приватному каталогу
 guest ok = no
 browsable = yes
 writable = yes 

Примечание:
global – раздел с общими настройками для Samba сервера
workgroup – рабочая группа Windows, WORKGROUP – значение по умолчанию для всех Windows машин, если вы не меняли самостоятельно
security – режим безопасности, значение user означает аутентификацию по логину и паролю
map to guest – задает способ обработки запросов, bad user – запросы с неправильным паролем будут отклонены, если такое имя пользователя существует
wins support – включить или выключить поддержку WINS
dns proxy – возможность запросов к DNS
public – название общего каталога, которое будут видеть пользователи сети, может быть произвольным и не совпадать с именем директории
path – полный путь до общего каталога
browsable – отображение каталога в сетевом окружении
writable – использование каталога на запись, инверсия read only
guest ok – авторизация без пароля
force user – пользователь по умолчанию
valid users – список пользователей, у которых есть доступ к каталогу, через @ указывается unix-группа пользователей

testparm -s # Проверить настройки в smb.conf

В настройках iptables, откроем следующие порты:

iptables -A INPUT -p tcp -m tcp --dport 445 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 137 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 138 -j ACCEPT 
iptables -A INPUT -p tcp -m tcp --dport 139 -j ACCEPT

Если у вас ufw:

 sudo ufw allow 445
sudo ufw allow 137
sudo ufw allow 138
sudo ufw allow 139
sudo service smbd restart    # Перезапустим сервер чтобы изменения вступили в силу

Подключение к Samba серверу на Linux

Чтобы подключаться к серверу, необходимо установить клиент:

sudo apt-get install smbclient

Для подключения используйте следующий формат команды:

 smbclient -U Пользователь \\IP-адрес\Каталог

Пример

smbclient -U nobody \\192.168.0.10\public

Для публичного каталога используйте имя пользователя nobody, пароль оставляем пустым.
Также можно монтировать каталог Samba сервера, для этого установите дополнительный пакет:

 sudo apt-get install cifs-utils

Для монтирования используйте следующий формат команды:

mount -t cifs -o username=Пользователь,password= //IP-адрес/Каталог /Точка/монтирования

Пример

mount -t cifs -o username=nobody,password= //192.168.0.10/public /media
Tagged with: ,

RELATED ARTICLES

LEAVE YOUR COMMENT

Your email address will not be published. Required fields are marked *




Скоро останутся лишь две группы работников: те, кто контролирует компьютеры, и те, кого контролируют компьютеры. Постарайтесь попасть в первую.

technicscoffee.com

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

Категории