mini2440开发板安装ssh

    技术2022-05-18  14

     

     

    首先确定已经

     

    开发板已与路由器相连,并进行了必要的网络配置,可以ping通本机

     

    1. 下载需要的源码,直接google最新的版本吧

    mkdir ~/work/fs ;mkdir -p ~/work/source

    下载zlib: zlib-1.2.3.tar.gz

    下载ssl :  openssl-0.9.8d.tar.gz

    下载ssh : openssh-4.6p1.tar.gz

     

     

    2.  编译:

    cd ~/work/source

     

    (1) 编译zlib :

    tar zxvf zlib-1.2.3.tar.gz -C .

    cd zlib-1.2.3/

    ./configure –prefix=/root/work/fs/zlib-1.2.3

    修改Makefile :

    CC=gcc 改为:

    CROSS=/usr/local/arm/4.3.2/bin/arm-linux -   ###这里的4.3.2依据自己的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

    cd openssl-0.9.8d.tar.gz

    . / Configure --prefix= /root/work/fs/openssl- 0. 9. 8d

    os/ compiler: /usr/local/arm/4.3.2/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=/root/work/fs/zlib-1.2.3

    -with-ssl-dir=/root/work/fs/openssl-0.9.8d –disable-etc-default-login

    CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc AR=/usr/local/arm/4.3.2/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/lib

     

    (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 -t rsa1 -f ssh_host_key -N ""

    ssh-keygen -t rsa -f ssh_host_rsa_key -N ""

    ssh-keygen -t dsa -f ssh_host_dsa_key -N ""           ###一个都不能少

    将生存的 ssh_host_* 6个文件copy到目标板的 /usr/local/etc/目录下

    ####Copy过来之后需要查看一下这几个文件的所有者,如果不是root需要修改所有者和所##在的组,chown

     

    (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

     

     

    刚开始在编译ssh时候总是过不了,出现gcc配置问题,host文件缺少问题,等等,查阅很多资料,浪费很多时间,最后都是不细心,不了解很多细节。切忌。

     


    最新回复(0)