- Как смонтировать сетевую папку Windows/Samba в Linux
- Настройка автоматического монтирования сетевой папки в Linux
- Операционные системы Astra Linux
- Как создать сетевую папку на Linux Астра чтобы был доступ из сети Winows или Линукс?
- Как предоставить общий доступ из Windows к сетевой папке на Linux по логину и паролю?
- Множественное подключение к серверу или разделяемым ресурсам одним пользователем с использованием более одного имени пользователя не разрешено — как исправить ошибку (samba)?
- Как предоставить анонимный доступ к общей сетевой папке samba линукс из сети Windows?
- Как отключить ввод пароля для разблокирования связки ключей «Основная» при подключении сетевой папки?
- Как увидеть и подключить общую сетевую папку Windows в Линукс Астра?
- Как настроить автоматические монтирование сетевой папки в Астра Линукс?
Как смонтировать сетевую папку Windows/Samba в Linux
Сетевая папка Windows может быть доступна в файловых менеджерах Linux как любая другая локальная папка. Для этого её нужно смонтировать. После монтирования не придётся использовать консоль для просмотра списка файлов и скачивания или закачивания файлов.
Начните с установки пакета cifs-utils.
В Debian, Linux Mint, Ubuntu, Kali Linux и производных выполните:
В Arch Linux, BlackArch и производных выполните:
Предыдущие команды smbtree и smbclient понимали имена компьютеров Windows, такие имена как HACKWARE-MIAL. Монтирование выполняется с помощью команды mount, которая такие имена не умеет обрабатывать без помощи преобразования имён DNS. Поэтому при монтировании можно либо:
- Использовать вместо имён компьютеров IP адрес. В этом случае у компьютера с сетевой папкой должен быть постоянный (статичный) IP адрес
- Либо настроить преобразование имён для компьютеров Windows. Это можно сделать, например, с помощью файла /etc/hosts. Кстати, в этом случае у компьютера с общей папкой также должен быть постоянный IP адрес (смотрите Как настроить локальный DNS используя файл /etc/hosts в Linux)
В общем, в любом случае настройте в роутере или в самой Windows постоянный локальный IP.
Если вы хотите настроить преобразование имён с помощью файла /etc/hosts, то откройте его:
И добавьте туда запись вида
Например, у меня IP_АДРЕС это 192.168.0.101, а именем компьютера является HACKWARE-MIAL, тогда я добавляю следующую запись:
Пингуем по имени компьютера Windows, чтобы убедиться, что всё сработало:
Теперь нам нужно создать точку монтирования — папку, где появятся файлы из шары. Я создаю папку /mnt/share:
Чтобы не возникало проблем с правами доступа, папка, куда монтируется шара (например, /mnt/share/), должна принадлежать текущему пользователю Linux — если вы создавали папку без sudo, то она уже принадлежит обычному пользователю. Но если вы создавали папку с sudo (например, иначе это невозможно сделать в /mnt/), то вам нужно поменять её владельца командой вида::
Например, чтобы поменять владельца папки /mnt/share/ на текущего пользователя:
Теперь для монтирования сетевой шары Windows нужно запустить команду вида:
В этой команде вы должны вставить свои значения для
- //ИМЯ-КОМПЬЮТЕРА/Папка
- /точка/монтирования
Значение других элементов команды:
- sudo — монтировать шару можно и без прав суперпользователя, но использовать опцию -o, после которой указываются опции для монтирования, можно только с правами root
- -t cifs выбор файловой системы для монтирования
- -o означает, что после этой опции будут перечислены опции для монтирования:
- username=guest,password= — произвольное имя пользователя без пароля — используется для подключение к общей папки, для которой не требуется вход. Вместо этой конструкции можно указать просто guest, но в этом случае на некоторых системах всё равно запрашивается пароль. По моим наблюдениям, пароль запрашивается когда имя текущего пользователя на Linux совпадает с именем пользователя на Windows
- uid=1000 — в качестве владельцев всех файлов в шаре будет указан текущий пользователь Linux
- iocharset=utf8 — эта кодировка позволяет работать с именами файлов, в которых используются не только латинские буквы
К примеру, путь до сетевой шары у меня //HACKWARE-MIAL/Share, её я хочу смотрировать в папку /mnt/share, тогда команда будет следующей:
Вид сетевой папки Windows в Double Commander:
Вид сетевой папки в стандартном проводнике Linux:
Для размонтирования нужно запустить следующую команду (укажите либо точку монтирования, либо ресурсы, который был смонтирован):
Напомню, что в предыдущей части я не только настроил папку для входа без пароля, но на том же самом компьютере и настроил вторую папку с именем ShareRestricted. У этой папки владелец ShareOverlord, а пароль для входа 1234. Для подключения папки, доступ к которой возможен только по паролю, используется та же самая команда, но нужно указать реальные учётные данные:
Чуть дальше очень похожий набор опций, в том числе пароль в открытом виде, мы будем использовать в файле /etc/fstab для настройки автоматического монтирования сетевой папки. Файл /etc/fstab доступен для чтения всем а, следовательно, также доступен всем ваш пароль от Windows в нём. Чтобы обойти эту проблему, можно использовать файл с учётными данными. Это файл содержит только имя пользователя и пароль.
Используя текстовый редактор, создайте файл с учётными данными для входа на ваш удалённый сервер:
В этот файл введите имя пользователя и пароль от Windows:
В моём примере это:
Сохраните файл и закройте редактор.
Измените права доступа к этому файлу, чтобы предотвратить нежелательный доступ к вашим учётным данным:
Посмотрите абсолютный путь до этого файла:
В моём случае абсолютный путь:
Теперь вместо двух опций:
нужно использовать одну опцию, в качестве значения которой нужно указать абсолютный путь до файла с логином и паролем:
Моя команда стала выглядеть так:
Настройка автоматического монтирования сетевой папки в Linux
Автоматически монтируемые файловые системы прописываются в файле /etc/fstab. Откроем этот файл:
Теперь в него нужно добавить строку вида:
Мы добавили опцию nofail, чтобы ОС нормально загружалась даже если не удалось смонтировать данную файловую систему. Ещё добавьте опцию _netdev, эта опция означает, что файловая система находится на устройстве, которому требуется доступ к сети (используется для предотвращения попыток системы смонтировать эти файловые системы до тех пор, пока в системе не будет включена сеть).
Для моего примера это строка:
Сохраним и закроем этот файл. Для проверки выполним:
Если сетевая папка успешно смонтировалась, значит можно выполнить проверку перезагрузкой.
Если нужно смонтировать папку для входа в которую не требуется пароль, то используйте в качестве опции учётные данные «username=guest,password=»:
Либо можно по-прежнему использовать файл .smbcredentials, как это было показано выше:
/.smbcredentials запишите следующее:
Операционные системы Astra Linux
Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».
Astra Linux Common Edition предназначена для автоматизации к оммерческих предприятий и органов государственного управления.
Astra Linux Special Edition предназначена для применения в автоматизированных системах в защищенном исполнении, обрабатывающих информацию ограниченного распространения, включая государственную тайну до степени секретности «особой важности» .
На сайте представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения. Кроме того, предоставлена возможность скачать дистрибутивы и исходные тексты операционной системы Astra Linux Common Edition, а также задать интересующие вопросы разработчикам .
Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!
Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.
Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить на нашем сайте.
Как создать сетевую папку на Linux Астра чтобы был доступ из сети Winows или Линукс?
Друзья, доброго времени! Создание сетевых ресурсов и организация общего доступа к ним — рутинный навык системных администраторов. Сегодня будем учиться делать это в линукс астра.
Процесc сильно отличается от того, что мы видим в обычно в Windows и новичкам порой нелегко быстро разобраться. Но результат — безопасная и ясная настройка доступа. Приступим к изучению samba — файлового сервера.
Тонкости SAMBA обязательно нужно знать и начнем с общих папок. Предлагаю начать с создания настроек samba с нуля . В дальнейшем легче будет постигать более сложные настройки которые предоставляют разработчики. Итак..
Как предоставить общий доступ из Windows к сетевой папке на Linux по логину и паролю?
Установили Линукс в качестве сервера и хотели привычно открыть доступ к его сетевым папкам для компьютеров сети Windows. А в папку не попасть?
Давайте разбираться. Для начала текущий конфигурационный файл с настройками скопируем куда нибудь в другое место (еще пригодится),а вместо него создадим пустой и настроим его нуля самостоятельно.
Вызовем терминал ( Alt+t ). Запустим Midnight Commander с наивысшими правами:
..найдем файл 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?
В предыдущем примере предоставили доступ к сетевой папке по логину и паролю. Но для обмена файлами пользователи часто используют общую гостевую папку, доступ по паролю в нее необязателен.
Сначала создадим гостевую папку для общего доступа:
Выясним ее реальное расположение. Обратите внимание — наша общая папка опять создана не в домашнем каталоге пользователя, а в файловой системе, это важно:
Нужно изменить владельца папки на 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
Запуск — команда из терминала
Теперь можно проверять доступ к папке из Windows; даже если система спросит пароль — ничего не вводите, должна пустить.
Как увидеть и подключить общую сетевую папку Windows в Линукс Астра?
Если samba установлен, то можно вывести список ВСЕХ общих папок командой в терминале:
либо СПИСОК открытых ресурсов на какой либо конкретной станции в сети:
sudo smbclient -L \\homeastra -n (если вход без пароля)
sudo smbclient -L \\homeastra -u username (если вход по паролю)
После перезагрузки нужно будет опять вводить пароль. Чтобы сетевая папка автоматически подключалась при загрузке нужно ее примонтировать особым образом.
Как настроить автоматические монтирование сетевой папки в Астра Линукс?
- где 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
и записать туда имя пользователя компьютера и его пароль в следующем виде, сохранить файл:
Узнаем путь до файла:
В моем примере файл находится в папке 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
И вставим нашу строку в этот файл. После внесенных изменений выполним команду:
Если содержимое сетевой папки появилось в точке монтирования, оно теперь будет появляться и после каждой перезагрузки, конечно если нужный компьютер включен. Теперь вы знаете как это делать и через терминал.
Вот и все на сегодня. В одной небольшой статье не охватить все тонкости настроек общих принтеров и папок. Для справки планирую перевод документации по samba в нескольких статьях на блоге! Удачи!