Astra linux smb подключение к windows

Источник: cnews.ruИсточник: cnews.ru Astra Linux и Windows – 2 сильно отличающиеся операционные системы, но иногда может возникнуть необходимость интеграции этих двух систем для обмена файлами и совместной работы. В этой статье мы рассмотрим, как можно использовать Samba – инструмент, позволяющий обеспечить взаимодействие между Linux и Windows на уровне сетевых файловых систем.

Установка Astra Linux

Установка Astra Linux является первым шагом. Если вы еще не установили Astra Linux, следуйте официальным инструкциям по установке, предоставленным разработчиками.

Установка и настройка Samba в Astra Linux

Samba – это набор утилит, которые позволяют Linux и Windows обмениваться файлами и принтерами по сети. Для установки Samba на Astra Linux выполните следующую команду:

sudo apt-get install samba

После установки Samba вам нужно настроить ее для обмена файлами. Все настройки Samba хранятся в файле /etc/samba/smb.conf. Для редактирования этого файла используйте текстовый редактор nano:

sudo nano /etc/samba/smb.conf

В этом файле вы можете создать новые разделы (shares), которые будут доступны из Windows. Например, для создания общего каталога с именем «shared» выполните следующие действия:

В конец файла добавьте следующий раздел:

[shared]
   path = /home/user/shared
   read only = no
   guest ok = yes

Создайте каталог, который вы указали в настройках (в данном случае /home/user/shared):

mkdir /home/user/shared

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

sudo service smbd restart

После этих шагов каталог shared будет доступен из Windows через сеть.

Интеграция Astra Linux с Windows

Для доступа к общему каталогу из Windows откройте проводник, введите \<IP-адрес-Astra-Linux>\shared в адресную строку и нажмите Enter. Замените <IP-адрес-Astra-Linux> на IP-адрес вашего компьютера с Astra Linux.

Таким образом, с помощью Samba можно обеспечить интеграцию между Astra Linux и Windows, позволяя обмениваться файлами и работать совместно.



Linux


1 Minute

При работе в Windows средах часто необходимо подключить имеющуюся общую папку Windows в Linux сервер. Данная инструкция покажет как это сделать.

Данная инструкция подойдет не только для Astra Linux, но и для Ubuntu, Debian etc.

Подготовка
Для монтирования smb шары в Линукс необходимо установить пакет cifs-utils:
apt-get install cifs-utils

После этого в системе появится команда mount.cifs (так же можно использовать просто mount с указанием типа системы -t cifs)

Пример монтирования:
mount.cifs //10.10.0.1/share /mnt/fileshare -o username=tom,password=123
где:
//10.10.0.1/share — путь и имя сетевой шары
/mnt/fileshare — путь куда монтируем шару
-o username=tom,password=123 — опции монтирования, в данном случае указывается имя пользователя и пароль.

Полный набор опций можно посмотреть выполнив:
man mount.cifs
Наиболее часто используемые:
domain=factory.local — указание домена
vers=2.0 — указание версии протокола SMB
rw\ro — указание режим монтирования либо на чтение , либо на чтение и запись

Включение автомонтирования при загрузке
Для автомонтирования создадим systemd unit.
в каталоге /etc/systemd/system/ создадим файл mnt-fileshare.mount:
nano /etc/systemd/system/mnt-fileshare.mount

при этом имя данного юнита должно отражать путь до точки монтирования. Если мы хотим монтировать в /mnt/some/file имя модулю должно быть mnt-some-file.mount

Вставим в данный файл следующий текст:
[Unit]
Description=Cifs mount
Requires=network-online.target
After=network-online.service
[Mount]
What=//10.10.0.1/share
Where=/mnt/fileshare
Options=username=tom,password=123
Type=cifs
[Install]
WantedBy=multi-user.target

обновляем конфигурацию systemd
systemctl daemon-reload
выполняем монтирование:
systemctl start mnt-fileshare.mount
Проверяем:
ls /mnt/fileshare
должны увидеть содержимое диска.
Включаем монтирование при загрузке:
systemctl enable mnt-fileshare.mount

