如何在开发板上使用sftp命令访问sftp-server

一、背景

      1、指定用户只能通过sftp访问上传下载文件,不能通过SSH登陆,并锁定在特定的目录下,而开发板没有sftp,如下图1。

                                                                图1

二、需要下载的库件(openssl,openssh)

2.1、下载路径(github官网下载)

2.2、以下为本人下载的库文件分享https://share.weiyun.com/UOPUjHgo三、Ubuntu交叉编译

 3.1、新建安装目录   

mkdir  test_sftp

cd test_sftp

mkdir source package

mkdir package/openssl

cd source

3.2、把下载的安装包放在此路径下解压

tar -zxvf openssl-3.0.0.tar.gz

tar -zxvf openssh-8.4p1.tar.gz

3.3、openssl编译

cd openssl-3.0.0

./Configure --prefix=/home/gec/Downloads/test_tsftp/package/openssl  (--prefix指定安装路径)

source /opt/fsl-framebuffer/2.4.4/environment-setup-cortexa9hf-neon-fsl-linux-gnueabi (声明交叉编译器),我的开发板指定交叉编译器为arm-fsl-linux-gnueabi-gcc。安装路径是/opt/fsl-framebuffer/2.4.4/environment-setup-cortexa9hf-neon-fsl-linux-gnueabi

make

make install

3.4、make后编译可能出现的错误,交叉编译器路径错误,-m64错误(如图2),图3为修改后的Makefile

                                                                图2

                                                                图3

 安装成功后package/openssl/目录下有相关库文件生成

 3.4、openssh交叉编译

cd /openssh-8.4p1

./configure --host=arm-fsl-linux-gnueabi --with-ssl-dir=/home/gec/Downloads/test_stftp/package/openssl --disable-etc-default-login

(--host指定交叉编译器,--with-ssl-dir=指向openssl相关库)

make

make成功后可以查找sftp,sftp-server移植到开发板/bin目录下,libcrypto.so.3放在/lib目录下,权限设置为777,

在开发板终端输入sftp,如下图为移植成功

 若连接sftp服务器报下图错误,把ssh下载到/usr/local/bin/目录下,权限设置777.

再次登录sftp服务器成功

完!

                            

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值