2》編譯
/home/arm下新建目錄sshwork,并且將源碼復制到該目錄下
mkdir /home/arm/sshwork
cp zlib-1.2.3.tar.gz openssl-0.9.8d.tar.gz openssh-4.6p1.tar.gz
/home/arm/sshwork
/home/arm/sshwork下新建目錄lib,用來保存生成的庫文件。
mkdir /home/arm/sshwork/lib
1、編譯zlib
tar zxvf zlib-1.2.3.tar.gz -C .
cd zlib-1.2.3/
./configure
-prefix=/home/arm/sshwork/lib/zlib-1.2.3
修改Makefile :
CC=gcc 改為:
CC=arm-linux-gcc
LDSHARED= gcc 改為:LDSHARED=arm-linux-gcc
CPP= gcc - E ?改為:CPP=arm-linux-gcc -
E
AR= ar rc ?改為:AR=arm-linux-ar
rc
開始編譯: make
make install
2、編譯openssl
tar zxvf openssl-0.9.8d.tar.gz
./Configure --prefix=/home/arm/sshwork/lib/openssl-0.9.8d
os/compiler: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/arm/sshwork/lib/zlib-1.2.3
-with-ssl-dir=/home/arm/sshwork/lib/openssl-0.9.8d
-disable-etc-default-login
CC=arm-linux-gcc AR=arm-linux-ar
make
##不要make install
3》安裝
確保目標板上有以下目錄,如果沒有,則新建(目錄層次很重要,不要改變)
/usr/sbin
/usr/local/bin
/usr/local/libexec
/usr/local/etc/
1、在 openssh-4.6p1 目錄下創建 usr bin
目錄,文件臨時拷貝到這里,然后統一打包到開發板
cd openssh-4.6p1
mkdir -p bin
mkdir -p usr/sbin
mkdir -p usr/local/bin
mkdir -p usr/local/libexec
mkdir -p usr/local/etc
#sshd 工作目錄
mkdir -p var/run
mkdir -p var/empty/sshd
chmod sshd var/empty
2、將 openssh-4.6p1目錄下的 sshd 拷貝到 目標板的 /usr/sbin
目錄下
cp sshd ./usr/sbin
3、將 copy scp sftp ssh ssh-add ssh-agent ssh-keygen ssh-keyscan
到目標板/usr/local/bin目錄下
cp scp ?sftp ?ssh
ssh-add ?ssh-agent
ssh-keygen ?ssh-keyscan
./usr/local/bin
4、將 sshd_config ssh_config 拷貝到 /usr/local/etc/
目錄下
cp sshd_config ssh_config
./usr/local/etc
5、將 sftp-server ?ssh-keysign 到
/usr/local/libexec
cp sftp-server ?ssh-keysign
./usr/local/libexec
6、在主機上生成密鑰
ssh-keygen -t ecdsa -f ssh_host_ecdsa_key -N ""
ssh-keygen -t rsa -f ssh_host_rsa_key -N ""
ssh-keygen -t dsa -f ssh_host_dsa_key -N ""
將生成的 ssh_host_*_key這3個文件copy到./usr/local/etc/目錄下
cp ssh_host_* ./usr/local/etc/
7、在開發板 bin 目錄下創建軟連接
ln -s /usr/local/bin/scp
ln -s /usr/local/bin/sftp
ln -s /usr/local/bin/ssh
ln -s /usr/local/bin/ssh-add
ln -s /usr/local/bin/ssh-agent
ln -s /usr/local/bin/ssh-keygen
ln -s /usr/local/bin/ssh-keyscan