Как определить, подключен ли SSH-ключ в ansible

#ansible

Вопрос:

При запуске ansible playbook я хочу заблокировать конфигурацию SSH, чтобы запретить вход с паролем, но только при подключении к компьютеру с помощью ключа SSH.

Это для того, чтобы я мог:

  1. Запустите учебник, указав пароль. Это настраивает открытый ключ SSH пользователей.
  2. Запустите playbook еще раз, подключившись с помощью SSH-ключа (чтобы убедиться, что настройка открытого ключа прошла успешно). Затем это отключает вход с паролем на компьютере.

Раньше я делал что-то вроде

 - name: copy secure ssh config over
  copy:
    src: sshd_config
    dest: /etc/ssh/sshd_config
  when: ansible_user_id != 'root'
 

но я перехожу в дистрибутив, где root не может войти в систему по умолчанию, поэтому я вручную создам свою учетную запись, а затем использую ansible с этой новой учетной записью.

Я посмотрел на переменные подключения, но ни одна из них, похоже, не делает то, что я хочу.

Комментарии:

1. Просто в первой задаче настройте ssh-ключ, а во второй-удалите пароль.