Я использую Puppet для управления ключами SSH на всех своих устройствах, включая несколько Raspberry Pi, но только Raspberry Pi жалуются на отсутствие типа ssh_authorized_key.
Предупреждение: / Stage [main] / Profile :: Users / Пользователь [имя пользователя]: Тип Ssh_authorized_key недоступен. Не удается очистить ключи SSH.
Я использую puppet и puppetserver 6.0.2 в среде, и все мои Raspberry Pi работают под управлением raspbian и обновлены с точки зрения использования пакетов stretch.
Есть идеи, почему тип недоступен?
У вас должен быть установлен модуль puppetlabs / sshkeys_core , если вы используете Puppet 6.x, поскольку тип был отделен от ядра (наряду с несколькими другими типами).
«Тип» - это поле в ресурсе ssh_authorized_key. Его источником является текст самого ключа ssh (файл ~ / .ssh / authorized_keys).
Из документации по марионетке:
ssh_authorized_key { 'nick@magpie.example.com':
ensure => present,
user => 'nick',
type => 'ssh-rsa',
key => 'AAAAB3Nza[...]qXfdaQ==',
}
Тип похож на ssh-rsa или ssh-dsa, например.
Таким образом, ваш ключевой ввод должен выглядеть так:
ssh-rsa AAAAB3Nza[...]qXfdaQ== nick@magpie.example.com
Если первая часть, «ssh-rsa» отсутствует , это может быть одной из причин, по которой вы получаете это сообщение. Если первая часть есть, но это не поддерживаемый тип ключа для вашей ОС raspberry pis, это еще одна причина, по которой вы можете получить это сообщение. Посмотрите в документации по программному обеспечению, что вы используете на своем raspberry pi, чтобы узнать, какие типы ключей поддерживаются.