嵌入式linux系統中移植SSH
硬件平台:s3c6410(arm)
操作系統:linux
一直用的串口調試機器,不過有線的串口也有不方便之處,調試設備必須抱著筆記本,所以想辦法把SSH移植到機器中 www.2cto.com
Dropbear是一個相對較小的SSH服務器和客戶端。它運行在一個基於POSIX的各種平台。 Dropbear是開源軟件,在麻省理工學院式的許可證。 Dropbear是特別有用的“嵌入”式的Linux(或其他Unix)系統,如無線路由器。(一個完整的openssh大小有7M左右)
www.2cto.com
准備
zlib-1.2.3.tar.gz 點擊進入下載地址
dropbear-0.52.tar.gz 點擊進入下載地址
1.交叉編譯zlib-1.2.3.tar.gz
解壓zlib-1.2.3.tar.gz,創建/usr/local/zlib目錄;
./configure --prefix =/usr/local/zlib
修改Makefile
CC=arm-linux-gcc
AR=arm-linux-ar rc
RANLIB=arm-linux-ranlib
make;make install;
2.交叉編譯dropbear-0.52.tar.gz
解壓dropbear-0.52.tar.gz,創建/usr/local/dropbear;
./configure –prefix=/usr/local/dropbear –with-zlib=/usr/local/zlib/ CC=arm-linux-gcc –host=arm
注:這裡要求使用絕對路徑-如果希望放在home目錄可以使用${HOME}/usr/locale/zlib與${HOME}/usr/locale/dropbear
make;
make scp;
make install;
cp scp /usr/local/dropbear/bin/
3.移植到6410:
將/usr/local/dropbear/bin/和/usr/local/dropbear/sbin/下的文件都復制到板上/usr/sbin目錄。
在板上生成server key:
cd /etc
mkdir dropbear
cd dropbear
dropbearkey -t rsa -f dropbear_rsa_host_key
dropbearkey -t dss -f dropbear_dss_host_key
在啟動腳本/etc/init.d/rcS中增加: /usr/sbin/dropbear
3.配置ssh:
修改root密碼(如果無法修改請在/etc中添加passwd與group文件)
pwsswd文件中如下
root:9.iWjoCN45yCg:0:0:Linux User,,,:/root/:/bin/sh
我這裡測試goup文件空的也可以
或者:
root狀態下在板上輸入命令添加用戶michael和設置密碼 //最好直接改root密碼
adduser michael
注:
如果連接出現以下問題:
[plain]
dragon@dragon-ubuntu10:/srv/nfs/rootfs/usr/local/dropbear/bin$ ssh 10.17.98.2 -l root
[email protected]'s password:
PTY allocation request failed on channel 0
shell request failed on channel 0
解決方法:
在dev中創建pts目錄:mkdir /dev/pts -p
在fstab文件中添加一段 none /dev/pts devpts defaults 0 0
#vi /etc/fstab
none /dev/pts devpts defaults 0 0
然後 mount -a
問題應該能夠得到解決
用xshell連接就能連上去了~ 如果不行的話直接用root用戶試試~