闲碎记事本 闲碎记事本
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

YAN

我要偷偷记录...
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • java

  • linux

    • Shell基础
    • OpenEuler系统JAVA部署问题
    • sshpass 使用
      • 示例
      • -p 直接指定密码
      • -f 文件中读取密码
      • -e 环境变量中获取密码
    • 固定机器ip
    • 一些可修改的系统设置
    • 服务自启
    • 一些查询命令
    • Swap空间
  • docker

  • redis

  • nginx

  • mysql

  • 其他

  • 环境搭建

  • 知识库
  • linux
YAN
2024-08-23
目录

sshpass 使用

sshpass 可进行非交互的ssh密码验证,允许使用-p参数指定明文密码。对比ssh需要用户进行交互,sshpass可用于脚本中进行自动登录。

# 示例

# -p 直接指定密码

sshpass -p password ssh -p 22  port user@ip  

登录并执行命令

sshpass -p password ssh -p port user@ip  " cmd "

警告

使用ssh第一次登录某台服务器时,会有提示 (yes/no) 的确认,这时用sshpass会不好使

解决办法:可以在ssh命令后面加上 -o StrictHostKeyChecking=no来解决, 如下:

  • 可以在ssh命令后面加上 -o StrictHostKeyChecking=no来解决, 如下:
    sshpass -p password ssh -o StrictHostKeyChecking=no user@ip
    
  • 修改ssh的配置文件,修改需要登录机器的/etc/ssh/ssh_config ,设置StrictHostKeyChecking no

# -f 文件中读取密码

模拟密码写入文件pwd.txt

echo '123456' > pwd.txt

指定文件登录

sshpass -f pwd.txt ssh user@ip

# -e 环境变量中获取密码

设置密码到环境变量

export SSHPASS= "123456"

使用环境变量密码登录

sshpass -e ssh user@ip
上次更新: 2025/05/14, 01:34:05
OpenEuler系统JAVA部署问题
固定机器ip

← OpenEuler系统JAVA部署问题 固定机器ip→

最近更新
01
Caddy操作指南
04-25
02
Swap空间
04-22
03
Alist使用
04-21
更多文章>
Theme by Vdoing | Copyright © 2022-2025 YAN | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式