小而美的sshpass以及ssh命令scp模式使用

组件选型

组件 说明
sftp-client lib 依赖ssl crypto等加密库
scp shell 仅与系统shell相关

以前曾经论述过,如果我们借用一些开源组件,应(Should)尽量使用依赖库少的;而对于存在依赖库,而依赖又是加密相关的库,则更是要慎之又慎之。

加密库,不同于libc库,库API在版本间变化比较大,而且经常存在兼容性问题。

所以,在引用sftp-client库进行客户端和服务器间的文件拷贝时,特别在非性能相关的场景,我的建议是使用更简单的scp shell命令进行替代!

使用scp首先遭遇的问题

scp替换第一个遇到的问题,就是对于命令调用中密码的输入问题。

  • 笔者粗略研究了下免密的处理

当然,这里最安全的免密做法,是通过ssh-keygenssh-copy-id的命令族进行配置非对称加密证书。

次之,则选用sshpassexpect组件,进行免交互处理。

但是,按照前面所述的原则,因为expect组件的依赖众多,虽然expect是一个更通用的免交互输入框架,但是,对于我们所要替代的sftp-client

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值