Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57873
  • 博文数量: 27
  • 博客积分: 580
  • 博客等级: 中士
  • 技术积分: 265
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-02 09:55
个人简介

做真实的自己!

文章分类
文章存档

2015年(1)

2014年(1)

2013年(8)

2012年(8)

2011年(1)

2010年(8)

我的朋友

分类: LINUX

2010-08-19 14:09:12

1.      下载需要的源码:

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

下载zlib:  wget -c

下载ssl:  wget -c

下载ssh: wget -c

 

 

源码已经包存在了资源目录 ./src中。

ssh_bin_armv5l.tar中(通过tar xf ssh_bin_armv5l.tar来解压缩),包含了使用armv5l-linux-gcc编译好的ssh必须的文件。只需要移植按装到开发板就可以使用,安装方法见如下:

1. etc中的passwdshadowgroup拷贝到目标板的/etc下。

2. usr/local下的拷贝到目标板的/usr/local下。

3. zlib/lib中的动态苦拷贝到/usr/lib下。

如过更换了编译器,需要重新制作。

2.    编译:

(1)      cd ~/arm/source

tar jxvf zlib-1.2.5.tar.tar -C .  // 把压缩文件解压到本地,-C是输出路径指定开关

cd zlib-1.2.5/

./configure --prefix=/root/work/ssh/source/zlib-1.2.5

 

修改Makefile:

CC=gcc 改为

CROSS=/opt/timesys/toolchains/armv5l-linux/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=/root/work/ssh/source/ssl os/compiler: /opt/timesys/toolchains/armv5l-linux/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/ssh/source/zlib-1.2.5 --with-ssl-dir=/root/work/ssh/source/ssl --disable-etc-default-login CC=/opt/timesys/toolchains/armv5l-linux/bin/arm-linux-gcc AR=/opt/timesys/toolchains/armv5l-linux/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目录下

(3)    拷贝sftp-server ssh-keysign到目标板的/usr/local/libexec目录下

(4)    拷贝编译好的zlib的动态库到目标板的/usr/lib目录下。

(5)    在目标板下:

            mkdir -p /usr/local/etc/ 

            然后将openssh下的sshd_config拷贝到该目录下

            mkdir -p /var/run; mkdir -p /var/empty/sshd

            chmod 755 /var/empty

(6)    在主机上(openssh-5.3p1路径下)

文件: openssl-1.0.0a.tar.tar
大小: 3921KB
下载: 下载

文件: openssh-5.3p1.tar.gz
大小: 1003KB
下载: 下载

文件: zlib-1.2.5.tar.tar
大小: 474KB
下载: 下载

 

     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_* 文件copy到目标板的 /usr/local/etc/目录下

(7)    添加用户:

如果目标机上,没有passwd, shadow, group 三个文件,那么,将主机上 /etc/目下的 passwd, shadow, group 三个文件copy到目标板的 /etc目录下, 同时记得将passwd的最后 /bin/bash 该为 /bin/sh

     其实可以删除不需要的一些用户。

      目标板的passwd中添加sshd用户:

      sshd:x:110:65534::/var/run/sshd:/usr/sbin/nologin

      shadow中也添加对应的项就行了:

      sshd:!:14069:0:99999:7:::

    

4.      测试
目标板启动sshd:  # /usr/sbin/sshd

     主机: $  ssh -v   //目标板的IP地址

 

ps: 红色的那些代表让armssh server时必须的

阅读(677) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~