用Shell自动建立ssh连接

longxiang333 2011-07-06 06:56:04
Linux服务器上,需要检测ssh连接是否连接正常,如果连接正常就不用管,如果不正常(比如连接断开),那么我想重新建立ssh连接。

每次连接时候,输入一下命令会出现用 hostname's password: 然后需要输入密码,请问这时我需要如何写shell,才能让密码自动输入呢?

[sean@testserver2 ~]$ ssh -lproxy-user -L3555:127.0.0.1:3555 219.90.127.7
proxy-user@219.90.127.7's password: <---就是这里不知道怎么让密码自动输入,然后登录。

谢谢!
...全文
442 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
愚知足 2013-02-21
  • 打赏
  • 举报
回复
假设你的脚本名字是autoSSH.expt, 不要直接运行这个脚本 (-bash-3.2$ ./autoSSH.expt) 使用expect 命令调用它,肯定不会出错 (-bash-3.2$ /usr/bin/expect ./autoSSH.expt)
chendaming 2011-08-11
  • 打赏
  • 举报
回复
http://www.poluoluo.com/server/201107/138427.html
chendaming 2011-08-11
  • 打赏
  • 举报
回复
看下这个应该可以解决你的问题。不需要写什么脚本。
longxiang333 2011-08-07
  • 打赏
  • 举报
回复
#!/usr/bin/expect -f

set port 3555
set user proxy-user
set host 219.90.127.7
set password 123456
set timeout 5

spawn ssh -l $user -L$port:127.0.0.1:$port $host
expect "password:"
send "$password\r"
interact
expect eof

这是我的源码。

expect位置:
expect: /usr/bin/expect /usr/lib/expect5.43 /usr/share/man/man1/expect.1.gz

报错:
[sean@testserver2 script]$ sh sshrun.sh
sshrun.sh: line 9: spawn: command not found
couldn't read file "password:": no such file or directory
sshrun.sh: line 11: send: command not found
sshrun.sh: line 12: interact: command not found
couldn't read file "eof": no such file or directory


易之阴阳 2011-07-16
  • 打赏
  • 举报
回复
脚本内容:
#! /bin/sh
ssh -lproxy-user -L3555:127.0.0.1:3555 219.90.127.7 <<!
echo yourpassword
!
庆叔叔 2011-07-10
  • 打赏
  • 举报
回复
文件开头加上如#4楼所说的那个你expect的安装路径
longxiang333 2011-07-07
  • 打赏
  • 举报
回复
为什么运行出错呢?
spawn: command not found
expect: command not found
send: command not found
interact: command not found
但是我安装了expect,而且是在/usr/bin/expect,tcl也安装了tcl:/usr/lib/tcl8.4
请问这是什么问题呢?
freetstar 2011-07-07
  • 打赏
  • 举报
回复
lz安装expect!
sunshine_8 2011-07-07
  • 打赏
  • 举报
回复
没有安装库
linlan999 2011-07-07
  • 打赏
  • 举报
回复
#!/usr/bin/expect -f
脚本开始是这句 ?
linlan999 2011-07-06
  • 打赏
  • 举报
回复
interact
expect eof

似乎要加上这句
linlan999 2011-07-06
  • 打赏
  • 举报
回复
#!/usr/bin/expect -f

set port port_no
set user user_name
set host host_name
set password my_password
set timeout -1

spawn ssh -D $port $user@$host
expect "*assword:*"

send "$password\r"
expect eof
MobaXterm是一款全功能的终端软件MobaXterm。它不仅可以像PuTTY一样通过SSH连接Raspberry Pi等开源硬件,并且还能:直接的便携版、内建多标签和多终端分屏、内建SFTP文件传输、内建Xserver,可远程运行X窗口程序、直接支持VNC/RDP/Xdmcp等远程桌面、默认的UTF-8编码、更加友好的串口连接设置、操作更明确,更少的“神秘技巧”。 新手友好性 1. 为ssh/rsh/xdmcp等提供新建会话对话框,里面对常用参数都提供了文字说明; 2. 启动时自动启动X server,自动ssh连接设置X11 forwarding; 3. 左测栏提供一个sftp面版,在建立ssh连接自动将远程目录展示再这个面版中,方便上传/下载文件; 4. 为ssh tunnel提供向导界面 (Tools->MobaSSHTunnel); 5. 通过右键菜单即可放大/缩小字体,也支持设置缺省字体大小(而putty需要在选项对话框中找,并且不支持缺省大小,只能逐个修改多个会话的设置); 功能强大mobaxterm sessions 1. 支持建立ssh/telnet/rsh/ftp/sftp/serial/vnc/xdmcp/rdp等多种远程会话,其中xdmcp/vnc可以用于访问远程桌面。也支持本地bash或者cmd; 2. 自带了ftp/tftp/http服务器(不过免费版有时间限制); 3. 支持对终端模拟器上的文字进行查找(其实它是整屏文字拷贝出来再进行查找) 4. 麻雀虽小,但还带了几个游戏、目录比较器/文本比较器、计算器、文本编辑器(支持语法高亮)、网络抓包工具等
【资源说明】 1、基于SSM框架+Mysql的完整电商网站项目源码+项目说明(毕设).zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于ASP.NET 的选题系统网站设计项目源码(毕业设计).zip ## 概述 电商项目 ![](./docs/assets/80.png) ![](./docs/assets/81.png) ## 云服务器 添置一台阿里云ECS服务器(CentOS 7.9),安全组设置中添加常用端口:80(http), 22(ssh), 3306(mysql), 6379(redis)等,重置实例密码后重启服务器 通过ssh建立会话远程连接云服务器 ```shell $ ssh root@远程服务器公网ip地址 根据prompt输入实例密码 ``` localhost免密码登陆远程云服务器 ```shell 本地: 生成本地公钥和私钥,并通过scp指令将公钥安全拷贝到远程服务器.ssh目录下 $ ssh-keygen -t rsa $ scp id_rsa.pub root@远程服务器公网ip地址:~/.ssh/id_rsa.pub 远程: 将公钥内容追加到~/.ssh/authorized_keys中 $ cd ~/.ssh && cat id_rsa.pub >> authorized_keys 这样下次ssh登陆服务器时就不用输入密码 ``` ssh连接长时间不操作保持不断开 ```shell 配置下服务器的/etc/ssh/sshd_config文件 Host * # 断开时重试连接的次数 ServerAliveCountMax 600 # 每隔30秒自动发送一个空的请求以保持连接 ServerAliveInterval 10 重启一下ssh服务 $ systemctl restart sshd ``` ```shell 查看可用内存 free -m 切换到root用户 su root ``` ## Docker ### Docker上手 使用Docker虚拟化容器技术来隔离软件(mysql, redis, elasticsearch, rabbitmq等)的运行时环境

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