LINUX.ORG.RU
ФорумAdmin

easy-rsa | нажать Enter в linux (без X-ов)

 , ,


1

1

Добрый день. Есть необходимость автоматизировать создание ключей в easy-rsa на vps. Руками все делается замечательно, но при помощи скриптов не удается выполнить build-key.

Варианты использования xdotool или библиотеки(которые гуглятся как минимум) для python - отказались работать.

Если вкратце, при запуске ./build-key «username» надо 10 раз нажать Enter, 2 раза Y+Enter.

с Y проблем нету, т.к. echo с этим справляется. Подскажите по поводу Enter. (именно Enter, а не переход на другую строку. echo \r или echo \n тоже не работает).

Пробовал делать с помощью screen -X и отправлять туда stuff '\015', но не получается все-равно

cd /usr/share/easy-rsa/
screen -dmS account ./build-key zzzzz
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account stuff '\015'
screen -XS account echo "y"
screen -XS account stuff '\015'
screen -XS account echo "y"
screen -XS account stuff '\015'

screen -r account
exit

Возможно, есть возможность изменить pkitool (в easy-rsa), что б он не спрашивал вопросы и просто выполнением ./build-key 'name' создавал ключи?

Надеюсь, на помощь сообщества, возможно, кто-то сталкивался с подобным

Спасибо



Последнее исправление: trader1601 (всего исправлений: 2)

Есть такая полезная штука для превращения интерактивных скриптов в неинтерактивные — Expect. Вполне должна помочь и в этом случае.

TeopeTuK ★★★★
()

Всё может оказаться ещё проще.

Есть такая утилита yes — выводит указанную тобой строку и «Enter» до бесконечности. Простейший вариант запуска:

yes | программа_для_которой_надо_прожамкать_enter

В таком случае yes будет говорить y\n до тех пор, пока программа после пайпа не завершится.

spijet ★★★
()
Ответ на: комментарий от pekmop1024

Который твои закрытые ключи гоняет по сети и сохраняет/обрабатывает на чужом сервере? Или что ты имеешь в виду под словом вебгуй?

TeopeTuK ★★★★
()
Ответ на: комментарий от TeopeTuK

Я имею в виду чисто управлялку, наподобие EasyRSA, простую как грабли: создать/отозвать сертификат, скотчать бандл. Примерно как в пфсенс оно организовано.
Вроде бы есть OpenXPKI, надо посмотреть, как у него выглядит файловая инфраструктура - получится ли его использовать совместно с OpenVPN, например.

pekmop1024 ★★★★★
()
Ответ на: комментарий от pekmop1024

Был openca, но он сдох. Есть EJBCA(пользуемся в конторе, в принципе довольны), но простым назвать его язык не поворачивается - внутри это тот еще комбайн(JBoss, вот это вот всё), пусть и годный.

А больше из открытых CA с web-интерфейсом я и не слышал.

Update: а не, это просто последний релиз в 2015, а так openca как проект живой

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от anonymous
echo -ne "\n\n\n\n\n\n\n\n\n\n\yn\yn" | ./build-key --batch 'name'

помогла эта строчка

Всем спасибо большое за помощь

trader1601
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.