Pull to refresh

Comments 12

В целом можно использовать для этой задачи и ntp и chrony, вопрос скорее привычки и потребности в расширенном функционале chrony (в моей среде он не требуется)

Скажите, а какие плюсы заводить линуксовые сервера в домен? Если только для использовать существующих АД пользователей, то тут можно обойтись просто sss демоном, который имеет доступ чтения в АД.

В моём случае это необходимо потому, что:

  • Через службу каталогов работает часть функционала инвентаризации активов;

  • Я применяю объекты групповой политики к серверам через ADSys для запуска startup-скриптов (но на самом деле применения у модуля масса, в том числе контроль доступа и управление привилегиями sudo);

  • Некоторые сервисы, в которых реализована поддержка Kerberos-аутентификации - требуют наличия у учётной записи компьютера SPN-записи, что невозможно без его ввода в домен;

  • Можно настроить autoenrollment сертификатов через AD CS;

  • Можно получать доступ к другим ресурсам в домене (например, сетевым папкам) без дополнительного ввода пароля, при наличии действующего билета Kerberos.

Если в вашем случае необходима только доменная аутентификация на серверах - можно не вводить их домен, и ограничиться только настройкой sssd и сопуствующих служб и модулей ОС.

А зачем делать вот это:

Stop NTP service before manual time sync

И как вообще будет синхронизироваться время, если служба синхронизации времени не запущена?

Может быть лучше сделать её рестарт и уже потом запустить синхронизацию времени?

Для предотвращения конфликтов доступа к сетевому порту 123/udp и системным часам при ручной синхронизации времени через ntpdate

Ну ansible удобно хостов до тысячи, дальше это как-то так себе

Кидать пароль на все сервера в качестве параметра, при определённом уровне аудита, то же не очень нравиться, можно в том же керберосе получить временный тикет и использовать его как креды для ввода в домен

Ну и связка awx + git + hkv выглядит поинтереснее, чем голый ansible

Интересные вопросы:

  • В целом я не встречал сценарии, при котором придётся массово заливать настолько огромное количество устройств в домен (речь скорее идёт про десятки или сотни хостов в одном инвентаре), поэтому судить не могу;

  • Хорошее замечание, выполняемые команды можно будет взять из разных мест (.bash_history, или же напрямую из памяти при наличии активной сессии), был бы рад услышать про реализацию метода с вводом в домен через тикет Kerberos с использованием ansible;

  • В целом AWX интересный продукт, но сильной потребности в моей среде в нём нет, и имеется достаточный опыт работы с голым Ansible, плюс в скором времени первый ждут определённые реворки в силу монолитности проекта, поэтому может быть в будущем получится раскрыть эту тему и с ним.

десятки это скорее обыденность при разворачивании каких либо стендов на средней большой инфраструктуре

  • при работе linux в AD не так редко встречаются случаи когда необходимо вернуть вывалившиеся хосту обратно, сменить OU с переименованием;

  • как вариант получить тикет на мастере, а потом копировать его на целевые хосты

    
    - name: get krb5 ticket local
    #  no_log: true
      expect:
        command: /bin/bash -c "kinit -c {{ path_to_ticket }} {{ ad_username }} -l 1800s"
        responses:
          .*Password.*|.*Пароль.*: "{{ ad_password }}"
      delegate_to: localhost
      run_once: true
      become: false
    - name: copy krb5 ticket
      copy:
        src: "{{ path_to_ticket }}"
        dest: "{{ path_to_ticket }}"
        owner: root
        group: root
        mode: 0600
    - name: Join AD
      command: /bin/bash -c "export KRB5CCNAME={{ path_to_ticket }}; realm join -v --membership-software=adcli --unattended --computer-ou={{ set_OU }}  exempal_domain.com
    
  • awx по сути запускалка плейбуков с принудительным логированием, которая имеет ролевую модель и позволяет делать привязку к git проектам. Является удобным дополнением к любой другой системе управления linux инфраструктурой.

Благодарю, попробую обкатать такой метод в своей среде!

В целом AWX интересный продукт, но сильной потребности в моей среде в нём нет, и имеется достаточный опыт работы с голым Ansible, плюс в скором времени первый ждут определённые реворки в силу монолитности проекта, поэтому может быть в будущем получится раскрыть эту тему и с ним.

Предлагаю глянуть SemaphoreUI Дениса Гукова.
Настраивается на порядок проще AWX (так как всего один бинарник), всё необходимое там присутствует.

Гляну, благодарю!

Sign up to leave a comment.

Articles