Skip to main content

免交互输入ssh密码工具sshpass


免密码 ssh 登录,大家都知道用 rsa/dsa 证书即可。但是某些设备并不支持证书登录,如部分型号的硬件防火墙。那么如何实现免交互式输入 ssh 密码呢,这里介绍下 sshpass 这个小工具。

01.Introduction

sshpass 是一个轻量级(16K)的 CLI 工具,可以实现 ssh 免输入密码(非交互式)登录远程服务器,这样就可以在本地脚本或者 cron 任务中远程登录服务器执行命令。
在别人的博文中看到使用 sshpass ,本地系统上其他用户用 ps -ef 命令可以看到明文的密码,不过我测试发现密码部分其实被替换为 zzzzzzz 了,也许是版本不同的原因。本文中版本为 1.0.6

02.HowTO

帮助:
Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters
   -f filename   Take password to use from file
   -d number     Use number as file descriptor for getting password
   -p password   Provide password as argument (security unwise)
   -e            Password is passed as env-var "SSHPASS"
   With no parameters - password will be taken from stdin

   -h            Show help (this screen)
   -V            Print version information
At most one of -f, -d, -p or -e should be used
实例:
sshpass -p 111111 ssh root@192.168.1.1 "echo 'hello world!'"

Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into ...

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checkin...