SSH移植
1. 下载需要的源码,直接google最新的版本吧 mkdir -p ~/arm/fs ;mkdir -p ~/arm/source 下载zlib: zlib-1.2.3.tar.gz 下载ssl : openssl-0.9.8d.tar.gz 下载ssh : openssh-4.6p1.tar.gz
2. 编译:
cd ~/arm/source
(1) 编译zlib : tar zxvf zlib-1.2.3.tar.gz -C . cd zlib-1.2.3/ ./configure --prefix=/home/itlanger/arm/fs/zlib-1.2.3
修改Makefile : CC=gcc 改为: CROSS=/usr/local/arm/3.4.1/bin/arm-linux- CC= $(CROSS)gcc LDSHARED=gcc 改为: LDSHARED=$(CROSS)gcc CPP=gcc - E 改为 : CPP=$(CROSS)gcc - E AR=ar rc 改为: AR=$(CROSS)ar rc 开始编译: make; make install
(2) 编译openssl: tar zxvf openssl- 0. 9. 8d.tar.gz ./configure --prefix=/home/itlanger/arm/fs/openssl-0.9.8d os/compiler:/usr/local/arm/3.4.1/bin/arm-linux-gcc make make install
(3) 编译openssh: tar zxvf openssh-4.6p1.tar.gz cd openssh-4.6p1/ ./configure --host=arm-linux --with-libs --with-zlib=/home/itlanger/arm/fs/zlib-1.2.3 --with-ssl-dir=/home/itlanger/arm/fs/openssl-0.9.8d --disable-etc-default-login CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc AR=/usr/local/arm/3.4.1/bin/arm-linux-ar make ##不要make install
3. 安装
(1) 将 openssh-4.6p1目录下的 sshd 拷贝到 目标板的/usr/sbin目录下 (2) 再copy scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan 到目标板/usr/local/bin 目录下 copy sftp-server ssh-keysign 到/usr/local/libexec
(3) 在目标板下: mkdir -p /usr/local/etc/ 然后将openssh下的sshd_config , ssh_config 拷贝到该目录下
mkdir -p /var/run; mkdir -p /var/empty/sshd chmod 755 /var/empty (4)在主机上: ssh-keygen -q -t rsa1 -f ssh_host_key -C '' -N '' ssh-keygen -q -t rsa -f ssh_host_rsa_key -C '' -N '' ssh-keygen -q -t dsa -f ssh_host_dsa_key -C '' -N '' 目标机上 chmod 600 ssh_host_rsa1_key chmod 644 ssh_host_rsa1_key.pub chmod 600 ssh_host_rsa_key chmod 644 ssh_host_rsa_key.pub chmod 600 ssh_host_dsa_key chmod 644 ssh_host_dsa_key.pub 将生存的 ssh_host_* 4个文件copy到目标板的 /usr/local/etc/目录下 (5) 添加用户: 将主机上 /etc/ 目下的 passwd, shadow, group 三个文件copy到目标板的 /etc 目录下, 同时记得将passwd的最后 /bin/bash 该为 /bin/sh //这一步以后,开发板上的用户结构与你本机的结构就是一样的了,所以在cp之前先把你自己的root密码设好 //#passwd设置root密码,然后在把上面3个文件cp到开发板/etc下
其实可以删除不需要的一些用户。
4.测试
目标板启动sshd: # /usr/sbin/sshd
//在开发板上运行这个命令的时候可能会提示 //Privilege separation user sshd does not exist //需要在开发板的系统里adduser shhd //或者在 /etc/passwd 中添加下面这一行
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
主机: $ ssh root@192.168.0.34(开发板的ip) //root密码就是你本机上root的密码
移植完成了 目标板启动sshd: # /usr/sbin/sshd 主机: $ ssh -v root@192.168.0.34 但是有点问题会报一大堆错,高手告诉我要删掉 /root/.ssh/known_hosts
SSH移植的更多相关文章
- ssh 移植记录
利用buildroot 先编译一个 sshd cd buildroot-2016.05/ make menuconfig Target packages ---> Networking appl ...
- iTOP-IMX6UL 实战项目:ssh 服务器移植到 arm 开发板
实验环境:迅为提供的Ubuntu12.04.2 以及虚拟机 编译器:arm-2009q3 编译器 开发板系统:QT系统 开发板使用手册中给Windows 系统安装了 ssh 客户端,给 Ubunt ...
- iTOP-4412开发板-实战教程-ssh服务器移植到arm开发板
本文转自迅为开发板:http://www.topeetboard.com 在前面实战教程中,移植了“串口文件传输工具”,整个移植过程是比较简单的,而且我 们没有做任何协议方面的了解,只是“配置”+“编 ...
- 如何移植sshserver到嵌入式平台
ssh解释说明 SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:SSH 为建立在应用层基础上的安全协议.SSH 是较可靠,专 ...
- 关于 WinScp 的一点使用经验
在嵌入式平台下 是,使用SSH登陆,可以使用WinScp提供的图形界面,支持拖拽,鼠标直接打开,甚是好用. 使用WinScp 登陆的方式有,Scp和sftp两种,之前一只用scp,但后来出现了如下错误 ...
- 将 ssh (security shell) 移植到 vxworks
openssh 依赖 openssl,这两个东西主要针对posix系统,移植到 vxworks 等实时系统有相当的难度. 可以考虑移植如下的库(ssh server): dropbear: https ...
- 【转载】嵌入式 Linux 移植 Dropbear SSH server
0. 背景 OpenSSH因为其相对较大,一般不太适用于嵌入式平台,多用于PC或者服务器的Linux版本中. Dropbear是一个相对较小的SSH服务器和客户端.它运行在一个基于POSIX的各种 ...
- Arm-Linux 移植 ssh
背景: 自己拥有一块开发板,但是苦于上面没有ssh,比较不方便.正好趁这个机会,移植ssh.我们使用的ssh是openssh. host平台 :Ubuntu 18.04 arm平台 : S5P6818 ...
- 2017-9-15-Linux移植:WinSCP软件 & SSH Server开启
在Linux电脑上面安装了TFTP server,但是各种不给力,决定寻找其他办法在Windows和Linux之间传输文件. WinSCP 是一个 Windows 环境下使用 SSH 的开源图形化 S ...
随机推荐
- leetcode_1039. Minimum Score Triangulation of Polygon_动态规划
https://leetcode.com/problems/minimum-score-triangulation-of-polygon/ 题意:给定一个凸的N边形(N<=50),每个顶点有一个 ...
- Android(java)学习笔记186:多媒体之视频播放器
1. 这里我们还是利用案例演示视频播放器的使用: (1)首先,我们看看布局文件activity_main.xml,如下: <RelativeLayout xmlns:android=" ...
- Android(java)学习笔记176: 远程服务的应用场景(移动支付案例)
一. 移动支付: 用户需要在移动终端提交账号.密码以及金额等数据 到 远端服务器.然后远端服务器匹配这些信息,进行逻辑判断,进而完成交易,返回交易成功或失败的信息给移动终端.用户提交账号. ...
- MySQL存储过程实现分页及变量的定义
delimiter是MySQL中的命令,这个命令与存储过程没什么关系. 其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了. 即改变输入结束符. 默认情况下,delimit ...
- 手工修改注册表激活windows xp法
手工修改注册表激活windows xp法: 1.安装原版windows xp 2.打开注册表regedit 3.找到主键 Hkey_Local_Machine\Software\Microsoft\W ...
- m3u8 格式转MP4
现在很多视频网站采用HLS流媒体的方式来提供视频直播,在HTML源代码中flash的播放地址为 http://xxxxxx/video/movie.m3u8 1.m3u8下载的格式大致如下: #EXT ...
- MongoDB中导入数据命令的使用(mongoimport)
MongoDB中导入数据命令的使用(mongoimport) 制作人:全心全意 语法: mongoimport <options> <file> 介绍: 该命令可以将CSV,T ...
- SONP 是什么
JSONP 是什么 说实话,我学了这么久,其实也没有好好了解这个东西,当然平常自己在前端方面也涉猎较浅. 1) jsonp 是什么 JSONP(JSON with Padding)是JSON的一种&q ...
- php中session和cookie的使用及区别
1.cookie的使用 什么是 Cookie? cookie 常用于识别用户.cookie 是服务器留在用户计算机中的小文件.每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie.通过 P ...
- Django之学员管理
Django之学员管理 实现-------在前端页面提交的数据,后端可直接写入数据库.在页面实现操作数据库的增删改查. 数据表设计:(三个角色四张表) 班级表: id title 1 花果山国小一年级 ...