информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Spanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Модель надежности отказоустойчивой... 
 ЛК нашла бэкдор в ASUS Live Update 
 Facebook хранил часть пользовательских... 
 NSA выпустило Гидру 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / sysadmin
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Cisco ASA, ssh, перевод строки 10.04.14 10:09  
Автор: Winer <Виктор С.> Статус: Member
<"чистая" ссылка>
Здравствуйте!

Необходимо по расписанию на ASA выполнять определённые действия.
Проблема с вводом пароля решилась очень легко - авторизация по ключам.
А вот с вводом команд возникла большая проблема - ASA принимает все команды только в enable режиме, а отправить из shell-скрипта enter, чтобы войти в этот режим, не получается. Причём, если выполнять не из крона, а из консоли, скрипт завершается успешно. Если запускать из крона - происходит успешный вход на ASA, затем подключение отваливается по таймауту.

Подскажите, в чём может быть проблема? Expect использовать не хочется, отдаёт он костылями в данном случае.
Хм, не понял что именно с enter не получается. 10.04.14 22:49  
Автор: leo <Леонид Юрьев> Статус: Elderman
<"чистая" ссылка>
Хм, не понял что именно с enter не получается.

варианты echo -e "\r\n" пробовали ?
Пробовал и \n и \r\n трубопроводом отправлять. 11.04.14 09:13  
Автор: Winer <Виктор С.> Статус: Member
<"чистая" ссылка>
> Хм, не понял что именно с enter не получается.
>
> варианты echo -e "\r\n" пробовали ?

Пробовал и \n и \r\n трубопроводом отправлять.

Пока всё что есть - такой ответ от скрипта по крону(из обычной командной строки отрабатывает без проблем):

Pseudo-terminal will not be allocated because stdin is not a terminal.
Type help or '?' for a list of available commands.
Connection to asa closed by remote host.
Странно. Должен работать даже вариант «command <... 11.04.14 13:02  
Автор: kstati <Евгений Борисов> Статус: Elderman
Отредактировано 11.04.14 13:08  Количество правок: 3
<"чистая" ссылка>
Странно. Должен работать даже вариант «command < input_file.txt > output_file.txt»
Странно. Должен работать даже вариант «command <... 11.04.14 13:12  
Автор: Winer <Виктор С.> Статус: Member
Отредактировано 11.04.14 13:12  Количество правок: 1
<"чистая" ссылка>
> Странно. Должен работать даже вариант «command <
> input_file.txt > output_file.txt»

Попробовал

/usr/bin/ssh -T user@host <<EOT
enable

reload noconfirm reason prophylaxis

<<EOT

Получил

Type help or '?' for a list of available commands.
asa> eConnection to asa closed by remote host.
echo enable | /usr/bin/ssh -T user@host 11.04.14 14:57  
Автор: Den <Denis> Статус: The Elderman
<"чистая" ссылка>
Засунь все команды внутрь текстового файла и будет тебе счастье!
type my_asa_script.txt | /usr/bin/ssh -T user@host
type вообще не про то, судя по ману. Никакие... 12.04.14 11:16  
Автор: Winer <Виктор С.> Статус: Member
<"чистая" ссылка>
> Засунь все команды внутрь текстового файла и будет тебе
> счастье!
> type my_asa_script.txt | /usr/bin/ssh -T user@host

type вообще не про то, судя по ману. Никакие вводы/выводы/перенаправления не помогли.
Угу, - T может помочь. 11.04.14 22:42  
Автор: leo <Леонид Юрьев> Статус: Elderman
<"чистая" ссылка>
> Засунь все команды внутрь текстового файла и будет тебе
> счастье!
> type my_asa_script.txt | /usr/bin/ssh -T user@host

Угу, - T может помочь.
Если нет то см опции на тему EscapeChar и переменных среды, в особенности TERM=
-T ошибку убрало, но команды удалённо так же не выполняются... 12.04.14 11:33  
Автор: Winer <Виктор С.> Статус: Member
<"чистая" ссылка>
> > Засунь все команды внутрь текстового файла и будет
> тебе
> > счастье!
> > type my_asa_script.txt | /usr/bin/ssh -T user@host
>
> Угу, - T может помочь.
> Если нет то см опции на тему EscapeChar и переменных среды,
> в особенности TERM=

-T ошибку убрало, но команды удалённо так же не выполняются. Похоже, expect единственный выход, увы.
Там нет никаких "чудес". 12.04.14 16:45  
Автор: leo <Леонид Юрьев> Статус: Elderman
Отредактировано 12.04.14 16:46  Количество правок: 1
<"чистая" ссылка>
Там нет никаких "чудес".

ssh старательно переносит максимум информации о локальном терминале на точку подключения.

по передаваемым флажкам софт на удаленной стороне может понять как лучше взаимодействовать и идет ли подключение с tty.

сталкивался и разруливал подобные проблемы, но давно 6-7 лет назад, деталей не помню...
но где рядом с https://www.google.ru/#q=+ssh+tty+problem

1






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2019 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach