1.下载dropbear
将下载的dropbear文件夹放在external文件夹下,
源码地址:https://pan.baidu.com/s/1kV9gmEj 提取码: 4mk6。
感谢这位csdn用户 原博主地址 http://blog.csdn.net/ieryca/article/details/71171561
2.编译dropbear
需要你有Android源码 宿主机版本最好和目标机的一致 [ 做Android SDK开发的应该有 ].
3.安装dropbear
前提条件:Android机器root
宿主机 使用Ubuntu 会用adb minicom
根据提供的源码,编译之后会在out/target/product/xxx(你的产品名)/system/xbin目录下生成五个文件:
dropbeaer、dropbearkey、scp、sftp-server、ssh。
主机:$adb connect IP(要配置的Android机器IP)
主机:$adb root ; adb connect IP ; adb remount; adb shell
android:/# mount -o remount,rw /system
android:/# mkdir -p /system/etc/dropbear/.ssh
android:/# chmod 755 -R /system/etc/dropbear
主机:~/android/out/target/product/xxx/system/xbin$ adb push dropbear /system/xbin
主机:~/android/out/target/product/xxx/system/xbin$ adb push dropbearkey /system/xbin
主机:~/android/out/target/product/xxx/system/xbin$ adb push scp /system/xbin
主机:~/android/out/target/product/xxx/system/xbin$ adb push sftp-server /system/xbin
主机:~/android/out/target/product/xxx/system/xbin$ adb push ssh /system/xbin
android:/# chmod 755 /system/xbin/dropbear*
android:/# dropbearkey -t dss -f /system/etc/dropbear/dropbear_dss_host_key
android:/# dropbearkey -t rsa -f /system/etc/dropbear/dropbear_rsa_host_key
4.密码登录
密码登录到这一步就可以了,重启机器,然后输入dropbear -E -F -v,
就可以通过客户端登录了(端口号在dropbear的options.h文件中,
密码在svr-authpasswd.c里,用户名默认root)。
该源码中的密码是123456
在这一步 我遇到了问题 ubuntu上ssh root@IP -p 2223
Warning: Permanently added '[192.168.199.193]:2223' (RSA)
to the list of known.....
于是我将~/.ssh/id_rsa.pub 我的公钥放到了目标机器的
/system/etc/dropbear/authorized_keys
adb push ~/.ssh/id_rsa.pub /system/etc/dropbear/authorized_keys
keys钥登录(未验证)
密钥登录需要用secureCRT创建密钥对,
tools ->create public key ->选择DSA ->passphrase不填
->keylenth不管 ->选择openssh ->finish,
会生成identity和identity.pub两个文件。
主机:$ adb push identity.pub /system/etc/dropbear/.ssh
android:/# cd /system/etc/dropbear/.ssh/
android:/# mv identity.pub authorized_keys
android:/# chmod 755 authorized_keys
android:/# dropbear -E -F -v -s
客户端可以连接了,不需要密码,选择identity文件就可以了。