2330|1

164

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

迅为i.MX6ULL终结者移植ssh服务安装测试 [复制链接]

文章目录
1 基本文件的安装
2 生成 Key 文件,并安装
3 修改目标板密钥文件
4 测试
1 基本文件的安装
在文件系统busybox上新建“/usr/libexec“、“/usr/local/etc ”、“/usr/local/bin ”三个目录,使用命令“mkdir -p /usr/libexec /usr/local/etc /usr/local/bin”,如图 1.1所示。

在虚拟机 Ubuntu 上,将 openssh-6.6p1 下的生成“scp 、sftp、ssh、sshd、ssh-
add、ssh-agent、ssh-keygen、ssh-keyscan”可执行文件拷贝到文件系统“/usr/local/bin”目录下,拷贝完成,如图 1.2所示。

将“moduli、ssh_config、sshd_config”拷贝到开发板的“/usr/local/etc”目录下,
拷贝完成,如图 1.3所示。

将“sftp-server、ssh-keysign”拷贝到开发板的“/usr/libexec”目录下,拷贝完成,
如图 1.4所示。

2 生成 Key 文件,并安装
使用“ssh-keygen”生成个四个 key 文件“ssh_host_rsa_key”“ssh_host_dsa_key”
“ssh_host_ecdsa_key”和“ssh_host_ed25519_key”。
① 在虚拟机 Ubuntu 控制台,“/home/topeet/project/ssh-arm/openssh-4.6p1”目录下,使用命令“ssh-keygen -t rsa -f ssh_host_rsa_key -N ""”,可以生成“ssh_host_rsa_key ”文件
② 接着使用剩下的三条命令:
ssh-keygen -t dsa -f ssh_host_dsa_key -N ""
ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N ""
ssh-keygen -t dsa -f ssh_host_ed25519_key -N ""
执行完成之后,将生成的“ssh_host_rsa_key”“ssh_host_dsa_key”“ssh_host_ecdsa_key”和
“ssh_host_ed25519_key”文件,拷贝到文件系统的“/usr/local/etc/”目录下,然后将其权限 修改为 600,如下图所示。


3 修改目标板密钥文件
在文件系统中,使用命令“vi /etc/passwd”,打开 ssh 密钥文件,在 “/etc/passwd”文件底行添加以下内容:
sshd:x:74:74rivilege-separated
SSH:/var/empty/sshd:/sbin/nologin
添加完成之后,如下图所示,然后保存,密钥文件修改完成。

4 测试
作者的开发板链接路由器,PC 机的 Windows 系统也是链接路由器,所以首先要确保开发板和 PC 机是可以 Ping 通的,也就是设置在同一网段,修改文件系统的/etc/eth0-setting文件。
作者的 PC 的 IP 为:192.168.123.224,如图 4.1所示。

开发板的 IP 为:192.168.123.150,/etc/eth0-setting文件已经修改过。
将文件系统打包,烧写到开发板上
使用 ping 命令测试,如图 4.2所示,网络通畅,另外按键“Ctrl”+c 可以结束 ping 动作



接着在开发板上新建 root 账户,如图 4.4所示,使用命令“passwd root”,它会提示输
入密码,需要重复输入两次以防输错。

然后在开发板上运行 sshd 二进制文件,使用命令“/usr/local/bin/sshd”,提示如图 4.5

再去Ubuntu查看下ssh可执行文件,file sshd

在串口控制台输入 ln -sv /lib/ld-2.19-2014.08-1-git.so /lib/ld-linux.so.3 建立软链接,如图 4.7所示:

然后使用工具 ssh 测试是否和 PC 联通能否正常通信,如图 75.3.4.8所示,使用命令
“/usr/local/bin/ssh 192.168.123.224”,这里的 IP 是作者 PC 的 IP。

控制台输入“/usr/local/bin/sshd”虽然报错了,但是不影响使用。如果提示缺少动态库,前面的库文件如果拷贝不全,可能出现这种问题,如果用户使用迅为电子的根文件系统,经过测试各种文件都拷贝没有错误,一般是不会提示缺少什么库的。

接着在 PC 上使用 ssh 工具连接开发板,使用方法和连接 Ubuntu 上的 ssh 类似,如图 4.10所示。



然后传一个文件测试下,如图 4.12所示。

说明成功完成了文件传输移植工作。
ssh 控制台也是可以使用的,登陆方法和 PC 连接虚拟机 Ubuntu 的 ssh 一 样。
另外在安装部分,也可以将其拷贝到文件系统的源码中对应目录,重新打包编译,生成直接支持 ssh 的镜像。
到这里,部分用户可能会有疑惑,第一个人是如何知道 ssh 需要这两个库文件的呢?首先,开发 ssh 软件的大神,做了这个东西会提供编译和使用 demo,这样就有了基础的英文移植文档,然后慢慢的会有中文版的,接着 ssh 流传开了之后,通过网络搜索 ssh 移植到 arm的方法的文档和博客,就随处可见了。
当然,假如将来大家工作有移植的需求,找不到中文教程,需要直接使用某个开源软件的 demo,首先就需要英文过关,然后还需要有移植的基础知识。在编译的过程中,它会提示缺少各种库,通过编译,也是可以一步一步找出依赖库的。

最新回复

图确实看不到 没上传   详情 回复 发表于 2021-3-22 11:57
点赞 关注

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

图确实看不到

没上传

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表