Формула openssh-formula

Формула для установки openssh (Open Secure Shell) — набора утилит и библиотек для обеспечения защищенной сетевой связи и аутентификации между компьютерами.

Доступные состояния

Состояние openssh

Мета-состояние (состояние, которое включает в себя другие состояния).

Устанавливает пакет openssh из целевого репозитория. Имеет зависимость от openssh.package через список include.

Состояние openssh.package

Устанавливает только пакет openssh.

Состояние openssh.clean

Мета-состояние (состояние, которое включает в себя другие состояния).

Отменяет все действия, выполненные в метасостоянии openssh, в обратном порядке, т.е. удаляет пакет и удаляет целевой репозиторий (если он был импортирован). Имеет зависимость от openssh.package.clean через список include.

Состояние openssh.package.clean

Удаляет пакет openssh.

Пример файла pillar.example

openssh:
  # Переопределите значение map.jinja
  lookup:
    # Укажите параметры пакета
    pkg:
      # Укажите имя пакета для конкретной ОС
      name: osmax-ira-openssh
      # Укажите конкретную версию пакета. Если значение представляет собой пустую строку, используется последняя версия
      version: '1.1.0'
    # Задайте параметры openssh
    # Игнорировать/не игнорировать группы доступа при аутентификации. Значение true указывает на то, что группы
    # доступа не будут учитываться при определении прав доступа
    access_groups_ignore: false
    # Дополнительные настройки, связанные с пользовательской настройкой SSH
    config_customize: ''
    # IP-адреса или диапазоны IP-адресов, для которых будет использоваться аутентификация Kerberos при подключении по SSH
    kerberosauthentication_ips: ['*']
    # IP-адреса, для которых разрешена аутентификация по паролю при подключении по SSH
    passwordauthentication_ips: ['*']
    # IP-адреса, для которых будет использоваться аутентификация GSSAPI при подключении по SSH
    gssapiauthentication_ips: ['*']
    # IP-адреса, для которых разрешена аутентификация с использованием открытых ключей при подключении по SSH
    pubkeyauthentication_ips: ['*']
    # IP-адреса, для которых разрешена интерактивная аутентификация при подключении по SSH
    kbdinteractiveauthentication_ips: ['*']
    # задайте группы доступа к openssh
    openssh_access_groups: []

По умолчанию все подключения заблокированы — пустой файл правил блокирует все подключения. Для каждого из правил аутентификации по IP-адресу можно задать следующие директивы:

  • * — разрешение для всех адресов;

    Также для IP-адреса можно добавить подсеть. Для этого необходимо дополнительно указать символ /. Например, */16 — разрешение для всех адресов в подсети 16.

  • !<IP-адрес> — запрет доступа для конкретного адреса;

  • <IP-адрес> — разрешение для конкретного адреса.

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

!199.35.209.1
*

Данный набор директив разрешит определённый вид аутентификации для всех адресов кроме 199.35.209.1

В параметре openssh_access_groups рекомендуется указывать доменные группы пользователей в формате, поддерживаемом Samba: DOMAIN\username. Например, для группы пользователей Local Users в домене localdomain указание группы должно выглядеть следующим образом: LOCALDOMAIN\Local Users.

Также если параметры конфигурации задаются в файле со специальным форматированием, необходимо экранировать спецсимволы. Например, для формата JSON экранируется символ \: LOCALDOMAIN\\Local Users.