• 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

  • 相关阅读:
    Linux下git安装及使用
    [RCTF2015]EasySQL 二次注入 regexp指定字段 reverse逆序输出
    Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)
    ChatGPT 从零完全上手实操指南!
    ASO优化之什么原因会导致关键词落榜?
    MQTT协议和边缘计算
    理想正方形(单调队列),22数(数位dp)
    如何在Access2007中使用日期类型查询数据
    天池Python练习05-列表操作
    “结构体名”和“结构体名是个指针”的区别
  • 原文地址:https://blog.csdn.net/n_fly/article/details/127934919