LINUX.ORG.RU
ФорумAdmin

Автоматическое подключение по telnet


0

0

Как автоматически с командной строки подконнектиться по телнету к удалённому серверу: В телнете есть опция -l для передачи на удалённый узел имени пользователя, а можно ли передать и пароль?

anonymous

вряд ли... используй expect.

sasha999 ★★★★
()

А тебе для чего?
Если тебе просто влом каждый раз вводить логин/пароль, то
используй ssh + RSA авторизация. поможет ;)

anonymous
()

Мне это нужно, чтобы ночью комп запускал дозвон в инет на удалённом сервере для скачки почты. Я использую для дозвона Freesco Linux и там нужно по телнету законнектиться и выполнить команды control unblock и control up. Подскажите если у кого есть готовый (или похожий) скрипт для expect, я пробую по манам составлять но что-то не очень получается:

" #!/usr/bin/expect "

" spawn telnet -l root myserver.mydomain " " expect Password: " " send "пароль\r" "

" expect [Linux] "

" send "control unblock\r" " " send "control up\r" "

anonymous
()

я здесь не так давно давал пример - поищи.

sasha999 ★★★★
()

есть вариант -- запустить на удаленном хосте сервер, типа

#!/bin/bash
PORTNUM=9999

NC="/usr/bin/nc"

GET_MAIL_STR="Get mail."

while [ true ]; do
TMP=$($NC -l -p $PORTNUM)
if [ "$TMP" == "$GET_MAIL_STR" ]; then
control unblock
control up
fi
done
#EOF

где nc это netcat.

и в нужное время посылать ему сроку "Get mail."

$ echo "Get mail." | nc remote_host 9999
^C

в таком случае не придется передавать пароль root по сети.

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