В данной инструкции имя пользователя и пароль передается в качестве опции в открытом виде, что не безопасно. Для cifs предусмотрена возможность вынести данные реквизиты в отдельный файл с ограниченным доступом.
пример:
создаем файл:
nano /root/.smbcred
заполняем файл реквизитами доступа:
username=tom
password=123

вносим изменения в systemd unit mnt-fileshare.mount:
[Unit]
Description=Cifs mount
Requires=network-online.target
After=network-online.service
[Mount]
What=//10.10.0.1/share
Where=/mnt/fileshare
Options=credentials=/root/.smbcred
Type=cifs
[Install]
WantedBy=multi-user.target

обновляем конфигцрацию systemd
systemctl daemon-reload

монтируем директорию:
systemctll start mnt-fileshare.mount

Полезные ссылки:
https://www.freedesktop.org/software/systemd/man/systemd.mount.html
https://linux.die.net/man/8/mount.cifs

Опубликовано

Должен стоять SAMBA клиент. Смотря какой Windows (точнее версия SMB)
Можно узнать версию SMB в windows, если подключиться к шаре, запустить powershell от администратора, get-smbconnection покажет версию в колонке Dialect.
В linux подключить win шару:
1) не win 10 sudo mount.cifs ///<расшареннаяпапка> -o user=username /media
2) win 10 sudo mount.cifs /// -o user=username,vers=3.0 /media
(win 10 имею ввиду SMB=3, в других win тоже может быть отключен SMB 1)

А если вбить адрес вручную в программе обзора папок
smb://192.168.0.140/share/
Автоматический поиск компьютеров и их ресурсов не всегда хорошо работает.

Пакет samba (с поддержкой MIT Kerberos) входит в стандартные дистрибутивы Astra Linux, но по умолчанию не устанавливается.
Дополнительно, в стандартный дистрибутив входит графический инструмент для настройки sambafly-admin-samba.
Вариант samba с поддержкой Heimdal Kerberos доступен по ссылке.

Быстрая установка

Установку можно сделать из Графический менеджер пакетов synaptic, или из командной строки.
Можно сразу установить графический инструмент администрирования fly-admin-samba, пакет samba при этом установится автоматически:

sudo apt install fly-admin-samba

После установки графического инструмента он станет доступен в меню «Пуск» > «Панель управления» > «Сеть» > «Общие папки (Samba)»

Быстрая настройка и запуск

Для быстрой настройки сервиса запустите графический инструмент:

«Пуск» > «Панель управления» > «Сеть» > «Общие папки (Samba)»

С помощью графического инструмента возможно выполнение большинства действий по администрированию разделяемых ресурсов сервиса samba:

  • Задание имени рабочей группы;
  • Запуск/остановка сервиса;
  • Определение разделяемых ресурсов;
  • Определение списка пользователей;
  • Настройка аутентификации пользователей через Kerberos;

Настройка анонимного разделяемого каталога

Приведенные ниже настройки предоставляют полный доступ как на чтение, так и на запись ко всем файловым объектам каталога всем пользователям без аутентификации. 


Для создания разделяемого ресурса, доступного без аутентификации:

  1. Создать разделяемый каталог, к которому будет предоставлен полный доступ (например, каталог /srv/share):

    sudo mkdir /srv/share

  2. Установить на созданный каталог права доступа 0775 и сделать владельцем пользователя nobody («никто») и группу nogroup («никакая»):

    sudo chown nobody:nogroup /srv/share
    sudo chmod 775 /srv/share

  3. В конфигурационный файл /etc/samba/smb.conf внести следующие исправления:

    1. Убедиться, что в секции [global] присутствует параметр map to guest, имеющий значение Bad User, в случае отсутствия — добавить его в секцию:

      Параметр разрешает работу пользователей, не прошедших аутентификацию, в том числе работу с анонимными разделяемым ресурсами;

    2. Добавить секцию вида:

      [share]
         comment = <Произвольный комментарий>
         guest ok = yes
         force user = nobody
         force group = nogroup
         path = /srv/share
         read only = no

      Параметры force user и force group принудительно обеспечивают для всех подключений к ресурсу подключение от имени nobody («никто») и группы nogroup («никакая»), что ограничивает возможность несанкционированных действий, однако применение этих параметров имеет нежелательный побочный эффект: все файловые объекты, создаваемые на ресурсе имеют владельца  

      Для запрета изменения файловых ресурсов параметр read only привести к виду:

  4. Проверить корректность конфигурационного файла:

    testparm

  5. Перезапустить службу samba, чтобы изменения вступили в силу:

    sudo systemctl restart smbd

