LINUX.ORG.RU

ssh и странная железяка

 


0

1

Есть железячный свитч (не cisco, хотя cli похож), который стоит далеко и никто не может сказать вендера и модель. К нему есть доступ по ssh, треубется снимать конфиги раз в неделю, автоматически (скорее всего таких свичей там пара десятков, но мое дело скрипт рабочий отдать и пускай сами думают).

Пробую так (если залогиниться и выполнить руками, о все ок):

sshpass -p "$pass" ssh $SSHOPT $login@$ip terminal length 0
sshpass -p "$pass" ssh $SSHOPT $login@$ip show running
sshpass -p "$pass" ssh $SSHOPT $login@$ip terminal length 40

получаю ошибку:

exec request failed on channel 0

Решения из поисковиков с /dev/pty* мне не подходят т.к. доступа к системным файлам железяка не дает.


copy running-config tftp://10.0.0.1 — здесь tftp://10.0.0.1 — адрес вашего TFTP-сервера. Address or name of remote host [10.0.0.1]? — система спрашивает еще раз правилен ли адрес — проверяем и нажимаем Enter. Destination filename [router-confg]? !!! 5460 bytes copied in 1.14 secs (2900 bytes/sec) Итак, наша конфигурация сохранена и теперь можно спать спокойно 

это команды для циски. Пробуйте воткнуть в скрипт.

Bootmen ★☆☆ ()
Последнее исправление: Bootmen (всего исправлений: 2)
Ответ на: комментарий от Bootmen
#copy running-config tftp://10.10.10.10 ascii 
Confirm copy file [Y/N]:

Не, тогда надо expect прикручивать...но эта комманда отрабатывает на атвомате, задавно.

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

-t похоже на то, что нужно, раз без pty оно не хочет; попробуй добавить явное завершение сессии после выполнения команд.

Попробовал со своим mikrotik и -t:

$ ssh -t admin@mt '/ip firewall nat print; /quit'
Flags: X - disabled, I - invalid; D - dynamic
 0    chain=srcnat action=masquerade out-interface=ether1 log=no log-prefix=""
interrupted
           Connection to mt closed.

Лишний шум присутствует, но его можно вырезать.

И, наверное, все 3 (4 с завершением сессии) команды нужно будет выполнить в одной сессии?

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

microtic пародия на cisco Но, многие верят что это дешевая замена.

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

попробуй добавить явное завершение сессии после выполнения команд

Не прокатит, тут нет конвеера для команд

И, наверное, все 3 (4 с завершением сессии) команды нужно будет выполнить в одной сессии?

Нет, можно в разных

P.S. Пока сдался и пишу на expect+telnet оно у них всеравно в закрытой среде будет бекапиться.

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

Зачастую на свичах своя реализация SSH, там нет директории .ssh и файла authorized_keys, а ключ там добавляется в ручном режиме специфичной командой прямо в терминале
Ищи вендора и документацию, либо методом перебора в консоли

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

В скрипте есть место которое через ssh-keyscan добавляет адреса в доверенные и там проскакивает bropbear, не знаю на сколько этому верить можно. Вендера постараюсь выпытать.

Kolins ()
Ограничение на отправку комментариев: только для зарегистрированных пользователей