Данная статья применима к:
Astra Linux Common Edition 2.12.40
Для Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.6 см. статью Samba с поддержкой Heimdal Kerberos в Astra Linux Special Edition 1.6
Применимость Samba MIT и Samba Heimdal
В дистрибутивах Astra Linux доступны две версии Samba:
- версия MIT (далее - Samba MIT);
- версия Heimdal (далее Samba Heimdal);
Необходимость применения той или иной версии Samba определяется используемой версией системы аутентификации Kerberos, которая также может быть представлена в версиях MIT и Heimdal (в основной состав ОС Astra Linux входит Kerberos MIT).
В системах управления доменами Контроллер ЕПП FreeIPA в Astra Linux или Astra Linux Directory (ALD) для авторизации используется Kerberos MIT, соответственно, в случае применения Samba Heimdal в таких системах не будет работать авторизация Kerberos (однако в остальном версии Samba полностью совместимы как по командам, так и по протоколам передачи данных).
Как проверить, установлена ли Samba с поддержкой Heimdal
Проверить установленную версию Samba можно командой:
Установка Samba Heimdal
Пакеты версий Samba MIT и Samba Heimdal имеют одинаковые названия, поэтому при установке Samba следует внимательно следить за источниками установки пакетов. Samba Heimdal несовместима со многими пакетами, входящими в основной репозиторий Astra Linux и использующими авторизцию Kerberos MIT, поэтому устанавливать Samba Heimdal желательно на машину в базовой конфигурации ОС, и при установке необходимо в обязательном порядке контролировать возможные изменения в составе пакетов.
Предполагается, что установка выполняется в системе, где настроен доступ к сетевому репозиторию Astra Linux. Файл /etc/apt/sources.list имеет вид:
deb https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable main contrib non-free
Пакет Samba Heimdal доступен в том же репозитории как отдельный компонент репозитория smb-heimdal. Для включения установки пакетов из этого компонента репозитория в файл /etc/apt/sources.list добавить отдельную строчку:
deb https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable main contrib non-free deb https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable smb-heimdal
После внесения изменений обновить каталог пакетов:
samba:
Установлен: (отсутствует)
Кандидат: 2:4.12.5+dfsg-3astra.ce4
Таблица версий:
*** 2:4.12.5+dfsg-3astra.ce4 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal amd64 Packages
100 /var/lib/dpkg/status
2:4.9.5+dfsg-5astra.ce6 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/main amd64 Packages
- 2:4.12.5+dfsg-3astra.ce4 из компонента репозитория stable/smb-heimdal
- 2:4.9.5+dfsg-5astra.ce6 из компонента репозитория stable/main
Перед установкой Samba Heimdal следует обязательно убедиться в том, что не будут затронуты (удалены) ранее установленные пакеты, для чего выполнить команду имитации установки (ключ -s):
и проверить список устанавливаемых и удаляемых пакетов.
В примере выше Samba Heimdal имеет версию (4.12.5) выше, чем Samba MIT (4.9.5), и, так как по умолчанию будет установлена более высокая версия, установку Samba Heimdal можно выполнить просто командой:
создать файл /etc/apt/preferences.d/00-smb-heimdal со следующим содержимым:
Package: * Pin: release c=smb-heimdal Pin-Priority: 1001
Где:
Строка Pin: release c=smb-heimdal определяет компонент репозитория smb-heimdal;
Строка Pin-Priority: 1001 задает пакетам из этого репозитория приоритет установки (приоритет более 1000 задает установку даже с понижением версии).Обновить каталоги пакетов:
sudo apt updateПроверить приоритеты:
sudo apt-cache policy sambaВ примере выше видно, что пакету из компонента stable/smb-heimdal задан приоритет 1001.
samba:
Установлен: (отсутствует)
Кандидат: 2:4.12.5+dfsg-3astra.ce4
Таблица версий:
2:4.12.5+dfsg-3astra.ce4 1001
1001 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal amd64 Packages
2:4.9.5+dfsg-5astra.ce6 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/main amd64 PackagesВыполнить проверку:
sudo apt -s install sambaи установку:sudo apt install samba
Удаление Samba Heimdal
Для удаления Samba Heimdal:
Отключить компонент репозитория smb-heimdal и обновить каталоги пакетов:
sudo apt updateПроверить версии установленных пакетов и samba и libtdb1:
apt-cache policy samba libtdb1
apt-cache policy samba libtdb1
samba:
Установлен: 2:4.12.5+dfsg-3astra.ce5
Кандидат: 2:4.12.5+dfsg-3astra.ce5
Таблица версий:
*** 2:4.12.5+dfsg-3astra.ce5 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal amd64 Packages
100 /var/lib/dpkg/status
2:4.9.5+dfsg-5astra.ce6 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal amd64 Packages
libtdb1:
Установлен: 1.4.3-1
Кандидат: 1.4.3-1
Таблица версий:
*** 1.4.3-1 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal stable/smb-heimdal amd64 Packages
100 /var/lib/dpkg/status
1.3.16-2 900
900 https://dl.astralinux.ru/astra/stable/2.12_x86-64/repository/ stable/smb-heimdal stable/main amd64 PackagesВыполнить команду установки пакетов, указав версии пакетов samba* и libtdb1, которые нужно установить (для краткости версия samba задана переменной ver):
ver=2:4.9.5+dfsg-5astra.ce6
sudo apt install samba-common-bin=$ver smbclient=$ver libsmbclient=$ver samba-libs=$ver libwbclient0=$ver samba-common=$ver python-samba python-tdb libtdb1=1.3.16-2
После выполнения указанных команд серверная часть Samba Heimdal будет удалена, клиентская часть будет заменена на клиентскую часть Samba MIT.