imx8mq根文件系统制作——openssh移植

本文详细介绍了如何在IMX8MQ设备上制作根文件系统并移植OpenSSH,包括下载源码、编译安装以及解决移植过程中遇到的问题,如权限分离、秘钥对生成、免密登录等配置。关键步骤包括配置sshd_config和ssh_config文件,以及在开发板上建立可执行程序链接。
摘要由CSDN通过智能技术生成

一、下载源码

zlib官方下载:http://www.zlib.net/
openssl官方下载:http://www.openssl.org/source  ( OpenSSL >= 1.0.1 < 1.1.0)或     LibreSSL http://www.libressl.org/
openssh官网下载:http://www.openssh.com/portable.html
二、编译源码

源文件在ubuntu上的目录结构如下:

1、编译zlib
CC=aarch64-linux-gnu-gcc CFLAGS="-O4"  ./configure --static --prefix=/home/yasir/myproject/sftp/install/zlib
make  &&  make install 

2、编译openssl:openssl根目录下:

./Configure --prefix=/home/yasir/myproject/sftp/install/ssl os/compiler:aarch64-linux-gnu-gcc
make && make install

3、编译openssh
./configure --host=arm-linux --prefix=/usr/local --with-zlib=/home/yasir/myproject/sftp/install/zlib --with-ssl-dir=/home/yasir/myproject/sftp/install/ssl --disable-etc-default-login --disable-strip CC=aarch64-linux-gnu-gcc AR=aarch64-linux-gnu-ar --without-pie

make  //不需要install

可能会出现缺少libssl-dev

执行apt-get install libssl-dev 安装libssl-dev 即可

注意: --prefix=/usr/local 路径的指定,很多人说没有实质用处,其实是有用的,在开发板上执行sshd时,sshd会在 --prefix=/usr/local 这个指定的路径下寻找秘钥对,当然我们也可以在sshd_config文件中配置这个路径。

三、openssh移植

1、开发板上创建,我采用网络文件系统启动,看个人的方式了。
mkdir /usr/local/bin -p
mkdir /usr/local/sbin -p
mkdir /usr/local/etc -p
mkdir /usr/libexec -p

将主机上openssh编译的文件拷贝到这些目录中:这里只是演示一下,实际命令不是这个,按需调整

cp ./{scp,sftp,ssh,ssh-add,ssh-agent,ssh-keygen,ssh-keyscan}     /usr/local/bin
cp ./{moduli,ssh_config,sshd_config}                                              /usr/local/etc
cp ./{sftp-server,ssh-keysign}                                                          /usr/libexec
cp ./sshd                                                                                          /

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值