一、SSHDroid简介

SSH为Secure Shell的缩写,是建立在应用层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH客户端适用于多种平台,几乎所有UNIX平台都可运行SSH。

从客户端来看,SSH提供两种级别的安全验证:

1. 基于口令的安全验证:只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到”中间人”这种方式的攻击。

2. 基于密钥的安全验证:需要依靠密钥,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密”质询”(challenge)并把它发送给客户端软件。客户端软件收到”质询”之后就可以用你的私人密匙解密再把它发送给服务器。

SSHDroid是个免费的Android版的SSH服务器,SSH Server for Android,该应用可以让你通过PC或命令连接设备,实现无线传输和管理文件。 它要求手机和PC都连接在同一路由器(或WiFi)上。

SSHDroid最新版本为2.1.2,可以从https://www.apk20.com/apk/77332/v/73461/ 下载安装。安装后的界面如下:

二、sshpass简介

在Ubuntu中,可以通过源码安装sshpass,下载地址: https://pkgs.org/download/sshpas;也可以直接通过apt-get安装:

sudo apt-get install sshpass

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

sshpass支持密码从命令行、文件、环境变量中读取,所以,通过sshpass可以实现以非交互的形式为ssh提供密码。

假如远程服务器的密码为admin,端口号为port=2222,用户名为root,ip为ip=10.1.10.20:

(1). 将本机a.txt文件传到服务器,则可执行:

sshpass -p admin scp -P ${port} -r a.txt root@${ip}:~

(2). 在远程服务器上创建一个名为code的目录,则可执行:

sshpass -p admin ssh -p ${port} root@${ip} "mkdir -p code"

(3). 将远程服务器上目录名为data目录内容拷贝到本地/home/spring目录下,则可执行:

sshpass -p admin scp -P ${port} -r root@${ip}:data /home/spring/

以上内容参考:

1. https://baike.baidu.com/item/ssh/10407?fr=aladdin

2. http://www.bkjia.com/Androidjc/425513.html

3. https://www.jianshu.com/p/643aac9a9f4c

SSHDroid及sshpass简介相关推荐

  1. sshpass简介及安装

    2019独角兽企业重金招聘Python工程师标准>>> sshpass简介: ssh登陆不能在命令行中指定密码,sshpass 的出现,解决了这一问题.它允许你用 -p 参数指定明文 ...

  2. linux 非交互ssh sshpass简介

    ssh登陆不能在命令行中指定密码.sshpass的出现,解决了这一问题.sshpass用于非交互SSH的密码验证,一般用在sh脚本中,无须再次输入密码. 它允许你用 -p 参数指定明文密码,然后直接登 ...

  3. linux shell sshpass 远程服务器 批量修改密码

    命令如下: # 作用:把192.168.101.91服务器原密码:111111改成Softsec@2020CN sshpass -p "111111" ssh -o StrictH ...

  4. sshpass命令使用

    1.直接远程连接某主机sshpass -p {密码} ssh {用户名}@{主机IP}2.远程连接指定ssh的端口sshpass -p {密码} ssh -p ${端口} {用户名}@{主机IP} 3 ...

  5. linux sshpass 非交互的ssh密码验证 简介

    sshpass 命令的安装: # yum -y install sshpass 实例1:直接远程连接某台主机: 命令:sshpass -p xxx ssh root@192.168.11.11 实例: ...

  6. linux ssh非交互脚本,sshpass实现shell脚本非交互密码验证

    1.sshpass的简介 OpenSSH 自带的 ssh 客户端程序,默认不允许以非交互的方式传递密码,所以需要远程登录服务器进行批处理就无法进行.sshpass 的出现,解决了这一问题.它允许你用 ...

  7. sshpass命令的安装使用

    简介:         sshpass 是一个简单.轻量级的命令行工具,通过它我们能够向命令提示符本身提供密码(非交互式密码验证),这样就可以通过 cron调度器执行自动化的 shell 脚本进行备份 ...

  8. SSHPASS 源码分析

    简介 sshpass是一款自动为ssh填充密码的开源插件,并没有对ssh做任何修改,是从外部进行的操作.sshpass实现比较简单,但是非常易用,原理与expect类似.sshpass主函数源码只有5 ...

  9. Linux脚本免交互,系统运维|sshpass:一个很棒的免交互 SSH 登录工具,但不要用在生产服务器上...

    在大多数情况下,Linux 系统管理员使用 SSH 登录到程 Linux 服务器时,要么是通过密码,要么是无密码 SSH 登录或基于密钥的 SSH 身份验证. 如果你想自动在 SSH 登录提示符中提供 ...

最新文章

  1. 李彦宏首次公布24字百度愿景,要做最懂用户的公司
  2. matlab从flove,Matlab玩出新高度,变身表白女友神器_善良995的博客-CSDN博客
  3. 136.只出现一次的数字
  4. uv,top3访问次数
  5. @ControllerAdvice + @ExceptionHandler 处理 全部Controller层异常
  6. c语言里有bool变量,C语言中有没有bool类型
  7. Windows下,Unicode、UTF8,GBK(GB2312)互转
  8. 使用DisUnity解包unity资源文件
  9. 【游戏开发实战】Unity实现类似GitHub地球射线的效果(LineRenderer | 贝塞尔曲线)
  10. 数字代理在持续由内而外重塑创新
  11. PHP方法,传入的参数前带三个点是什么意思?
  12. blos硬盘启动台式计算机,教你联想 (Lenovo)台式机bios修改硬盘启动技巧
  13. 中南大学计算机2020研究生分数线,中南大学2020年考研复试分数线已公布
  14. 微信小程序获取地理位置信息
  15. Foxmail签名和模板的使用
  16. python回车换行怎么不行_python回车不能换行怎么办
  17. 物体检测中的小物体问题
  18. 以太坊开发中ethers库的使用
  19. 爬虫利器:Python获取免费IP代理
  20. 如何在SpringBootOAuth服务器中实现双因素身份验证?第一部分:配置

热门文章

  1. 用代码优雅的终止springboot服务
  2. LabVIEW OCR 实现车牌识别(实战篇—3)
  3. 计算机二级申请创新学分理由,创新学分申请书范文
  4. QString与string的相互转换
  5. Intro to Parallel Programming CUDA-第二单元
  6. OpenResty中遇到Can't locate Time/HiRes.pm in @INC问题的解决方法
  7. 使用 sched_setaffinity 将线程绑到CPU核上运行
  8. pip install失败报错解决方案
  9. Saiku二次开发获取源代码在本地编译(五)
  10. Yii 错误页面处理