Android配置ssh服务

1.下载dropbear

  将下载的dropbear文件夹放在external文件夹下,源码地址:https://pan.baidu.com/s/1kV9gmEj 提取码: 4mk6。

  也可在github上下载:https://github.com/android,点开网页后搜索dropbear就可以了,不过这个需要修改Android.mk文件和svr-authpasswd.c文件才能用。
  •  

2.编译dropbear

在android源码根目录下执行:. build/envsetup.sh(点后面有空格)

配置信息:choosecombo(无空格)

    Build type choices are:
      1. release
      2. debug
    Which would you like? [1] 1
    Which product would you like? [generic] xxx(输入自己的产品名)
    Variant choices are:
      1. user
      2. userdebug
      3. eng
    Which would you like? [eng] 1

编译:mmm external/dropbear
  •  

3.安装dropbear

前提条件:Android机器root
    电脑客户端安装secureCRT

  根据我提供的源码,会在out/target/product/xxx(你的产品名)/system/xbin目录下生成五个文件:dropbeaer、dropbearkey、scp、sftp-server、ssh。
  •  
   主机:$ adb connect IP(要配置的Android机器IP) 
   主机:$ adb shell
   android:/# mount -o remount,rw /system
   android:/# mkdir /system/etc/dropbear
   android:/# mkdir /system/etc/dropbear/.ssh
   android:/# chmod 755 /system/etc/dropbear
   android:/# chmod 755 /system/etc/dropbear/.ssh
  •  
  将system设置为可读写后,在out/target/product/xxx(你的产品名)/system/xbin目录下将这五个文件push到/system/xbin目录下(一定要system可读写才行)。
  •  
    主机:~/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)。
  •  

5.密钥登录

  密钥登录需要用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文件就可以了。

猜你喜欢

转载自blog.csdn.net/xzx208/article/details/82667005