LINUX.ORG.RU
ФорумAdmin

perl ssh2 cisco


0

0

Как постать на перле циске только в нулевой канал по ssh2? Ибо иначе при открытии еще одного канала сессия рвется.

anonymous

Ответ на: комментарий от zhiltsov

->увеличить кол-во сессий поддерживаемых циской одновременно по ssh
Дело не в сессиях, а канале посылке\отправке данных. Т.е. по путти я могу несколько раз под собой или несколькими юзерами с одного или разных хостов войти на кошку.

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

->приведите плиз скрипт , а то ничего не ясно .
use Net::SSH::Perl;
use Net::SSH::Perl::Cipher;
use Net::SSH::Perl::Channel;
 
my $host="192.168.10.13";
my $user="user";
my $pass="pass";
$cmd='copy running-config tftp://192.168.25.3/backup';
$ssh = Net::SSH::Perl->new($host, protocol => 2, debug => 1);
$ssh->login($user, $pass);
$ssh->register_handler("stdout", sub { my($channel, $buffer) = @_;
        $channel->open;
        $channel->register_handler(SSH2_MSG_CHANNEL_OPEN_CONFIRMATION);
        $channel->cmd($cmd);
        $channel->close;
}); 

123: Computing shared secret key.
123: Verifying server signature.
123: Waiting for NEWKEYS message.
123: Enabling incoming encryption/MAC/compression.
123: Send NEWKEYS, enable outgoing encryption/MAC/compression.
123: Sending request for user-authentication service.
123: Service accepted: ssh-userauth.
123: Trying empty user-authentication request.
123: Authentication methods that can continue: password.
123: Next method to try is password.
123: Trying password authentication.
123: Login completed, opening dummy shell channel.
123: channel 0: new [client-session]
123: Requesting channel_open for channel 0.
123: channel 0: open confirm rwindow 1024 rmax 4096
123: Got channel open confirmation, requesting shell.
123: Requesting service shell on channel 0. 

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

из поста не видно где проблема ...
а киски под рукой нет для экперемента .
вот такой велосипед у меня работал .

username cisco871 privilege 15 secret 5 $1$UpQy$XL3pNjaA8d0DnJozqcx.
    aaa new-model
    aaa authorization exec default local
    ip domain name mydomain.ge
    ip ssh time-out 60
    crypto key generate rsa

#!/usr/bin/perl
##################restarts int fa1 on  xxx 871 router ( fa1 is connected to e1-eth converter ) ; to enable #logging set  $Expect::Log_Stdout = 1;

use Expect;
use strict;
use bytes;

my $user = 'samtredia';
my $hostname = 'samtredia';
my $password = "Thewery secure passbugaga"
#command to run on cisco.
my $run = "ssh $user\@$hostname << EOF
        conf t
        int fa1
        shut
        no shut
        exit
        exit
        exit
        EOF";
my $timeout = 3;
###expect
$Expect::Log_Stdout = 0; # we do not need any output to STDOUT
my $exp = Expect->spawn($run) or die "Cannot spawn $run: $!\n";
$exp->expect    ($timeout,
                        [ qr/\(yes\/no\)\? /, sub {
                                        $exp->send("yes\n");
                                        exp_continue;   } ],
                        [ qr/password: /, sub {
                                        $exp->send("$password\n");
                                                } ],
                );
$exp->soft_close();

чтобы ssh не спрашивал yes/no для новых хостов кажись 
-o "StrictHostKeyChecking no" должно работать .


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

->perl -MCPAN -e 'install Expect' 
ууу cpan, там вроде все в сырцах, на винде(так исторически 
сложилось;-\) еще и minigw ставить придеца, а есть не в сырцах?

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

если пройти по линке , там есть сайт автора , а дальше можно скачать
модуль ...

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