Thanks for all the great suggestions!
As requested, here is the relevant code (after some of the suggestions implemented) and the output.
It appears that the pattern match isn't working, although I'm trying to match anything, and again this is working on 2 other servers.
It also appears as if it's asking for authentication info, yet if i manually ssh it connects without user/password.
Thanks again for the help!
####
sub ssh_login {
my ( $remote_server, $username, $password ) = @_;
my $ssh = Net::SSH::Expect->new(
host => $remote_server,
password => $password,
user => $username,
raw_pty => 0,
#no_terminal => 1,
#port => $port,
timeout=>10,
#terminator=>"\r\n",
log_file => '/tmp/test_ssh.log',
exp_debug =>1,
exp_internal =>1,
);
# 2) logon to the SSH server using those credentials.
# test the login output to make sure we had success
my $login_output = $ssh->login();
if ( $login_output !~ /.*/ ) {
#$logger->error("$0:Login has failed. Login output was $login_output");
print "$0:Login has failed. Login output was $login_output" . "\n";
}
$ssh->exec("stty raw -echo");
return $ssh;
}
####
Spawned 'ssh -e none user@****-idx-dev3.****.****.com'
spawn id(5)
Pid: 3237
Tty: /dev/ttys007
at /System/Library/Perl/Extras/5.10.0/Expect.pm line 181.
Expect::spawn('Expect=GLOB(0x100eba4c0)', 'ssh -e none user@****-idx-dev3.****.****.com') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 132
Net::SSH::Expect::run_ssh('Net::SSH::Expect=HASH(0x100e71bb0)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 195
Net::SSH::Expect::login('Net::SSH::Expect=HASH(0x100e71bb0)') called at ./deploy_cluster.pl line 235
main::ssh_login('****-idx-dev3.****.****.com', 'user', 'password') called at ./deploy_cluster.pl line 187
main::copy_exist_to_old_all_servers('ARRAY(0x100e70ef0)', 'ARRAY(0x100e71448)') called at ./deploy_cluster.pl line 67
Starting EXPECT pattern matching...
at /System/Library/Perl/Extras/5.10.0/Expect.pm line 561.
Expect::expect('Expect=GLOB(0x100eba4c0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 580
Net::SSH::Expect::_sec_expect('Net::SSH::Expect=HASH(0x100e71bb0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 213
Net::SSH::Expect::login('Net::SSH::Expect=HASH(0x100e71bb0)') called at ./deploy_cluster.pl line 235
main::ssh_login('****-idx-dev3.****.****.com', 'user', 'password') called at ./deploy_cluster.pl line 187
main::copy_exist_to_old_all_servers('ARRAY(0x100e70ef0)', 'ARRAY(0x100e71448)') called at ./deploy_cluster.pl line 67
spawn id(5): list of patterns:
#1: -re `(?-xism:\\(yes/no\\)\\?\\s*$)'
#2: -re `(?-xism:[Pp]assword.*?:|[Pp]assphrase.*?:)'
#3: -re `(?-xism:ogin:\\s*$)'
#4: -re `(?-xism:REMOTE HOST IDEN)'
spawn id(5): Does `'
match:
pattern #1: -re `(?-xism:\\(yes/no\\)\\?\\s*$)'? No.
pattern #2: -re `(?-xism:[Pp]assword.*?:|[Pp]assphrase.*?:)'? No.
pattern #3: -re `(?-xism:ogin:\\s*$)'? No.
pattern #4: -re `(?-xism:REMOTE HOST IDEN)'? No.
spawn id(5): Does `Last login: Thu Oct 8 11:11:31 2015 from ****-idx-dev1.****.****.com\r\r\n'
match:
pattern #1: -re `(?-xism:\\(yes/no\\)\\?\\s*$)'? No.
pattern #2: -re `(?-xism:[Pp]assword.*?:|[Pp]assphrase.*?:)'? No.
pattern #3: -re `(?-xism:ogin:\\s*$)'? No.
pattern #4: -re `(?-xism:REMOTE HOST IDEN)'? No.
spawn id(5): Does `Last login: Thu Oct 8 11:11:31 2015 from ****-idx-dev1.****.****.com\r\r\n\033]0;****-idx-dev3.****.****.com:/Users/user # \007'
match:
pattern #1: -re `(?-xism:\\(yes/no\\)\\?\\s*$)'? No.
pattern #2: -re `(?-xism:[Pp]assword.*?:|[Pp]assphrase.*?:)'? No.
pattern #3: -re `(?-xism:ogin:\\s*$)'? No.
pattern #4: -re `(?-xism:REMOTE HOST IDEN)'? No.
spawn id(5): Does `Last login: Thu Oct 8 11:11:31 2015 from ****-idx-dev1.****.****.com\r\r\n\033]0;****-idx-dev3.****.****.com:/Users/user # \007\033[?1034h****-idx-dev3:~ user$ '
match:
pattern #1: -re `(?-xism:\\(yes/no\\)\\?\\s*$)'? No.
pattern #2: -re `(?-xism:[Pp]assword.*?:|[Pp]assphrase.*?:)'? No.
pattern #3: -re `(?-xism:ogin:\\s*$)'? No.
pattern #4: -re `(?-xism:REMOTE HOST IDEN)'? No.
Starting EXPECT pattern matching...
at /System/Library/Perl/Extras/5.10.0/Expect.pm line 561.
Expect::expect('Expect=GLOB(0x100eba4c0)', 10) called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 580
Net::SSH::Expect::_sec_expect('Net::SSH::Expect=HASH(0x100e71bb0)', 10) called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 343
Net::SSH::Expect::peek('Net::SSH::Expect=HASH(0x100e71bb0)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 209
Net::SSH::Expect::__ANON__('ARRAY(0x100eb5678)') called at /System/Library/Perl/Extras/5.10.0/Expect.pm line 828
Expect::_multi_expect(10, 'ARRAY(0x100eb59a8)', 'ARRAY(0x100eb5e70)') called at /System/Library/Perl/Extras/5.10.0/Expect.pm line 565
Expect::expect('Expect=GLOB(0x100eba4c0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 580
Net::SSH::Expect::_sec_expect('Net::SSH::Expect=HASH(0x100e71bb0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 213
Net::SSH::Expect::login('Net::SSH::Expect=HASH(0x100e71bb0)') called at ./deploy_cluster.pl line 235
main::ssh_login('****-idx-dev3.****.****.com', 'user', 'password') called at ./deploy_cluster.pl line 187
main::copy_exist_to_old_all_servers('ARRAY(0x100e70ef0)', 'ARRAY(0x100e71448)') called at ./deploy_cluster.pl line 67
spawn id(5): list of patterns:
spawn id(5): Does `Last login: Thu Oct 8 11:11:31 2015 from ****-idx-dev1.****.****.com\r\r\n\033]0;****-idx-dev3.****.****.com:/Users/user # \007\033[?1034h****-idx-dev3:~ user$ '
match:
Uncaught exception from user code:
SSHAuthenticationError Login timed out. The input stream currently has the contents bellow: Last login: Thu Oct 8 11:11:31 2015 from ****-idx-dev1.****.****.com
****-idx-dev3:~ user$ at /System/Library/Perl/Extras/5.10.0/Expect.pm line 828.
at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 209.
Net::SSH::Expect::__ANON__('ARRAY(0x100eb5678)') called at /System/Library/Perl/Extras/5.10.0/Expect.pm line 828
Expect::_multi_expect(10, 'ARRAY(0x100eb59a8)', 'ARRAY(0x100eb5e70)') called at /System/Library/Perl/Extras/5.10.0/Expect.pm line 565
Expect::expect('Expect=GLOB(0x100eba4c0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 580
Net::SSH::Expect::_sec_expect('Net::SSH::Expect=HASH(0x100e71bb0)', 10, 'ARRAY(0x100eba7a8)', 'ARRAY(0x100eb5be8)', 'ARRAY(0x100e71cd0)', 'ARRAY(0x100eb5bd0)', 'ARRAY(0x100eba628)') called at /Library/Perl/5.10.0/Net/SSH/Expect.pm line 213
Net::SSH::Expect::login('Net::SSH::Expect=HASH(0x100e71bb0)') called at ./deploy_cluster.pl line 235
main::ssh_login('****-idx-dev3.****.****.com', 'user', 'password') called at ./deploy_cluster.pl line 187
main::copy_exist_to_old_all_servers('ARRAY(0x100e70ef0)', 'ARRAY(0x100e71448)') called at ./deploy_cluster.pl line 67
Closing spawn id(5).
at /System/Library/Perl/Extras/5.10.0/Expect.pm line 1431.
Expect::hard_close('Expect=GLOB(0x100eba4c0)') called at /System/Library/Perl/Extras/5.10.0/Expect.pm line 1621
Expect::DESTROY('Expect=GLOB(0x100eba4c0)') called at /Library/Perl/Updates/5.10.0/Carp.pm line 100
eval {...} called at /Library/Perl/Updates/5.10.0/Carp.pm line 100
spawn id(5) closed.
Pid 3237 of spawn id(5) terminated, Status: 0xFF00
****-idx-dev1:manual user$