Я хочу создать скрипт, который просто запускается ssh-keygen -t rsa
. Но как перейти на него 3 раза войти?
102
Пытаться:
ssh-keygen -t rsa -N "" -f my.key
-N ""
сообщает ему использовать пустую парольную фразу (то же самое, что и два ввода в интерактивном скрипте)
-f my.key
указывает ему хранить ключ my.key
(измените по своему усмотрению).
Все работает без каких-либо ключей ввода :)
Чтобы отправить ввод в интерактивный скрипт:
echo -e "\n\n\n" | ssh-keygen -t rsa
ssh-keygen
упала - вы добавили это обратно? {отредактировано} Также - вы не можете запускать скрипт более одного раза - он меняет вопросы, чтобы подтвердить, что вы хотите перезаписать существующий_rsa
yes ""
вместоecho -e "\n\n\n"
(yes
выводит любой заданный аргумент [или «y» по умолчанию] в бесконечности - идеально подходит для таких ситуаций, когда нужно просто дать ответ «да» на все, что программа может запросить).yes
короче, и он долженssh-keygen
когда-либо добавлять вопрос, на который также будет автоматически дан ответ. :)версия с парольной фразой:
Источник http://linux.die.net/man/1/ssh-keygen
источник
Согласен с Мишелем Марро за исключением того, что ему нужно еще кое-что: если файл уже существует, он все равно будет интерактивным, спрашивая, нужно ли его перезаписать.
Воспользуйтесь ответом на этот вопрос .
Перенаправление на null необходимо, чтобы отключить сообщение о перезаписи.
источник
источник
echo -e
излучается что-то иное, чем-e
вообще, чтоssh-keygen
доступно не везде ).ssh-keygen -N ''
как часть процедуры автоматической установки, и он вообще не читает stdin, поэтому нет необходимости вecho
( любомecho
варианте), переданном в него. (Конечно, я считаю, что stdin подключен к/dev/null
моему производственному варианту использования; вполне может быть другое поведение, когда он подключен к TTY, но лучший ответ - это</dev/null
не такecho ... |
)$ ssh-keygen -t rsa -N '' Generating public/private rsa key pair. Enter file in which to save the key (/home/dlyons/.ssh/id_rsa):
Рекомендуется использовать ed25519 для безопасности и производительности.
Вот
-o
Формат ключа OpenSSH вместо старого PEM (требуется OpenSSH 6.5+)-a
Количество тестов первичности при скрининге кандидатов DH-GEX-t
Тип ключа (ed25519, RSA, DSA и т. Д.)-f /mypath/bla
Путь и имя выходного файла-N ""
Использовать пустую парольную фазуи
yes "y"
без взаимодействия.Будет создано два файла
где
bla
файл является частным иbla.pub
общедоступным.источник