Tout d'abord, en guise d'aparté pour les autres lecteurs : Nous ne parlons pas ici d'une "application" (celles-ci ont déjà été essayées et n'ont pas fonctionné sur cette architecture), mais d'un binaire en ligne de commande. DropBear fait parfois partie de Busybox ou il se présente comme binaire séparé .
Passons maintenant à la partie installation. Les binaires que vous installez vous-même vont de préférence à /system/xbin
qui se trouve dans le $PATH
mais généralement "initialement vide" (le contenu propre d'Android est dans /system/bin
y /system/sbin
), le risque de "collisions" est donc très faible. Ainsi, soit adb shell
ou le terminal de votre appareil et assurez-vous que vous êtes Root. Je suppose en outre que vous avez déjà transféré le dropbear
/ busybox
binaire sur votre carte SD.
mount -o remount,rw /system # make sure we can write to system
cp /sdcard/busybox /system/xbin # copy the binaries to /system/xbin
cp /sdcard/dropbear /system/xbin
cd /system/xbin # switch to our target directory
chmod 755 busybox dropbear # make sure we've set the correct permissions
busybox --install /system/xbin # advice busybox to create all its symlinks here
La partie installation est terminée (passez la partie dropbear
pièces ici si votre dropbear
est livré avec busybox
- et vice versa, ignorez le busybox
si cela n'est pas nécessaire.
Maintenant, nous devons faire dropbear
voler. Je n'ai jamais essayé moi-même, donc je me réfère à un script externe sur Github pour ça. En résumé (et au cas où ce lien ne fonctionnerait pas), en supposant que les fichiers requis sont déjà copiés sur votre carte SD :
\# Creating a home-dir for DropBear
mkdir /data/dropbear
chmod 755 /data/dropbear
mkdir /data/dropbear/.ssh
chmod 700 /data/dropbear/.ssh
# Copy over our files
mv /sdcard/authorized\_keys /data/dropbear/.ssh/
chown root: /data/dropbear/.ssh/authorized\_keys
chmod 600 /data/dropbear/.ssh/authorized\_keys
# Generate a hostkey, so we can use DropBear
dropbearkey -t rsa -f /data/dropbear/dropbear\_rsa\_host\_key
dropbearkey -t dss -f /data/dropbear/dropbear\_dss\_host\_key
Une partie supplémentaire si vous le souhaitez DropBear pour un démarrage automatique au démarrage :
cat << EOF >> /etc/init.local.rc
# start Dropbear (ssh server) service on boot
service sshd /system/xbin/dropbear -s
user root
group root
oneshot
EOF
Notez que cela suppose que votre appareil prend en charge init.d
scripts. Vérifiez d'abord la disponibilité de ce fichier pour vous en assurer.
Enfin, n'oubliez pas de faire /system
en lecture seule à nouveau. Soit vous redémarrez à ce stade (afin de pouvoir également vérifier que DropBear démarre comme prévu), ou au moins exécuter
mount -o remount,ro /system
pour l'instant, en reportant le redémarrage. Pour démarrer le service manuellement, il devrait être possible d'exécuter ce bloc par l'intermédiaire d'un script shell (vous pourriez par exemple avoir un fichier de type tasker pour démarrer et une autre pour arrêter le démon, et même créer des raccourcis vers ces tâches sur votre écran d'accueil pour un contrôle manuel). Encore une fois, je n'ai pas testé cette partie, donc c'est de la "pure théorie".
Bonne chance avec DropBear et BusyBox !