• sshpass命令


    大纲

    一、初心

    二、sshpass的常用命令(sshpass不可以直接接带特殊字符意义的密码,需要转义或者用小括号,或者指定文件的方式来连接都可以规避这个问题。

    三、成果展示


    一、初心

    为了将拉取最新源码、混淆编译、将编译好的文件拷贝到远程主机并执行,这一系列操作能够自动化完成,解放劳动力,提升工作效率的,我进行了自动化脚本的编写和验证操作。原本以为这是一个再简单的事情,实际着手时,也遇到不少麻烦。特此做些记录。(这里略去不必要的安装,重点谈谈核心sshpass)

    二、sshpass的常用命令
    1、直接远程连接某台主机
    命令:sshpass -p {远程主机登录密码} ssh root@{远程主机IP}
               sshpass -p {远程主机登录密码} ssh root@{远程主机IP} 'w'  -o StrictHostChecking=no     免输入
    注:若是第一次连接直接用sshpass -p 123456 ssh root@192.168.161.100会连接不上

    2、本地执行远程机器的命令:

    命令: sshpass -p {远程主机登录密码} ssh root@{远程主机IP}  "ethtool eth0"

    3、远程连接指定ssh的端口:
    命令:sshpass -p {远程主机登录密码} ssh -p {远程主机登录端口} root@{远程主机IP}

    注: 当远程主机不是默认的22端口时候
    4、从密码文件读取文件内容作为密码去远程连接主机
    命令:sshpass -f xxx.txt  ssh root@{远程主机IP}

    5、从远程主机上拉取文件到本地
    命令: sshpass -p {远程主机登录密码} scp root@{远程主机IP}:{拉取文件目录}

    6、执行远程主机脚本
    命令: sshpass -p {远程主机登录密码} ssh -o StrictHostChecking=no root@{远程主机IP} {./xx.sh}

    7、从本地主机拷贝文件到远程主机
    命令: sshpass -p {远程主机登录密码} 本地文件目录 root@{远程主机IP}:{远程文件目录}

    三、成果展示

    svn:checkout svn:xxxxx

    混淆编译

    sshpass -p xxx ssh -o StrictHostChecking=no root@xxx ./stop.sh

    sshpass -p xxx scp /root/xxx/xx.txt root@xxx:/root/xx

    sshpass -p xxx ssh -o StrictHostChecking=no root@xxx ./run.sh


    参考链接:https://blog.csdn.net/weixin_59663288/article/details/125637009

  • 相关阅读:
    恢复出厂设置,手机数据还能“复活”?
    WIN32核心编程 - 内存管理 内存页面
    【前端工程化】nuxt项目,asyncData方法不触发的原因排查
    Nginx环境搭建、负载均衡测试
    【axios】-- axios 二次封装
    【LGR-109】洛谷 5 月月赛 II & Windy Round 6
    分布式ID生成器-rain
    内网渗透-横向移动外部工具的使用
    时间计算器
    Spire.Office for Java 7.8.6 Hotfix
  • 原文地址:https://blog.csdn.net/n_fly/article/details/127934919