.

Тонкая настройка

Основной файл настройки сервиса samba — /etc/samba/smb.conf — содержит значительное количество комментариев по проведению настройки.

После изменения имени рабочей группы в файле /etc/samba/smb.conf
для того, чтобы изменения немедленно стали доступны другим машинам
нужно перезапустить не только сервис samba (smbd), но и сервис nmbd, обслуживающий запросы имён netbios:

sudo systemctl restart smbd

  • Для того, чтобы проверить разделяемые ресурсы samba, доступные в сети, можно использовать команду

    smbtree

    Эта команда выводит дерево рабочих групп, и принадлежащих им ресурсов (файлов, принтеров и пр.) всех серверов samba, доступных в сети.

  • Для работы с конкретным ресурсом можно использовать команду smbclient:
    • Список ресурсов конкретного сервера с именем hostname:

      smbclient -L hostname

    • Анонимная работа с разделяемым ресурсом share предоставляемым сервером hostname:

      smbclient -N \\\\hostname\\share

      После запуска команды в интерактивном режиме доступны команды для просмотра содержимого разделяемых каталогов, создания и удаления поддиректорий и пр. Полный список команд доступен по команде help

Настройка клиентов

Простой доступ к ресурсам

Для доступа к ресурсам следует использовать пункт «Сеть» — «Создать сетевое место» в верхнем меню файлового менеджера, в открывшейся форме ввода указать имя сервиса, и его адрес.

Примеры форматов задания адресов имеются непосредственно в форме ввода.

Монтирование ресурсов

Для монтирования ресурсов на клиентские машины следует установить пакет cifs-utils, который входит в дистрибутивы, но по умолчанию не устанавливается:

sudo apt install cifs-utils

После установки пакета монтирование ресурсов будет доступно командой , например:

sudo mount -t cifs //10.0.10.201/share /mnt -o users,sec=none

Где:

  • //10.0.10.201/share — ресурс «share» на сервере 10.0.10.201
  • /mnt — точка монтирования

Автоматическое монтирование ресурсов

Для того, чтобы сетевой ресурс монтировался при загрузке системы, необходимо в конфигурационный файл /etc/fstab добавить строчку вида:

//10.0.10.201/share /mnt cifs credentials=/root/.smbclient,rw,nosharesock,vers=1.0,soft,noperm 0 0

Комментарий по используемым и возможным опциям:

Опция Комментарий
noauto Запретить автоматическое монтирование ресурса (при загрузке или по команде mount -a).
credentials=

Имя файла, содержащего логин и пароль samba для автоматического монтирования. Формат файла:

username=samba_user_name
password=samba_user_password
domain=astra.ru

Параметр domain можно не указывать, если доменное имя не используется.

Логин и пароль можно указать непосредственно в файле /etc/fstab (опции username= и password=), однако,
следует помнить, что файл /etc/fstab обычно открыт на чтение для всех пользователей,
так что логин и пароль рекомендуется указывать в отдельном файле, с ограниченным доступом.

noperm

Клиент не выполняет проверку прав доступа. Это позволяет предоставить доступ к файловым объектам этой точки монтирования другим локальным пользователям клиентской системы.
Обычно используется, когда сервер поддерживает Unix-расширения CIFS (CIFS Unix Extensions), а идентификаторы пользователей/групп на клиенте и сервере различаются, что не позволяет корректно проверять права доступа.
Этот параметр не влияет на обычную проверку списков контроля доступа (ACL) на целевой машине, выполняемую на сервере (проверка пользовательских ACL на сервере выполняется при монтировании).

