Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Astra Linux, РЕД ОС, ROSA Linux

Info
titleСмена домена

При выходе из домена желательно очистить директорию, содержащую сертификаты старого домена. Для этого достаточно выполнить команду:

sudo rm -r  /etc/pki/nssdb/

Это необходимо для того, чтобы при входе в новый домен, корневой сертификат старого домена не помешал установке нового.

Для Astra Linux Смоленск и РЕД ОС

Info
titleИспользование домена и клиента с разными ОС

Доменная и клиентская машины не обязательно должны иметь одинаковую операционную систему для корректной аутентификации по смарт-картам. Но тем не менее, если версии SSSD – разные, как у Astra Linux (SSSD 16.1.3) и РЕД ОС (SSSD 2.0.0), то на доменной машине должна быть установлена ОС с более новой версией SSSD.

В обратную же сторону настройка домена возможна.

Настройка сервера. Создание домена FreeIPA и пользователя

Для демонстрации настройки было использовано два стенда. На первом была установлена система Asta Linux Orel, и он Первый был использован в качестве сервера FreeIPA. Он был настроен с помощью следующей последовательности команд:

Code Block
languagebash
titleAstra Linux. Настройка сервера
# Меняем имя сервера в нашем домене astradomain.ad на server
sudo hostnamectl set-hostname server.astradomain.ad

# После данного этапа потребуется перезагрузка!

# установим пакет fly-admin-freeipa-server
sudo apt-get update
sudo apt-get install fly-admin-freeipa-server

# Запустим настройщик freeipa
sudo fly-admin-freeipa-server


Code Block
languagebash
titleРЕД ОС. Настройка сервера
# Меняем имя сервера в нашем домене astradomain.ad на server
sudo hostnamectl set-hostname server.astradomain.ad

# После данного этапа потребуется перезагрузка

# установим пакет ipa-server
sudo yum update
sudo yum -y install bind bind-dyndb-ldap ipa-server*

# Запустим настройщик freeipa
sudo ipa-server-install --mkhomedir


После настройки программы установки сервера FreeIPA отобразится ссылка на вебПосле настройки – программа установки сервера FreeIPA выведет ссылку на Web-интерфейс для управления доменом. Нам Вам потребуется создать нового пользователя, для которого мы и будем настраивать будет настраиваться доступ по токенуРутокену.

Для этого переходим во перейдите на вкладку "Идентификация" → "Пользователи" → "Активные пользователи" и добавляем добавьте нового пользователя. В нашем случае был создан пользователь "user".

Image Removed Image Added


Настройка клиента. Подключение к домену

Info
titleДля пользователей Astra Linux

Если в качестве клиента выступает Astra Linux Smolensk, то на нем должно быть установлено пятое обновление безопасности.


После добавления нового пользователя, переходим к настройке клиента. В качестве клиентского стенда был использован Astra Linux Smolensk с 5ым обновлением безопасности. Настройка  Настройка была осуществлена с помощью следующих команд:

Code Block
languagebash
titleНастройка клиента
# Меняем имя клиента в нашем домене astradomain.ad на client
sudo hostnamectl set-hostname client.astradomain.ad

# После данного этапа потребуется перезагрузка!

# 

# узнайте название вашего соединения. Они могут отличаться
CON_NAME="Проводное соединение 1"
# название интерфейса, которое использует ваше соединение
INT_NAME="eth0"
# адрес dns сервера
DNS_SERVER_IP=10.0.2.37
# отключаем соединение
sudo nmcli con down "Проводное соединение 1$CON_NAME"

# настраиваем сетевую карту соединения - по умолчанию eth0$INT_NAME
sudo nmcli con mod "Проводное соединение 1$CON_NAME" connection.interface-name eth0$INT_NAME

# настраиваем DNS - вместо DNS_SERVER_IP указать IP-адрес сервера DNS. При необходимости указатьуказываем адрес локального сервера DNS. В нашем случае в качестве dnsDNS сервера выступал сам сервер FreeIPA. Поэтому был указан его IP адрес
sudo nmcli con mod "Проводное соединение 1$CON_NAME" ipv4.dns "DNS$DNS_SERVER_IP 8.8.8.8"
sudo nmcli con mod "Проводное соединение 1$CON_NAME" ipv4.ignore-auto-dns yes

# включаем сетевое соединение
sudo nmcli con up "Проводное соединение 1"
$CON_NAME"


### Для Astra Linux
# устанавливаем графический клиент для подключения к домену
sudo apt-get update
sudo apt-get install fly-admin-freeipa-client

# подключаемся к домену через пользователя admin
sudo fly-admin-freeipa-client


### Для РЕД ОС
# устанавливаем графический клиент для подключения к домену
sudo yum update
sudo yum -y install ipa-client

### Для Rosa
# устанавливаем графический клиент для подключения к домену
sudo urpmi --auto-update
sudo urpmi ipa-client libini_config5 compiz ldb-utils

# подключаемся к домену через пользователя admin
sudo ipa-client-install --mkhomedir --enable-dns-updates


После подключения настройщик После подключения, настрйщик должен написать, что обнаружен настроенный клиент в домене astradomain.ad.

Image RemovedImage Added


попробуем Попробуем подключиться к созданному пользователю user:

Code Block
languagebash
titleАутентификация в качестве пользователя user
su user

...

Если после ввода пароля вам удалось аутентифицироваться , как пользователь user, значит настройка прошла успешно.

