海思平台交叉编译ssh

1、下载对应的源码

1.下载源码包
openssh  http://mirror.aarnet.edu.au/pub/OpenBSD/OpenSSH/portable/
openssl  https://www.openssl.org/source/old/1.0.1/
zlib     http://www.zlib.net/

mkdir install pack source

目录 pack用于存放源码压缩包

目录install用于软件安装目录

目录source 用于源码目录

2、交叉编译zlib

cd xxx/source/zlib-1.2.11

./configure --prefix=xxx/install/zlib-1.2.11

修改Makefile:  注明 根据自己的交叉编译进行配置

CC=arm-hisiv300-linux-gcc
AR=arm-hisiv300-linux-ar
CPP =arm-hisiv300-linux-gcc -E
LDSHARED=arm-hisiv300-linux-gcc

make

make install

例子: ./configure --prefix=/home/dawn/EMA_tech/SambaShare/common/bin/arm/bin/HI3516A/bin/install/zlib-1.2.11

 3.交叉编译openssl

cd xxx/source/openssl-0.9.8l  

注明os/compiler: 为交叉编译工具链
./configure --prefix=xxx/install/openssl-0.9.8l  
os/compiler:xxx/arm-hisiv300-linux-gcc

make 

make install

例子:./Configure --prefix=xxx/install/openssl-0.9.8l os/compiler:/opt/hisi-linux/x86-arm/arm-hisiv510-linux/bin/arm-hisiv510-linux-uclibcgnueabi-gcc

 4、交叉编译openssh

cd xxx/source/openssh-6.2p1

注:交叉编译链根据直接的路径进行选择

./configure --host=arm-hisiv300-linux 
            --with-libs 
            --with-zlib=xxx/install/zlib-1.2.11 
            --with-ssl-dir=xxx/install/openssl-0.9.8l 
            --disable-etc-default-login 
            CC=xxx/arm-hisiv300-linux-gcc 
            AR=xxx/arm-hisiv300-linux-ar

make

例子:./configure --host=arm-hisiv510-linux-uclibcgnueabi

--with-libs --with-zlib=xxx/install/zlib-1.2.11

--with-ssl-dir=xxx/install/openssl-0.9.8l/

--disable-etc-default-login 

CC=xxx/arm-hisiv510-linux-uclibcgnueabi-gcc

AR=xxx/arm-hisiv510-linux-uclibcgnueabi-ar

5、编译成功后安装目录出现对应的文件

6.将编译好的文件和库放到开发板相关的目录

确保开发板有一下目录,如果没有则创建.

/usr/local/bin/

/usr/local/sbin/

/usr/local/etc/

/usr/local/libexec/

/var/run/

/var/empty/

(1)将交叉编译主机xxx/source/openssh-6.2p1/目录中

        scp  sftp  ssh  ssh-add  ssh-agent  ssh-keygen  ssh-keyscan、

        拷贝到开发板/usr/local/bin/

(2)sshd 拷贝到开发板 /usr/local/sbin/

(3)moduli ssh_config sshd_config拷贝到开发板/usr/local/etc/

(4)sftp-server  ssh-keysign 拷貝到目标板/usr/local/libexec

cdxxx/source/openssh-6.2p1/目录 , 生成key文件

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_host_*_key这3ge文件copy到开发板的 /usr/local/etc/目录下,或者在 /usr/local/etc/目录直接使用命令生成文件

接着在开发板中看看有没有/usr/lib目录,如果没有就创建,将交差编译主机的/work/ssh/install/zlib-1.2.11/lib目录中的libz.so.1文件拷贝到开发板/usr/lib/目录下

7.修改开发板的passwd文件

在开发板/etc/passwd 中添加下面这一行
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

 

8.测试

在开发板运行
#/usr/local/sbin/sshd
可以用ps命令查看sshd是否在工作

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值