我制作了两个预期脚本SSH到一个服务器列表和更改密码。一个用于AIX,另一个用于RedHat Linux。
AIX脚本运行良好,但Linux脚本给我带来了一个问题。原因是,在Linux服务器上,当您被迫更改过期密码时,在更改密码后,远程端将终止SSH会话。
passwd: all authentication tokens updated successfully.
Connection to drm23rdv closed.
send: spawn id exp20 not open
while executing...
此时,脚本完全停止,仍然有许多服务器需要登录。(目前的密码只是暂时的,
我正在使用一个基于debian的linux系统。可以通过Lantronix SLC8000高级控制台管理器对其进行控制台访问。登录时,它会询问用户名和密码(控制台管理器和服务器)。
[user.USER-G9SW5Z1] ➤ ssh dceuser1@172.27.170.200
Password:
X11 forwarding request failed on channel 0
Welcome to the Lantronix SLC8000 Advanced Console Manager
Model Number: SLC8048
For a list of commands, t
我开发了这个expect脚本,TELNET_TEST.expect来测试远程计算机上的TELNET连接。
这个脚本应该通过目标机器上的telnet连接,等待登录提示,发送密码,然后退出。
这个脚本确实有效,在示例1中,您可以看到脚本成功地通过telnet登录,然后退出,但是有非常混乱的事情发生了,(对我来说)。
为什么我会得到一个退出状态1?我想我应该退出0级.
请让我知道为什么我要退出状态1?另外,为了获得我预期的退出代码,我需要修改我的脚本吗?
我的预期脚本:
more TELNET_TEST.expect
#!/usr/bin/expect --
set LO
当Linux机器$IP在登录后询问密码时,以下expect脚本工作正常
但在某些情况下,某些Linux机器不需要ssh的密码(我们可以不使用密码登录),
因此我需要更改我的expect脚本,以便支持没有密码的计算机
请建议如何适合我的期望脚本,以支持机器与密码和机器没有密码
* target of the following expect script is to check the hostname on remote Linux machine
expect_test=`cat << EOF
set timeout -1
spawn ssh $IP hostna
是否可以在没有密码输入的情况下从本地登录到远程Linux PC SSH (而不是root用户)?我的意思是-在两个点上使用/etc/阴影作为密码,登录到具有相同用户凭据(在两个系统上登录和密码相同)的远程SSH。
要点-不是使用基于密钥的身份验证,而是使用加密密码(SHA-512)在远程SSH上登录。