проблема лялькового імені ляльок


10

Я шукав в Інтернеті, і я бачу, що ще кілька людей мали цю проблему в інших списках / дошках. Коли я запускаю sudo puppetd --waitforcert 60 --test вдруге після підписання cert на головному сервері, я отримую цю помилку-

notice: Got signed certificate
warning: Certificate validation failed; considering using the certname configuration option
err: /File[/var/lib/puppet/lib]: Failed to generate additional resources during transaction: Certificates were not trusted: hostname was not match with the server certificate

Я не впевнений, що розумію, в чому проблема, або як її виправити. Тож тому я прошу.

Я встановлюю маріонетку на два сервери моєї локальної мережі. Ляльковий майстер названий "ляльковий", а інший сервер - "ляльковий". Я поставив лялькових в / etc / господарів на лялькових.

під керуванням імені хоста -f відображатиме лялечку та маріонетку на відповідних серверах. Я не впевнений, що ще спробувати. Хтось має уявлення?

Відповіді:


9

Схоже, сертифікат лялькового майстра був створений, коли господаря було названо щось інше, ніж "ляльковий". Відтворіть сертифікат, і ви повинні бути хорошими.

Ім'я, збережене в сертифікаті, повинно відповідати тому, що ви налаштували свого клієнта (точно). Наприклад, якщо ви налаштуєте свого клієнта для підключення до "puppet.domain.com", ви отримаєте помилку, якщо сертифікат буде названий "ляльковий" і навпаки.


У мене це сталося кілька годин тому. Потрібно повноцінне доменне ім’я.
Піт Термаат

додавання .local до клієнта зробив свою справу. незважаючи на те, що ім'я хоста -f не показувало його. Дякую!

1
Можливо, є кращий спосіб, але для мене я rm -rf /var/lib/puppet/sslвідновив сертифікати ЦС, а потім перезапустив
лялькового майстра

6

Якщо ви хочете використати DNS CNAME для свого лялькового майстра, можете запустити лялькового майстра, використовуючи:

puppetmaster --certname cname.domain.org

що дозволить використовувати ляльковий майстер cname.domain.orgзамість повноцінного доменного імені за замовчуванням.


2

Варіант --certname cname.domain.orgпрапора, здавалося, зробив для мене хитрість (на Amazon EC2)


1

ви можете запитати facter (facter fqdn), що таке ім'я хоста, і побачити, чи відповідає це тому, що ви очікуєте. Також подивіться (за замовчуванням) / var / lib / puppet / ssl / і подивіться, як виглядають серти, якщо вони не мають правильних імен хостів, які можуть бути вашою проблемою. Оскільки маріонетка здійснює всю свою комунікацію через HTTPS, вона досить чутлива до роздільної здатності та іменування хоста.


1

Перш ніж встановлювати ляльку на призначених клієнтах та сервері, перевірте файл /etc/resolv.conf і переконайтеся, що перший запис домену в рядку "пошук" - це той домен, під яким потрібно запускати ляльку. Наприклад:

пошук my.puppetdomain.com my.public.domain.com

сервер імен 192.168.1.1 іменний сервер xxx.xxx.1.1

Під час фази установки лялечки сервер ляльок буде генерувати свої сертифікати на основі першого запису пошуку в /etc/resolv.conf. Я виявив це важким шляхом. Якщо ви бачите помилки, пов'язані з сертифікатом, на будь-якому ляльковому вузлі, виконайте такі дії:

1) Відредагуйте /etc/resolv.conf і переконайтеся, що перший домен, перелічений у рядку "пошук", відображає домен, у якому потрібно запускати Лялечку.

2) Видаліть лялечку (залиште каталог / etc / ляльковий недоторканим).

3) rm -rf / var / lib / marioneta

4) Перевстановіть лялечку (це створить новий / var / lib / ляльковий каталог).

5) Виконуючи це на сервері ляльок, запустіть / usr / sbin / puppetmasterd --mkusers (альтернативно, запустіть / usr / local / sbin / puppetmasterd --mkusers ). Це створить усі необхідні файли в / var / lib / puppet, включаючи нові внутрішні сертифікати з використанням відповідного доменного імені.

6) Якщо виконувати це на ляльковому клієнті, запустіть Ляльку в багатослівному режимі, увімкнувши прапор --waitforcert : puppetd -server .puppetdomain.com --waitforcert 60 --тест Цей крок надішле запит на сертифікат на ляльковий сервер.

7) На сервері ляльок перерахуйте сертифікати очікування:

лялька - список

Ви повинні побачити ім'я хоста клієнта ляльки, який робить запит:

puppetclient1.puppetdomain.com

8) На ляльковому сервері підпишіть сертифікат клієнта Лялькового щойно перерахованого:

puppetca - знак puppetclient1.puppetdomain.com

Тоді ви закінчите.

HTH ....


0

Чи вирішуються лялькові та лялькові програми в DNS? Якщо ні, ви можете відредагувати файл / etc / hosts для відображення IP-адрес та імен хостів. IIRC, вам потрібно буде це зробити лише на клієнті.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.