nosharesock Принудительное создание на сервере нового отдельного сокета (позволяет создать несколько независимых точек монтирования для разных пользователей).
rw Разрешение на чтение и на запись.
ro Разрешение только на запись.
soft При отказе сервера программы, работающие с примонтированными ресурсами, не зависают, а возвращают ошибку. Это режим по умолчанию.
user Разрешение монтировать от имени непривилегированного пользователя.
vers= Выбор версии протокола SMB. По умолчанию используется версия 1.0.

Автоматическое монтирование ресурсов по запросу

Выполняется с помощью пакета autofs

Содержание

  • Как предоставить общий доступ из Windows к сетевой папке на Linux по логину и паролю?
  • Множественное подключение к серверу или разделяемым ресурсам одним пользователем с использованием более одного имени пользователя не разрешено — как исправить ошибку (samba)?
  • Как предоставить анонимный доступ к  общей сетевой папке samba линукс из сети Windows?
  • Как отключить ввод пароля для разблокирования связки ключей «Основная» при подключении сетевой папки?
  • Как увидеть и подключить общую  сетевую папку Windows в Линукс Астра?
  • Как  настроить автоматические монтирование  сетевой  папки в Астра Линукс?

Друзья, доброго времени! Создание сетевых ресурсов   и организация общего доступа к ним — рутинный навык системных администраторов. Сегодня будем учиться делать это в линукс астра.

Процесc сильно отличается от того, что мы видим в обычно в Windows и новичкам  порой нелегко быстро разобраться. Но результат — безопасная и ясная настройка доступа. Приступим к изучению samba — файлового сервера.

Тонкости SAMBA  обязательно нужно знать и начнем с  общих папок. Предлагаю начать с создания  настроек samba с нуля . В дальнейшем легче будет постигать  более сложные настройки которые предоставляют разработчики. Итак..

Как предоставить общий доступ из Windows к сетевой папке на Linux по логину и паролю?

Установили Линукс  в качестве сервера и хотели привычно открыть доступ к его сетевым папкам для компьютеров сети Windows. А в папку не попасть?

Давайте разбираться. Для начала текущий конфигурационный файл с настройками скопируем куда нибудь в другое место (еще пригодится),а вместо него создадим пустой и настроим его  нуля самостоятельно.

Вызовем терминал (Alt+t). Запустим Midnight Commander с наивысшими правами:

 sudo mc 

..найдем файл smb.conf в папке /etc/samba/smb.conf и  переместим его в другую папку, например в /tls того же каталога:

Вместо него  создадим его пустой аналог c помощью команды «touch»:

 sudo touch /etc/samba/smb.conf 

Чуть позже  начнем наполнять его настройками; сейчас сначала добавим пользователей файлового сервера samba. В нашем примере имя пользователя самба должно совпадать с именем учетной записи пользователя Линукс. А пароль не должен совпадать с паролем учетной записи. Добавим:

 sudo smbpasswd -a superuser 

Чтобы удалить пароль, введите:

 sudo smbpasswd -n superuser 

Активируем созданного пользователя samba:

 smbpasswd -e superuser 

  • где superuser имя  пользователя samba.

Теперь займемся непосредственно созданием сетевой папки. Задача — создать доступный администратору ресурс  по логину и паролю, в который можно попасть с любого компьютера . Создадим папку soft:

 sudo mkdir /media/soft 

Обязательно сменим владельца и группу  (папка создана в корневой файловой системе) на superuser:

 sudo chown superuser:superuser /media/soft 

Предоставим полные права  созданной папке ее новому хозяину:

 sudochmod  777 /media/soft 

Далее, начнем  заполнять наш конфигурационный файл в текстовом редакторе;  откроем его программой  kate (с наивысшими правами):

 sudo kate /etc/samba/smb.conf 

В файл конфигурации необходимо корректно вносить информацию, соблюдая пробелы:

