感谢这位作者提供:https://github.com/ubiquiti/dropbear-android.git
以下操作基于Ubuntu 16.04,交叉编译方式,交叉编译工具链只支持32bit,64bit可能会出现异常.
如果andorid系统版本 < 4.1 ,执行如下命令:
export DISABLE_PIE=1
git clone https://github.com/pengrui2009/dropbear-android
chmod a+x build-dropbear-android.sh
1.假设我们的安卓交叉编译工具链目录:/path/to/standalone/toolchain,则我们执行如下命令,它将自动到/path/to/standalone/toolchain/bin/目录下找arm-linux-androideabi-gcc工具
export TOOLCHAIN=/path/to/standalone/toolchain
./build-dropbear-android.sh
编译完成之后,dropbear和dropbearkey文件将在target/arm目录.
使用adb工具将文件下载到andorid设备里.
adb push D:\dropbear /cust/app
adb push D:\dropbearkey /cust/app
adb shell
chmod 777 /cust/app/dropbear
chmod 777 /cust/app/dropbearkey
生成rsa和dss秘钥文件
mkdir /cust/app/etc/dropbear
/cust/app/dropbearkey -t rsa -f /cust/app/etc/dropbear/dropbear_rsa_host_key
/cust/app/dropbearkey -t dss -f /cust/app/etc/dropbear/dropbear_dss_host_key
创建日志文件
touch /var/log/lastlog
启动dropbear服务
root:ssh用户名
:ssh密码
A: 指定andorid模式及密码登录
G: 指定dropbear程序运行时的GID
U: 指定dropbear程序运行时的UID
N: 指定ssh登录用户名,这里我们为root
C: 指定ssh登录密码,这里我们为tusimple2020
/cust/app/dropbear -d /cust/app/etc/dropbear/dropbear_dss_host_key -r /cust/app/etc/dropbear/dropbear_rsa_host_key -p 22 -P /cust/app/etc/dropbear/dropbear.pid -R -A -N root -C tusimple2020 -U u0_aXX -G u0_aXX
如果我们想自己定制dropbear服务,可以修改如下文件:
a) default_options.h
b) sysoptions.h
c) config.h