Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление


Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), РУСБ.10015-10
  • Astra Linux Special Edition РУСБ.10015-17
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10015-03 (очередное обновление 7.6)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1
  • Astra Linux Special Edition РУСБ.10015-16 исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12



Предупреждение
В пакет autofs внесены существенные изменения, в частности опции монтирования "user" и "pass" более не поддерживаются, вместо них следует использовать "username" и "password"



Информация

Autofs - пакет, позволяющий:

  • автоматически подключать различные ресурсы (переносные устройства, жесткие диски, разделяемые сетевые

...

  • ресурсы, RAM-

...

  • диски)

...

  • при их использовании

...

  • ;
  • автоматически

...

  • отключать ресурсы при прекращении их использования.

...

Установка

Пакет autofs входит в стандартные

...

дистрибутивы Astra Linux и может быть установлен с помощью

...

Графический менеджер пакетов synaptic, или из командной строки командой:

...

Command
sudo apt install

...

autofs

Настройка

Основная конфигурация пакета autofs хранится в файле /etc/auto.master.

Каждая

...

строка конфигурации состоит из указания точки монтирования и параметров монтирования.

Далее приведены примеры типовых настроек, подробно формат файла конфигурации описан в

...

Command

man auto.master

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

...

Command
sudo systemctl restart autofs

Для проверки успешности настройки можно перейти в точку монтирования, например, командой 

Информация
cd /mnt/share

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

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

...

Пример монтирования ресурса из статьи про Сетевая файловая система NFS.

Монтируем с использованием autofs ресурс из предыдущего примера 192.168.1.10:/srv/nfsshare/ в ранее созданную точку монтирования /mnt/share. 

Добавим в конец файла /etc/auto.master строку: 

Информация
/mnt /etc/auto.nfs --timeout=60

При этом

  • /mnt указывает корневой каталог для монтирования ресурсов;
  • /etc/auto.nfs указывает файл с описанием правил монтирования ресурсов NFS;
  • timeout указывает время неактивности, после которого ресурс  будет отмонтирован автоматически. Этот параметр указывать не обязательно, таймаут в autofs по умолчанию 300 секунд (5 минут), то есть ресурс будет автоматически отмонтирован после 5 минут бездействия.

...

Далее, создадим файл /etc/auto.nfs с описанием правил монтирования ресурсов NFS.

...

Этот файл должен содержать отдельную строку для каждого ресурса NFS
Формат строки:  {точка_монтирования} [{опции_

...

монтирования}] {адрес_ресурса}.
Точки монтирования будут размещаться в корневом каталоге для монтирования ресурсов, указанном в /etc/auto.master:

Информация

share -fstype=nfs4,rw,soft,intr 192.168.1.10:/srv/

...

nfsshare

Где

  • share – точка монтирования в корневом каталоге монтирования (/mnt/share)
  • -fstype=nfs4,rw,soft,intr – опции монтирования
  • 192.168.1.10:/nfsshare– адрес ресурса

Это создаст новую точку автоматического монтирования /mnt/share/  для ресурса /srv/

...

nfsshare/, экспортируемого сервером с IP-адресом “192.168.1.10”

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

Для настройки автоматического монтирования ресурсов Samba:

  1. Добавить в

...

  1. файл /etc/auto.master строку:

    Информация

     /media/smb    /etc/auto.smb   --timeout=60        # ресурсы samba (windows)

    Файл /etc/auto.smb создавать не требуется, это стандартный сценарий, входящий в состав пакета autofs

  2. Перезапустить autofs.
  3. После

...

  1. перезапуска autofs для

...

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

...

  1. Command

    ls /media/smb/<имя_хоста>

    или

    Command

    ls /media/smb/<IP

...

  1. -адрес_хоста>


Данный способ может не работать с некоторыми серверами Windows. 

...

В таком случае возможно использовать монтирование ресурсов как ресурсов CIFS.

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

(раздел в работе)


Предупреждение

Данный способ монтирования может быть неприемлем с точки зрения безопасности

...

в связи с тем, что пароли хранятся в файле в открытом виде.

Вместе с тем описываемое подключение позволяет использовать ресурсы samba в доверенной локальной сети всем пользователям локальной машины

...

с авторизацией от имени выделенного (

...

непривилегированного) пользователя.

В качестве основы для создания скрипта /etc/auto.cifs использован скрипт auto.smb поставляемый с пакетом autofs5 с небольшими доработками.

Для использования этого способа

...

:

  1. В дополнение к собственно samba установить пакет cifs-utils:

...

  1. Command

    sudo apt install cifs-utils

...

...



  1. Добавить в файл /etc/auto.master

...

  1. строку:

    Информация

    /media/cifs /etc/auto.cifs --timeout=60

