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
— указание версии протокола SMBrw\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
обновляем конфигурацию systemdsystemctl 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
обновляем конфигцрацию systemdsystemctl 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
Опубликовано
Содержание
- Как предоставить общий доступ из 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 в нескольких статьях на блоге! Удачи!
Сейчас практически в каждом доме в каждой организации есть свое сетевое хранилище. С помощью которого происходит обмен данными и хранение их. Поэтому подключить сетевой диск должен уметь каждый пользователь. Как подключить общею папку в Windows знают наверно практически все, а вот в Linux сделать это сможет далеко не каждый. Поэтому сегодня расскажу как можно подключить общею сетевую папку в Astra Linux редакции Orel.
Рекомендую прочитать следующие статьи на тему настройки операционной системы Astra Linux.
Как изменить тему экрана блокировки
Как настроить электропитание
Как настроить менеджер файлов
Горячие клавиши для управления менеджером файлов
Изменение параметров мыши
Как подключить общею папку в Astra Linux редакции Orel
Для начала необходимо создать папку к которой будем монтировать сетевой диск. Сделать это можно через графическую оболочку. Обычно диски монтирую в каталог /mnt/.
Если вы видите сообщение «Невозможно создать папку» значить у вас нет на это права.
В этом случае нужно придется воспользоваться терминалом.
Открываем файловый менеджер MC, он облегчает работу с терминалом. По умолчанию в Astra Linux он уже установлен. Необходимо лишь запустить его с правами суперпользователя введя следующею команду.
sudo mc
После чего переходим в каталог /mnt/ нажимаем на клавиатуре клавишу F7 вводим имя папки например, FS и создаем её.
Теперь вводим команду для монтирования сетевого диска.
sudo mount -t cifs //10.0.0.248/share /mnt/fs -o username=guest
10.0.0.248 — адрес сервера где расположена сетевая папка
share — название папки которую подключаем
/mnt/fs — каталог в Astra Linux к которому будет смонтирован сетевой диск
Теперь открываем файловый менеджер и проверяем подключился ли сетевой диск.
На этом подключение сетевого диска в Astra Linux завершено. Мы подключили общею папку доступ к которой открыть всем пользователям.
Должен стоять 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/
Автоматический поиск компьютеров и их ресурсов не всегда хорошо работает.
Источник: 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, позволяя обмениваться файлами и работать совместно.