Por supuesto, tengo ConnectBot, pero estoy buscando algo que pueda escribir.
Editar: para aclarar aquí, no estoy interesado en ejecutar scripts desde una terminal. Lo que quiero hacer es ejecutar un comando SSH de manera automatizada / programada. Tasker y Locale Execute son el equivalente de cron, todo lo que necesito es el comando 'ssh' para ejecutar desde el script.
ssh
command-line
ÁRBOL
fuente
fuente
Respuestas:
Puede instalar el emulador de terminal desde google. Alternativamente, existe el Better Terminal Emulator Pro . Probé el emulador de terminal en un teléfono no rooteado y parecía funcionar bien.
Better Terminal Emulator Pro incluye el cliente dropbear ssh , que se puede iniciar desde la línea de comandos o mediante un lanzador. Más información de los autores .
fuente
Como mi pregunta original era sobre un binario ssh, y hay una respuesta para eso, aceptaré esa respuesta. Sin embargo, hay otra forma de hacer lo que quería hacer, que podría ser interesante para alguien algún día.
Tasker + ConnectBot se puede usar para ejecutar comandos remotos arbitrarios (o locales, supongo, pero Locale Execute es mejor para eso) en un horario.
Paso 1: configura tu conexión en ConnectBot.
Paso 2: crea una tarea Tasker para llamar a connectbot.
Paso 3: Use esta tarea en Tasker como lo haría normalmente.
fuente
Sé que es un hilo viejo pero quería hacer +1 en el comentario sobre BTEP
También estoy usando el binario ssh de BTEP aunque solo lo llamo desde su ruta en lugar de vincularlo /data/data/com.magicandroidapps.bettertermpro/bin/ssh [email protected]
o generar un par de claves y usar la autenticación de clave pública /data/data/com.magicandroidapps.bettertermpro/bin/ssh -i /data/data/com.magicandroidapps.bettertermpro/home/.ssh/id_rsa -l root 192.168.1.1
Uso el comando anterior de SL4A r4 en varios scripts y funciona bien :)
antes de poder hacer esto, necesitaba chmod a + x /data/data/com.magicandroidapps.bettertermpro/home/.ssh
una vez hecho esto y haga una copia de seguridad / restauración de BTEP con TitaniumBackup, los permisos se mantienen, esto significa que si actualiza una nueva rom, puede restaurar las aplicaciones y todos sus scripts volverán a funcionar
fuente
He utilizado con éxito BotBrew Basil Experimental al ejecutar Android 4.4. BotBrew Basil Experimental se basa en apt-get, así que después de instalar APK y bootstraping, acabo de hacerlo
apt-get install dropbear
en un shell de raíz para instalar el cliente SSH (y el servidor).fuente
Instalar emulador de terminal y quickssh. Quickssh también incluye dropbear. No le cuesta dinero, lo que no debería ser porque esto es increíblemente simple y se basa en dropbear.
https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroid
find -name ssh
usuario @ hostProblema resuelto
fuente
Terminal Emulator es absolutamente compatible con scripts *. No les creas a los que no dicen nada. Tendrá que aprender el script de shell BASH, si aún no está familiarizado con él. Escriba un guión y guárdelo en su tarjeta SD. Ejecútelo con "sh filename" del término.
Si aclaras qué es lo que quieres "script" que tenga que ver con SSH, probablemente pueda darte una mejor recomendación.
* (En realidad, es el sistema operativo Android que admite scripts BASH, Terminal Emulator solo le otorga acceso al shell de Android, por lo tanto, el script es inherentemente posible)
fuente
Para llamar a ssh desde un script, todo lo que necesita hacer es configurar las teclas ssh. Hay un millón de instrucciones en la web, pero hay una página en el wiki de Cyanogen que podría ser más adecuada para los usuarios de Android. Una vez que configure las teclas, su comando ssh general se vería así: ssh -i / PATH / TO / KEY USER @ IP
Puede poner eso en un script, ejecutarlo y se iniciará sesión en la máquina remota.
Pero esto es lo que creo que quieres hacer. Para ejecutar solo un comando en una computadora remota, simplemente agréguelo entre comillas simples: ssh -i / PATH / TO / KEY USER @ IP 'command'
Eso ejecuta el comando en la máquina remota sin iniciar sesión. Puede ejecutar comandos con opciones, canalizaciones, redirecciones, etc., pero a veces es mejor mantenerlos simples. Excepto por el retraso, tiene el mismo aspecto que ejecutar los comandos localmente y se puede usar igual.
Locale Execute puede ser exigente con los comandos que ejecutará. Si no funciona, intente ponerlo en un script y usar Locale Execute para ejecutar el script.
Además, he tenido problemas con el binario ssh que está en el teléfono y descubrí que moverlo desde / system / xbin y crear un enlace en / system / xbin / ssh al binario ssh Better Terminal Emulator es más confiable. El binario BTEP está en /data/data/com.magicandroidapps.bettertermpro/bin/ssh
fuente
Botbrew es un administrador de paquetes para Android, como
okpg
BSD o más recientemente, comoAPT
Debian. Bastante agradable. No tiene un cliente ssh como paquete, pero no parece demasiado difícil de instalar si está acostumbrado a crear sus propios paquetes. Y podría ser útil como una cadena de herramientas para cuando desee crear otros binarios y bibliotecas C / C ++ / etc.Entonces, aunque esto no sea una respuesta directa, puede ser útil que algunas personas lo sepan.
fuente
Ahora hay un terminal llamado Termux en el que puedes instalar openssh. Disponible en Google Play Store , F-Droid y Github .
fuente
AndFTP puede conectarse a través de cualquier puerto que configure, así que estoy seguro de que podría conectarse a través de SSH. Pero no estoy seguro de lo fácil que es usar el script. Yo uso la aplicación todo el tiempo para mi servidor de alojamiento y funciona muy bien.
No estoy seguro si puedes usar SSH con Terminal Emulator, pero también puedes probarlo. Uso esa aplicación con frecuencia para hacer cosas que soy demasiado flojo para hacer con ADB.
fuente
¿Usar un complemento ssh para Tasker? No necesita root o ssh binario entonces.
fuente
Si el simple cliente ssh es interesante para usted, hice bajo la biblioteca Bionic de Android-NDK drobpear-ssh-client-only. ftp://ftp.simtreas.ru/pub/my/dropbear/dropbear-ssh-only.tgz sourse y ftp://ftp.simtreas.ru/pub/my/dropbear/ssh binary
fuente