您的位置 首页 培训

Embeded linux之移植ssh

Embeded linux之移植ssh-问题出现在xshell版本太低,没有相应加密算法,更换新的就行了,我用的xshell5,xshell3就不支持最新sshd加密

一、源码包下载:

zlib官方下载:http://www.zlib.net/

openssl官方下载:http://www.openssl.org/source

openssh官网下载:http://www.openssh.com/portable.html

本文运用版别:

zlib-1.2.3

openssl-0.9.8l

openssh-7.1p2

下面链接有已上传的装备好的源码包

http://files.cnblogs.com/files/pokerface/zlib-1.2.3.tar.gz

http://files.cnblogs.com/files/pokerface/openssl-0.9.8l.tar.gz

http://files.cnblogs.com/files/pokerface/openssh-7.1p2.tar.gz

二、创立作业目录

装置途径:/opt/ssh/install/

源码途径:/opt/ssh/source/

压缩包途径:/opt/ssh/tmp/

三、编译装置zlib

1.修正Makefile :

添加CROSS=armlinux

CC=gcc       改为 CC=$(CROSS)gcc

保证 LDSHARED=CC
保证 CPP=CC – E
AR= ar rc      改为 AR=$(CROSS) ar rc

prefix = /opt/ssh/install/

2.编译:

make

3.装置:
make install 

四、编译装置openssl

1.装备

./Configure –prefix=/opt/ssh/install/openssl os/compiler:arm-linux-gcc
2.编译

make

3.装置

make install

五、编译openssh

1.装备

./configure –host=arm-linux –with-libs –with-zlib=/opt/ssh/install/zlib-1.2.3/ –with-ssl-dir=/opt/ssh/install/openssl-0.9.8/ –disable-etc-default-login CC=arm-linux-gcc AR=arm-linux-ar

2.编译

make

3.将生成软件放到方针板对应目录

cp scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan /opt/filesystem/imx6/rootfs/usr/local/bin/

cp moduli ssh_config sshd_config /opt/filesystem/imx6/rootfs/usr/local/

cp moduli ssh_config sshd_config /opt/filesystem/imx6/rootfs/usr/local/etc/

cp sftp-server ssh-keysign /opt/filesystem/imx6/rootfs/usr/libexec/

cp sshd /opt/filesystem/imx6/rootfs/usr/sbin/

chmod 777 /opt/filesystem/imx6/rootfs/usr/local/bin/*

chmod 777 /opt/filesystem/imx6/rootfs/usr/sbin/*

六、生成密钥文件

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 dsa -f ssh_host_ed25519_key -N “”

chmod 600 ssh_host_ed25519_key

cp ssh_host_* /opt/filesystem/imx6/rootfs/usr/local/etc/

七、修正ssh装备文件

1. /usr/local/sshd_config,将PermitRootLogin yes前的注释“#”号去掉。
2. /etc/passwd 文件,在最终添加下面这一行:

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

3.假如开发板的 root 用户还没有暗码,键入以下指令然输入两次暗码来修正,否其他设备无法连:

passwd root 

4.将sshd参加开机启动项

修正/etc/init.d/rcS添加/usr/sbin/sshd 

八、软件长途登录

假如呈现

找不到匹配的outgoing encryption算法

问题呈现在xshell版别太低,没有相应加密算法,更换新的就行了,我用的xshell5,xshell3就不支撑最新sshd加密

POD document had syntax errors at /usr/bin/pod2man line 71.

问题呈现在因为OpenSSL 1.0.1e 与 perl5.18 不兼容,删去 pod2man文件:sudo rm /usr/bin/pod2man

cp: cannot create regular file ‘openssl/include/openssl/crypto.h’: No such file or directory

问题呈现在因为装备时运用了相对途径,改为绝对途径就可以了

 

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/peixun/89365.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部