Конфигурационный файл принято разбивать на секции. Каждая секция начинается с квадратных скобок. Глобальная секция содержит настройки касающиеся режимов работы файлового сервера.  И влияет на все что ниже. Имя  нашего общего ресурса — это следующая секция и т.д. Для нашей задачи настройки будут такими:

[global] workgroup = office
server string = server Астра Линукс 2,12 Орел
interfaces = 127.0.0.0/8, 192.168.1.2/24, 192.168.1.3/24

map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
panic action = /usr/share/samba/panic-action %d
security = user
usershare allow guests = yes

# Сетевая папка для админа

[soft] comment = пользовательский прикладной софт
path = /media/soft
create mask = 0775
directory mask = 0775
read only = no
browseable = yes
guest only = no
public = yes
valid users = admin, superuser
writeable = yes

Дополнительно в свойствах созданной папки можно менять  «дискреционные атрибуты» на просмотр, запись и исполнение  и смотреть потом, как это влияет на доступ:

Сохраняем содержимое; теперь нужно перезапустить сервисы samba, чтобы изменения вступили в силу:

 sudo service smbd restart   sudo service nmbd restart 

Множественное подключение к серверу или разделяемым ресурсам одним пользователем с использованием более одного имени пользователя не разрешено — как исправить ошибку (samba)?

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

 sudo adduser admin 

Можно  добавить нового пользователя Линукс Астра и  через «панель управления», там нагляднее:

Далее создать нового пользователя сервера samba под тем же именем:

 sudo smbpasswd -a admih 

Включить (активировать) его:

 sudo smbpasswd -e admih 

В конфигурационном файле smb.conf  подправить параметр «valid users = superuser, admin«,   рестарт служб самбы.   Далее, проверяем настройки файла hosts на  сервере..:

 sudo kate /etc/hosts 

… прописsdftv туда имя компьютера (хоста) на соответствие локальному хосту или назначенный ему локальный IP адрес:

После редактирования hosts машину перезагружаем. Для того, чтобы подробно ознакомиться с параметрами сервера samba, которые мы задали в файле читаем эту статью,

В компьютере с Windows вбиваем в проводник имя компьютера \\homeastra\soft , вводим имя пользователя  и пароль. Можно для автоматического подключения при загрузке подключить нашу папку в качестве сетевого диска:

Если из Windows не удается настроить подключение из за непонятных глюков  чистим сетевой кеш в windows,  так, как это рассказано здесь.

Как предоставить анонимный доступ к  общей сетевой папке samba линукс из сети Windows?

В предыдущем примере  предоставили доступ к сетевой папке по логину и паролю. Но для обмена файлами пользователи часто используют общую гостевую папку, доступ по паролю в нее необязателен.

Сначала создадим гостевую папку для общего доступа:

 mkdir /media/gostevaya 

Выясним ее реальное расположение. Обратите внимание —   наша общая папка опять создана не в домашнем каталоге пользователя, а в файловой системе, это важно:

 realpath gostevaya 

Нужно изменить владельца папки на nobody и назначить соответствующую группу nogroup. По умолчанию самба воспринимает эти имена как гостевые. Один из способов команда chown:

 sudo chown nobody:nogroup /media/gostevaya 

и командой chmod  предоставим полные права на  содержимое :

 sudo chmod 777 /media/gostevaya 

Теперь в настройках файла smb.conf создаем еще одну секцию [gostevaya] со следующими параметрами..:

global] workgroup = office
server string = server ????? ?????? 2,12 ????
netbios aliases = s800 s801 s802 s803
interfaces = 127.0.0.0/8, 192.168.1.4/24, 192.168.1.5./24
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
panic action = /usr/share/samba/panic-action %d
security = user
usershare allow guests = yes

[gostevaya] comment = публичная папка
path = /media/gostevaya
read only = no
guest ok = yes
browseable = yes

[soft] comment = папка с софтом
path = /media/soft
create mask = 0775
directory mask = 0775
read only = no
browseable = yes
guest only = no
public = yes
valid users = admin,superuser
writeable = yes

