Linux机器日常运维过程中,经常需要在本地运行脚本执行针对远程主机的命令。正常情况下,ssh登陆远程机器时会提示输入密码,这会影响到脚本的自动执行,(因为shell脚本中没有自动填充密码的命令)。

ssh登陆不能在命令行中指定密码,需要用户交互输入密码,sshpass 的出现,解决了这一问题。它允许你用 -p 参数指定明文密码,然后直接登录远程服务器。

它支持密码从命令行、文件、环境变量中读取。

1、下载:

sudo apt-get install sshpass来安装。


2、sshpass用法和命令介绍

3、用法范例

从当前服务器新建一个名叫ssh_remote_test.sh的文件。

vim ssh_remote_test.sh
#!/bin/bashsshpass -p 123456 ssh shijianfeng@192.168.64.137 'cd ~/fisco/192.168.64.137/node0 && ls'

其中,远程服务器的ip是192.168.64.137,用户为shijiafeng,密码为123456

登录成功之后执行命令'cd ~/fisco/192.168.64.137/node0 && ls'

保存。

脚本成功通过sshpass工具实现了免密码登录远程服务器。

4. 若是第一次没有反应

则使用ssh先登录一遍,再试

https://blog.csdn.net/liao392781/article/details/79220395

Shell 脚本 ssh免密码 登录 远程服务器 sshpass用法示例相关推荐

  1. Linux运维:Shell脚本实现ssh免密登录远程服务器

    LInux系统日常运维过程中,经常需要在本地运行脚本执行对远程主机的命令,正常情况下,ssh登录远程服务器时会提示输入密码,这会影响到脚本的自动执行(因为shell脚本中没有自动填充密码的命令).有三 ...

  2. 菜鸟Linux系列:[4]SSH免密码登陆远程服务器

    背景:搭建Hadoop环境需要设置无密码登陆,所谓无密码登陆其实是指通过证书认证的方式登陆,使用一种被称为"公私钥"认证的方式来进行ssh登录. 在linux系统中,ssh是远程登 ...

  3. 使用ssh免密码登录Linux服务器

    频繁登录Linux服务器时,使用ssh <username>@<host>的方式登录,但是每次都需要输入密码是件很麻烦的事.我们还可以使用私钥/公钥对的方式在免密码登录服务器. ...

  4. ssh免密码登陆远程服务器(3种方式)

    第一种:ssh密码登录步骤,server.sh添加 #!/usr/bin/expect spawn ssh Username@ServerIP expect "*password:" ...

  5. ssh免密登录远程服务器

    问题 每次使用vscode连接远程服务器都需要输入密码,切换文件夹也需要输入密码,十分麻烦,于是考虑配置一下免密登录. 方法 如果不想了解具体原理,也可以直接跳到步骤. ssh-keygen命令用来生 ...

  6. openssh设置免密码登录远程服务器

    主机 host | 远程机器 server 目标:从host登录到server,免密码输入 host机器: ssh-keygen -t rsa 在~/.ssh/中会生成两个文件 id_rsa.pub和 ...

  7. Linux上实现ssh免密码登陆远程服务器

    平常使用ssh登陆远程服务器时,都需要使用输入密码,希望可以实现通过密钥登陆而免除输入密码,从而可以为以后实现批量自动部署主机做好准备. 环境如下: IP地址 操作系统 服务器端 10.0.0.10 ...

  8. 本地mac配置ssh免密登录远程linux服务器

    本地mac配置ssh免密登录远程linux服务器 每次输入密码登录服务器也就罢了,结果scp时每次都要输入密码,分分秒秒阿西吧.哈哈哈,回归正题,配置免密登录后,畅通无阻啊,哈哈哈 检查自己~/.ss ...

  9. ssh免密码登录全过程

    生成公钥和私钥 ssh-keygen 等同于ssh-keygen -t rsa 运行上面的命令后,系统会出现一系列提示,可以一路回车,例如: $ ssh-keygen Generating publi ...

  10. 配置免密码登录Linux服务器

    2019独角兽企业重金招聘Python工程师标准>>> 获取本机SSH公钥,cat ~/.ssh/id_rsa.pub 远程Linux服务器上,vim ~/.ssh/authoriz ...

最新文章

  1. c 应用程序多语言版本,c – 在win32 API应用程序中实现全球化/多语言功能
  2. 利用curl并发来提高页面访问速度
  3. WINCE6.0 error C2220: warning treated as error问题解决
  4. Why Vector Clock are Easy or Hard?
  5. Swagger UI 与SpringMVC的整合 II
  6. mac 安装node_node 服务端部署
  7. 第四冠!腾讯AI「绝艺」斩获世界智能围棋公开赛冠军
  8. 玩转matlab之一维 gauss 数值积分公式及matlab源代码
  9. 《『若水新闻』客户端开发教程》——06.设计新闻内容UI
  10. css3中3d旋转中rotatex,rotatey,rotatez的旋转正方向
  11. mysql获取字符串长度函数
  12. 通道注意力机制keras_注意力机制及Keras实现
  13. 塔夫斯大学计算机教授,塔夫茨大学工程学院虚拟教室取得成功!
  14. 黑客知识之7种DoS攻击方法简述
  15. 【DAOS】Intel DAOS 分布式异步对象存储|Architecture Overview|架构概述
  16. leetcode_Permutations II
  17. 从乌镇互联网大会,了解未来技术发展趋势
  18. 百度地图js轨迹展示
  19. outlook收邮件延迟_如何计划或延迟在Outlook中发送电子邮件
  20. 大数据下的空气监测如何改变你的生活方式?

热门文章

  1. NoSql数据库确实非常适合网站
  2. 使用two.js生成的卫星环绕动画效果
  3. 正则表达式修正符的学习
  4. 应用:Xbox 360无线大屏幕控制器“WP 7”
  5. JAVA----数组(一)
  6. php在IIS上put,delete请求报404
  7. LVS+Keepalived 高可用环境部署记录(主主和主从模式)
  8. 11-Container With Most Water
  9. 20佳非常有创意的About页面设计
  10. matlab java mac_macOS Mojave上Matlab 2018a与Java的联合编程