...


  1. Создать файл /etc/auto.cifs:

    Информация

    #!/bin/bash
    # This file must be executable to work! chmod 755!
    #set -x
    key="$1"
    key=$(echo $key | awk -F "/" '{print $1}')

    credfile="/etc/user-cifs"

...

  1. username=$(cat $credfile | grep "$key" | awk -F ":" '{print $2}' | awk -F "%" '{print $1}')

...

  1. password=$(cat $credfile | grep "$key" | awk -F ":" '{print $2}' | awk -F "%" '{print $2}')
    opts="-fstype=cifs,file_mode=0644,

...

  1. username=

...

  1. $username,

...

  1. password=

...

  1. $password,

...

  1. uid=

...

  1. $username,

...

  1. gid=

...

  1. $username"
    for P in /bin /sbin /usr/bin /usr/sbin

...

  1. ; do
        if [ -x $P/smbclient ]

...

  1. ; then
           SMBCLIENT=$P/smbclient
           break
        fi
    done

    [ -x $SMBCLIENT ] || exit 1

    $SMBCLIENT --user=

...

  1. $username%$password -gL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- '
    BEGIN { ORS=""; first=1 }
    /Disk/ {
        if (first)

...

  1. { print opts; first=0 }
        dir = $2
        loc = $2
    # Enclose mount dir and location in quotes
    # Double quote "$" in location as it is special
        gsub(/\$$/, "\\$", loc);
        print " \\\n\t \"/" dir "\"", "\"://" key "/" loc "\""
    }
    END { if (!first) print "\n"; else exit 1 }
    '

    #share -fstype=cifs,rw,credentials=/root/.cifs_credentials ://localhost/share
    #public -fstype=cifs,rw,noperm,guest ://localhost/public

    Комментарии к файлу

    1. < opts="-fstype=cifs,file_mode=0644,dir_mode=0755,codepage=866,iocharset=utf8,user=$user_password" > :

...

    1. строка для обеспечения просмотра русских букв на ресурсах windows;

    2. < $SMBCLIENT --user=$user_password -gL $key 2>/dev/null| awk -v key="$key" -v opts="$opts" -F'|' -- ' >  :

...

    1. строка <$SMBCLIENT ...> изменена для обеспечения возможности подключения к samba-ресурсам windows;

    2. < user_password=$(cat $credfile | grep "$key" | awk -F ":" '{print $2}') > :

...

    1. строка добавлена для получения из файла пароля доступа к ресурсу cifs.

  1. Для монтирования ресурсов Windows следует использовать более простую строчку опций монтирования, например для Windows Server 2012:

    Предупреждение
    opts="-fstype=cifs,rw,noperm,username=$username,password=$password"

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

    Информация
    opts="-fstype=cifs,rw,username=$username,password=$password,vers=1.0"


  2. Сделать сценарий auto.cifs

...

  1. исполняемым:

    Command
    sudo chmod 755 /etc/

...

  1. auto.cifs

...

...


  1. Создать файл /etc/user-cifs с паролями доступа к ресурсу cifs

...

  1.  вида:

    Информация
    ХОСТ1:ПОЛЬЗОВАТЕЛЬ%ПАРОЛЬ
    ХОСТ2:ПОЛЬЗОВАТЕЛЬ%ПАРОЛЬ

...


  1. Информация
    Имя пользователя следует указывать без имени домена или рабочей группы.


  2. В целях безопасности

...

  1. ограничить права доступа к файлу /etc/user-cifs, оставив доступ только для пользователя root

...

  1. :

    Command

    sudo chmod 600 /etc/user-cifs


  2. Перезапустить autofs:

    Command
    sudo systemctl restart autofs


  3. Обратиться для проверки в командной строке к ресурсу samba:

...

  1. Command

...

  1. ls /media/cifs/ХОСТ1


Монтирование CIFS ресурсов c авторизацией через Kerberos

Если монтирование выполняется на компьютере с настроенной авторизацией через Kerberos, то монтровать ресурсы можно с помощью принципала Kerberos.

Для этого:

  1. Убедиться, что служба CIFS правильно настроена на работу с Kerberos, для чего убедиться, что в файле /etc/request-key.d/cifs.spnego.conf пристутвует опция -t, а если её нет - то добавить её. В итоге содержимое файла должно быть следующее:

    Информация

    create cifs.spnego * * /usr/sbin/cifs.upcall -t %k


  2. Получить/обновить билет Kerberos (если монтирование делается от имени суперпользователя, то и билет должен быть получен от суперпользователя):

    Command
    kinit <имя_пользователя>


  3. Убедиться, что принципал получен:

    Command
    klist


  4. Выполнить для проверки окманду монтирования (для примера монтируется ресурс //server.windomain.ru/share в каталог /mnt):

    Command
    mount -t cifs //server.windomain.ru/share /mnt -o sec=krb5