В этом рабочем файле конфигурации перечислил параметры, значения которых можно менять и смотреть как это влияет на доступ. После чего сохраняем изменения и  перезапускаем службы. samba как  было показано выше. На блоге  позже планирую опубликовать полное описание параметров и настроек из man.

Как отключить ввод пароля для разблокирования связки ключей «Основная» при подключении сетевой папки?

При взаимодействии с сетью Windows (а так же при запуске приложений  Skype и других) Astra Linux каждый раз будет требовать ввода пароля для проверки легальности запуска того или иного потенциально опасного приложения. В качестве такой проверки нужно каждый раз вводить пароль.

Есть возможность отключить эту функцию, или сделать ее использование более удобным. Для этого потребуется пакет «Морская лошадь». Установим его:

 sudo apt install seahorse 

Запуск — команда из терминала

 seahorse 

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

Как увидеть и подключить общую  сетевую папку Windows в Линукс Астра?

Если samba установлен, то можно вывести список ВСЕХ общих  папок командой в терминале:

 sudo smbtree -N 

либо СПИСОК открытых ресурсов на какой либо конкретной станции в сети:

 sudo smbclient -L \\homeastra -n (если вход без пароля)
 sudo smbclient -L \\homeastra -u username  (если вход по паролю)

В графическом режиме через файловый менеджер  можно найти нужную станцию и посмотреть ее общие ресурсы. Если  настройки сетевого доступа по паролю — нужно ввести имя и пароль:

После перезагрузки нужно будет опять вводить пароль. Чтобы сетевая папка автоматически подключалась при загрузке нужно ее примонтировать особым образом.

Как  настроить автоматические монтирование  сетевой  папки в Астра Линукс?

 sudo mount -t cifs -o username=Иван,password=123,uid=1000,iocharset=utf8 //192.168.1.22/Сетевая папка /media/22 

  • где  sudo mount команда на монтирование;
  •  -t cifs команада монтирования файловой системы (пакет cifs установлен по умолчанию в Астра Линукс);
  •  -o включаем  доп.опции монтирования;
  •  username, password имя пользователя и  его пароль (владелец папки);
  • uid 1000  — опция делает владельцем папки текущего пользователя линукс;
  • указание кодировки iocharset=utf8 помогает «понимать» русские символы в имени файлов и папок;
  • //192.168.1.22 адрес компьютера в сети или его имя;
  • /media/22 точка монтирования, в конечной папке «22»

Чтобы избежать ошибки BAD UNC при монтировании, перед IP адресом или именем компьютера обязательно должна быть двойная косая черта!

Далее,  надо сделать автоматическое монтирование сетевой папки при загрузке . Для этого размонтируем пока нашу шару:

 sudo umount  /media/mar 

И внесем изменения в файл /etc/fstab. Данные пользователей и пароли принято прятать. Файл fstab может открыть посторонний и легко получить пароли  других компьютеров. Нужно создать текстовый файл samba22

 sudo kate /samba22 

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

 username=Иван   password=123 

Узнаем путь до файла:

 realpath samba22 

В моем примере файл находится в папке home/superuser/samba22

Изменим права на файл samba22, чтобы другие пользователи не могли его просматривать и изменять:

 sudo chmod 600 /home/superuser/samba22 

теперь можно безопасно  использовать содержимое нашего файла samba22 в команде следующего вида:

//192.168.1.22/Сетевая папка /media/22 cifs credentials=/home/superuser/samba22,uid=1000,iocharset=utf8,nofail 0 0

Откроем на редактирование файл /etc/fstab

 sudo kate /etc/fstab 

И вставим нашу строку в этот файл. После внесенных изменений выполним команду:

 sudo mount -a 

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

Вот и все на сегодня. В одной небольшой статье не охватить все тонкости настроек общих принтеров и папок. Для справки планирую перевод документации по samba в нескольких статьях на блоге! Удачи!

  • Astra linux samba не видит сеть windows
  • Astra linux rdp клиент для windows
  • Astra linux grub windows пароль
  • Astra 4700 драйвер windows 10
  • Astra 4900 umax драйвер для windows 10