Настройка аутентификации по

...

Рутокену для клиента

Создание заявки на сертификат

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

Code Block
languagebash
titleУстановка скрипта настройки
sudo apt-get install git
# для red os
sudo yum update
sudo yum install git
 
# для astra и alt linux
sudo apt-get update
sudo apt-get install git
 
# для rosa
sudo urpmi --auto-update
sudo urpmi git

git clone https://github.com/lo1ol/AstraSSSDTokenLogin
cd AstraSSSDTokenLogin

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

Code Block
languagebash
titleЗапуск скрипта настройки
bash ./setup.sh

После ввода пароля в первую очередь необходимо сгенерировать ключ на токене (или использовать сущестущий) и создать запрос на сертификат нашего ключа

Image Removed

Выберем существующий ключ или создадим новый

Image Removed

После выбора ключа, вам будет предложено ввести данные для заявки. Все эти данные являются опциональными, кроме "Общего имени". Туда необходимо ввести имя пользователя, под которым мы хотим аутентифицироваться:

Image Removed

Выберем место, куда сохранить файл с заявкой

Image Removed

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

Image Removed

AktivCo/rutoken-linux-gui-manager --recursive


После того, как настройщик был загружен, его можно запустить двойным щелчком по названию файла token-assistent.run. Если программа открылась вместе с терминалом, то для запуска необходимо создать ярлык, с помощью установщика token-assistent.installer. После запуска установщика появится ярлык token-assistent.desktop, который нужно использовать для запуска программы.

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

Image Added

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

Image Added

Далее вводим PIN-код Рутокена:

Image Added


На Рутокене отсутствует ключевая пара и сертификат выданный УЦ для аутентификации:

Генерация ключевой пары

Откроем список объектов на Рутокене:

Image Added

В первую очередь, сгенерируем ключ. Для этого в окне просмотра объектов выберем опцию для генерации ключевой пары:

Image Added

В окне выбора алгоритма ключа необходимо указать "RSA-2048"

Image Added


Метку ключа можно оставить пустой:

Image Added

Создание заявки на сертификат

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

Image Added

В открывшемся окне выберем опцию для создания заявки на сертификат:

Image Added


Введём данные сертификата. В графе Общее имя необходимо указать имя пользователя, для которого мы создаем сертификат для аутентфиикации: 

Image Added


Далее нас попросят выбрать, создать ли самоподписанный сертификат или создать заявку на сертификат Выбираем "Нет":

Image Added

Укажем путь, куда сохраним заявку на сертификат:

Image Added


Данную заявку в дальнейшем следует отправить в ваш УЦ, для выдачи сертификата.

Созданную Созданую заявку копируем и отправляем на сервер. Распечатать ее можно , например, с помощью команды:

Code Block
languagebash
titleВывод заявки
cat cert.csr

Создание сертификата

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

Чтобы создать сертификат по данной заявке для данного пользователя, опять таки перейдем во на вкладку "Идентификация" → "Пользователи" → "Активные пользователи" и выберем нашего пользователя и в новой вкалдке выбирвем .

На новой вкладке выбираем "Действия"→"Новый сертификат". В открывшемся окне открывшееся окно вставляем нашу заявку.

Image Removed

Image Added

В поле Идентификатор пользователя необходимо указать caIPAserviceCert

Image Added

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

Нажмем "Загрузить" и отправляем отправим сертификат пользователю.

Image RemovedImage Added


Также пользователю потребуется корневой сертификат УЦ, его можно получить во на вкладке "Аутентификация"→"Сертификаты".

Выбираем самый первый сертификат и нажимаем переходим на вкадку вкладку "Действия"→ "Загрузить".

Image RemovedImage Added


После этого полученный сертификат пользователя и УЦ отправляем клиенту.

Финальная настройка на стороне клиента

После получения сертификата полльзователя и УЦ. Снова запускаем наш скрипт

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

Code Block
languagebash
titleЗапуск скрипта настройки
bash ./setup.sh

но на этот раз выбираем вторую вкладку в разделе меню

Image Removed

В следующем окне указываем путь до сертификата пользователя:

Image Removed

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

Image Removed

В следующем разделе указываем путь до сертификата УЦ

Image Removed

Импорт сертификата на Рутокен

Повторно запускаем программу по работе с Рутокенами. Выбираем необходимый токен, вводим PIN-код. Открываем просмотр объектов. В окне просмотра объектов выберем закрытый ключ, для которого выдан сертификат:

Image Added


В открывшемся окне выберем опцию импорта сертификата ключа

Image Added

Укажем путь до сертификата:

Image Added

При желании можно задать метку сертификата:

Image Added


Финальная настройка на стороне клиента

Теперь, когда на Рутокене присутствует ключевая пара и сертификат клиента? можно приступить к финальной настройке. Для этого откроем в меню команд Рутокена выберем пункт Настройки аутентификации в домене FreeIPA.

Image Added

Нам необходимо получить права суперпользователя, для проведения настройки. Поэтому вводит пароль суперпользователя:

Image Added


В открывшемся окне укажем путь до корневого сертификата УЦ:

Image Added


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

Image Removed

Image Added

Лампочка на Рутокене замигает и отобразится окно для ввода PIN-кодаТокен должен был замигать и должно было появиться предложение ввести PIN.

Если все прошло успешно, то можно попробовать осуществитт осуществить аналогичную аутентификацию через greeter.

Image RemovedImage Added