Hi3798 openSSH的移植
前言
在编译海思SDK时,会自动编译openssl,zlib,故无需重复编译这两者。
编译
编译openssh
本文下载openssh-7.3p1版本,将其下载至虚拟机
tar -xvf openssh-7.3p1.tar.gz
./configure --host=arm-linux --prefix=/usr/local/openssh --with-zlib=/hi3798/HiSTBLinuxV100R005C00SPC050/out/hi3798mv200/hi3798mv2dmo/obj/source/component/zlib/release --with-ssl-dir=/hi3798/HiSTBLinuxV100R005C00SPC050/out/hi3798mv200/hi3798mv2dmo/obj/source/component/openssl/release --disable-etc-default-login --disable-strip CC=arm-histbv320-linux-gcc AR=arm-histbv320-linux-ar
使前缀--prefix=/usr/local/openssh,因为最后openssh使安装在开发板的这个目录下,/hi3798/HiSTBLinuxV100R005C00SPC050/out/hi3798mv200/hi3798mv2dmo/obj/source/component/zlib/release是zlib在虚拟机下的安装目录,--with-ssl-dir=/hi3798/HiSTBLinuxV100R005C00SPC050/out/hi3798mv200/hi3798mv2dmo/obj/source/component/openssl/release 是ssl在虚拟机下的安装目录。
然后在openssh源目录下执行make
make
最终会在该目录下生成一下12个文件
scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan moduli ssh_config sshd_config sftp-server ssh-keysign
到目录下/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts目下解压rootfs.tar.bz2,得到rootfs文件夹,并且在rootfs文件夹下创建一下目录
/usr/local/openssh/bin
/usr/local/openssh/etc
/usr/local/libexec
/var/run
/var/empty
将以下文件拷贝到/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/usr/local/openssh/bin目录下:
在根文件系统的bin目录下建立软连接
ln -snf /usr/local/openssh/bin/scp
ln -snf /usr/local/openssh/bin/sftp
ln -snf /usr/local/openssh/bin/ssh
ln -snf /usr/local/openssh/bin/ssh-add
ln -snf /usr/local/openssh/bin/ssh-agent
ln -snf /usr/local/openssh/bin/ssh-keygen
ln -snf /usr/local/openssh/bin/ssh-keyscan
ln -snf /usr/local/openssh/bin/sshd
将moduli ssh_config sshd_config三个文件拷贝到/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/usr/local/openssh/etc目录下
并且执行以下命令生成证书密码对:
ssh-keygen -t rsa -f ssh_host_rsa_key -N ""
ssh-keygen -t dsa -f ssh_host_dsa_key -N ""
ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N ""
ssh-keygen -t ed25519 -f ssh_host_ed25519_key -N ""
至此,/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/usr/local/openssh/etc目录下有以下文件
将sshd_config中的PermitRootLogin no改为PermitRootLogin yes,将“Subsystem sftp /usr/libexec/sftp-server”改为“Subsystem sftp /usr/local/libexec/sftp-server”
将sftp-server ssh-keysign拷贝至/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/usr/local/libexec
另外,在/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/etc/group中添加
sshd:x:1001:sshd
在/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/etc/gshadow中添加
sshd:!::sshd
在/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/etc/passwd中添加
sshd:x:1001:1001:sshd privsep:/var/empty:/bin/ssh
在/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/etc/shadow中添加
sshd:BsmGtKsu9a9a6:15506:5:99999:7:5:20000:
shadow文件的详细说明见http://c.biancheng.net/view/840.html
在/hi3798/HiSTBLinuxV100R005C00SPC050/source/rootfs/scripts/rootfs/autorun.sh中添加
#!/bin/sh#addgroup sshd
#adduser -G sshd -g 'sshd privsep' -h /var/empty -p 123456 -s /bin/ssh sshd
#useradd -G sshd -g 'sshd privsep' -h /var/empty -p 123456 -s /bin/ssh sshd
echo root:123456 | chpasswd rootsed -i 's|:0:5:99999:7:5:20000:|:15506:5:99999:7:5:20000:|' /etc/shadow
chown -R root.root /var/empty
chmod 744 /var/empty
/usr/local/openssh/bin/sshd
echo "sleep 5"
在rcS末尾添加
cd /
chmod +x autorun.sh
./autorun.sh
Hi3798 openSSH的移植相关推荐
- 【超详细】嵌入式软件学习大纲
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_34981463/article/ ...
- eclipse gdb gdbserver 远程调试
https://blog.csdn.net/linuxarmsummary/article/details/44975495 我们在 Linux 主机中搭建我们的开发环境,使用 Ubuntu 10.0 ...
- openssh移植 for pycharm 远程调试 sftp
openssh移植 for pycharm 远程调试 sftp imx8mq根文件系统制作--openssh移植 https://blog.csdn.net/ggxyx123/article/deta ...
- Hi3798移植4G模块(移远EC20)
Hi3798移植4G模块(移远EC20) 一.前言 二.USB驱动修改 2.1 添加VID和PID信息 2.2 添加空包处理机制 2.3 添加复位重连机制 2.4 修改内核配置 三.GoBiNet测试 ...
- openssh arm linux 编译,移植openssh到arm linux
一.在移植之前需要准备做一些前期准备: 1.移植zlib库 1.1获取zlib源码 1.2解压 tar xvf zlib-1.2.11.tar.xz 1.3交叉编译 1.3.1 指定交叉编译器 exp ...
- openssh源码交叉编译,移植
安装移植openssh需要先make zlib和ssl. 安装包: zlib-1.2.12.tar.gz openssl-1.0.1e.tar.gz openssh-5.3p1.tar.gz 交叉编译 ...
- 【HI3798】移植AP6356S驱动 (SDIO接口WIFI)
目录 一.内核配置 1.1 配置WEXT 1.2 配置CFG80211 1.3 配置USB 1.4 配置Netlink 1.5 配置NAT转发
- 安装openssh 到 am5728 板子上
安装openssh 到 am5728 板子上 注意:目录不要放到虚拟机与windows的共享目录. 准备 虚拟机上进到目录 /home/llf/ssh 创建目录:zlib.install 和 open ...
- openssh arm linux 编译,openssh编译安装到ARM嵌入式系统中
目录 一.SSHD编译(此步骤在虚拟机上执行) 1.1 在/root/目录下创建ssh目录 1.2 交叉编译zlib 1.3交叉编译openssl 1.4交叉编译openssh 二.移植(此步骤在开发 ...
最新文章
- 亚洲最大的元宇宙平台,体验在豪宅里开party
- eBPF在大厂的应用
- Hadoop 2.2.0源码浏览:4. NodeManager
- npu算力如何计算_CPU、GPU、NPU、FPGA等芯片架构特点分析
- 计算机等级考试考卷试题按钮,全国计算机等级考试一级B模拟试题及答案2011.7...
- Flutter Provider 异步通信、Provider状态管理
- Python使用组合、排列和动态规划算法求解0-1背包问题
- oracle r11,Oracle XML Publisher在Oracle R11i中的实际运用
- 用成交量判断股价走势是否正常
- win11正式版iso镜像如何安装 windows11正式版iso镜像安装方法
- 【LeetCode】【数组】题号:*498,对角线遍历
- 射频通信接收机设计的主要结构
- 开源字体lato fonts
- 基于ExtendSim的六西格玛银行排队模型
- 多功能雨伞项目计划书_多功能雨伞项目计划书_雨伞策划书范文
- 进阶:主流的cpu插槽类型详解
- 好多粉数据上报之卧龙搜索ocpc API上报数据
- css3 制作音乐播放器音乐播放跳动音符
- element中设置5栏布局
- py-eureka-client学习笔记