Чтобы не вводить пароль при выполнении каких-либо действий на любом из этих серверов, мне нужно загрузить свой сертификат ssh на удаленный компьютер:

ssh-copy-id CptBartender@remote

Сейчас... Мне нужно загрузить этот сертификат на более чем 400 серверов, и я пытаюсь найти способ не вводить / вставлять мой пароль много раз.

Вопрос: как я могу автоматизировать это в Windows (с MinGW)? Cygwin, скорее всего, не вариант, потому что он, похоже, скрывается за адским брандмауэром.

Пока что я:

  1. создал скрипт, который будет перебирать каждый пульт, но запрашивает пароль для каждого из них
  2. попытался передать пароль с yes безрезультатно
  3. читать об expect , но не смог найти способ заставить его работать на MinGW
  4. читать о sshpass - так же, как и expect

Я хотя и об AutoIt это, но должен быть лучший способ ...

2 ответа2

1

plink Шпатлевка может принять пароль в качестве параметра командной строки. Он не имеет прямого эквивалента ssh-copy-id , но его можно легко написать, например, запустив команды вручную ...

plink foo@bar -pw baz "mkdir -p ~/.ssh && echo 'ssh-ed25519 AAAA...' >> ~/.ssh/authorized_keys"

... или загрузив файл с помощью pscp .


Кроме того, если expect не будет работать на Windows, конечно, вы могли бы запустить его на одном из этих 400 серверов Linux?

(Кроме того, учитывая цифры, возможно, вам стоит изучить возможность извлечения ключей из LDAP или использования AD/Kerberos? В последних версиях OpenSSH есть хуки для интеграции с LDAP, больше не требующие сторонних патчей.)

0

Вы можете посмотреть на инструмент Putty Plink, как указано выше. Или вы можете подумать об использовании в будущем одной из систем управления конфигурациями, таких как Puppet, Ansible или Chef. Вы можете использовать любой из них, чтобы добавить сертификат на все ваши серверы в кратчайшие сроки.

В поисках номеров вашего сервера, я думаю, вам нужно серьезно подумать об этом. Они могут использоваться для большинства рутинных задач администрирования сервера, включая управление пользователями, управление файлами и каталогами, а также программное обеспечение.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .