Модераторы: powerfox, ZeeLax
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка доступа по SSH+RSA key 
:(
    Опции темы
KEM
  Дата 19.1.2011, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 152
Регистрация: 28.1.2005

Репутация: нет
Всего: 2



Всем привет!
Надеюсь не промахнулся с веткой.
Существует сервер с которого нужно проверять состояние служб на других серверах. Проверка идёт с помощью команд в bash. Но что бы их выполнить нужен без парольный доступ по ssh (rsa ключ).

Скрип проверки этого доступа привожу ниже.
Код

#!/bin/bash
    #0    rsa_ok    
    #1    no_rsa
    #2    no_ssh

    TMP_FILE="rsa_test.txt"    
    (ssh -fn root@$1 'echo' &> /dev/null; [ "$?" == "0" ] && (echo 0 > $TMP_FILE) || (echo 2 > $TMP_FILE) ) &
    pd=$!;
    sleep 1; 
    ps -a | grep -c $pd &> /dev/null;
    [ "$?" == "0" ] && sleep 2; 
    
    kill -9 $pd &> /dev/null;
    [ "$?" == "0" ] && echo 1 > $TMP_FILE ;
    #wait $pd &> /dev/null ; #no wait because ssh in stop state
    result=`cat $TMP_FILE  2>/dev/null || echo 2`;
    rm -f $TMP_FILE;
    exit $result;


Проблема в следующем....  никак не могу избавиться от "предложение" ввести пароль, на тех серверах где доступ по ключу отсутствует, при этом портится весь вывод, и в итоге после отработки скрипта, консоль становиться не пригодна к работе!  smile 
Подскажите как этого можно избежать? Как можно подавить это ssh  приглашение на ввод пароля ?  smile 



UP
pd=$!; -> pd=$! ;
в отдельном потоке
Код

    [ "$1" == "" ] ||  [ "$1" == "" ] || [ "$1" == "" ] && echo "No parameters" && exit 123

    TFLE=$3;
    (ssh $1@$2 'echo'; echo "$?" > $TFLE) &
    pd=$! ;
    #sleep 1; 
    #ps -a | grep  $pd #&> /dev/null;
    #[ "$?" == "0" ] && sleep 1; 
    cn="1";
    TM="20";
    sleep $cn;
    while (( "$cn" < "$TM" ));
    do
        ps -ef | grep -v grep | grep  $pd &> /dev/null
        [ "$?" == "0" ] && sleep 1 || break; 
        ((cn++));
        
    done

    kill -9 $pd &> /dev/null;
    [ "$?" == "0" ] && echo 1 > $TFLE ;


и читаем из файла

Это сообщение отредактировал(а) KEM - 3.2.2011, 11:45
--------------------
Мы растворяем сознание жизни, реальностью стал бешеный ритм...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Oбщие вопросы"
nickless
Imple
nerezus

В тему здесь вопросы общие - не привязанные к определенному ПО или дистрибутиву BSD/Linux/UNIX.
Например вопросы о выборе ОС для определенных задач (но если Вы просто хотите узнать "Какой дистрибутив лучше", то для этого есть Клуб юнуксоидов).
Общие вопросы по shell-программированию тоже лучше задавать здесь.


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

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | *NIX системы: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0688 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.