Настройка SSH

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

Шаг 1

Создание конфигурации ресурса

  1. Зайдите в кабинет администратора.
  2. Перейдите в «Ресурсы» и выберите SSH.
  3. Добавьте новую конфигурацию.
  4. Заполните настройки:
    • Название конфигурации: укажите любое имя, например, Kontur.ID.
    • : укажите операционную систему, на которой будет развернут серверный компонент RADIUS.
    • Порт Radius Adapter: Порт адреса машины, на которой будет стоять серверный компонент RADIUS.
    • Shared Secret: общий секрет между RADIUS -адаптером и PAM to RADIUS модулем.
    • Основной фактор: выберите первый фактор  пароль или SSH-ключ.
    • Второй фактор: выберите второй фактор  OTP-код или Push/звонок.
    • Запрос второго фактора: укажите «У всех» или настройте ограничения по локальным пользователям и группам пользователей.
    • Саморегистрация пользователей: включите или отключите саморегистрацию.
    • Домен: укажите домен, если включена саморегистрация или исключения по группам Active Directory.

  5. Нажмите на кнопку «Сохранить и скачать».

В результате вы получите zip-архив, в котором содержатся RADIUS-адаптер и SSH для настройки двухфакторной аутентификации.

Файлы конфигурации уже настроены и готовы к использованию для защиты на второй фактор.

Шаг 2

Установка модуля PAM to RADIUS

Модуль PAM to RADIUS — свободное программное обеспечение, которое позволяет серверу на базе Linux стать клиентом RADIUS для аутентификации. Чтобы настроить взаимодействие между сервером RADIUS-адаптера по протоколу SSH, скачайте модуль PAM to RADIUS.

Установите модуль:

  • Для Debain, Ubuntu выполните команду:
Установка модуля PAM-RADIUS
sudo apt-get install libpam-radius-auth
  • Для CentOS, RedHat, Fedora выполните команды:
Установка пакета epel-release
sudo yum -y install epel-release
Установка модуля PAM-RADIUS
sudo yum -y install pam_radius
Шаг 3

Настройка модуля PAM to RADIUS

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

Настроить взаимодействие модуля PAM to RADIUS и SSH можно автоматически. Перед запуском скрипта configure_ssh.sh установите модуль PAM to RADIUS.

  1. Перейдите в папку «Ssh», которую вы скачали ранее при создании конфигурации ресурса.

  2. Запустите скрипт в терминале:
    sudo ./configure_ssh.sh

После запуска скрипта configure_ssh.sh настройки SSH будут расположены в папке: «/opt/kontur/backups/ssh».

Автоматическое отключение второго фактора

Чтобы отключить проверку второго фактора и вернуть прежние настройки SSH, запустите скрипт в терминале:

sudo ./uninstall_2fa_ssh.sh

После запуска скрипта uninstall_2fa_ssh.sh настройки вернутся в изначальное состояние и будут расположены:

/etc/pam.d/sshd
/etc/ssh/sshd_config
/etc/sssd/sssd.conf

Ручная настройка

Настроить взаимодействие модуля PAM to RADIUS и SSH можно вручную.

Настройка модуля

  1. Откройте или создайте файл конфигурации:
    nano /etc/pam_radius_auth.conf
  2. Заполните настройки:
    • server[:port]: IP-адрес и порт, на котором установлен RADIUS-адаптер. По умолчанию порт 1812, если не указан другой.
    • shared_secret: общий секрет RADIUS-сервера из панели управления Контур.ID или из файла appsettings.json.
    • timeout: время ожидания пользовательской аутентификации. Рекомендуемое время — 60 секунд.
Настройка PAM-RADIUS
# server[:port]        #shared_secret     #timeout (s)
127.0.0.1:1812         secret             60

Настройка двухфакторной аутентификации по SSH-ключу

Настройте конфигурацию модуля PAM to RADIUS.

  1. Откройте файл конфигурации /etc/pam.d/sshd.
  2. Добавьте в файл строку:
auth required pam_radius_auth.so skip_passwd conf=/etc/pam_radius_auth.conf

3. Отключите аутентификацию по паролю — закомментируйте или удалите строку:

@include common-auth

Настройте службу SSHD

  1. Откройте файл конфигурации /etc/ssh/sshd_config.
  2. Включите PAM интерфейс:
Запуск интерактивной аутентификации
KbdInteractiveAuthentication yes
Запуск интерактивной аутентификации в старых версиях
# Название параметра в старых версиях ssh
ChallengeResponseAuthentication yes

3. Включите аутентификацию по SSH-ключу:

PubkeyAuthentication yes

4. Укажите разрешенные методы аутентификации:

AuthenticationMethods publickey,keyboard-interactive

5. Сохраните настроенный файл.

6. Перезапустите службу SSHD:

systemctl restart sshd

Настройка двухфакторной аутентификации по паролю

Настройте конфигурацию модуля PAM to RADIUS

1. Откройте файл конфигурации /etc/pam.d/sshd.

2. Добавьте в файл строку: 

auth required pam_radius_auth.so skip_passwd conf=/etc/pam_radius_auth.conf

Настройте службу SSHD

1. Откройте файл конфигурации /etc/ssh/sshd_config.

2. Включите PAM интерфейс:

Запуск интерактивной аутентификации
KbdInteractiveAuthentication yes
Запуск интерактивной аутентификации в старых версиях
# Название параметра в старых версиях ssh
ChallengeResponseAuthentication yes

3. Сохраните настроенный файл.

4. Перезапустите службу SSHD:

sudo systemctl restart sshd

Настройка формата логина для доменных пользователей

По SSH могут подключаться как локальные, так и доменные учетные записи. Чтобы их отличать логины доменных пользователей передаются вместе с доменом, например, login@domain. Настройте формат логина для доменных пользователей в конфигурационном файле:

  1. Откройте файл конфигурации /etc/sssd/sssd.conf. 
  2. Укажите параметр use_fully_qualified_names со значением True:
Настройка формата логина
use_fully_qualified_names = True

Устранение неполадок

Не работает вход от имени суперпользователя
  1. Откройте файл конфигурации /etc/ssh/sshd_config, если он есть, либо создайте новый.
    sudo nano /etc/ssh/sshd_config

  2. Укажите параметр PermitRootLogin в значении yes.
    PermitRootLogin yes


Двухфакторная аутентификация на ваши ресурсы

Протестируй функциональность бесплатно в течении 2х недель

База знаний