Du möchtest also per ssh auf dein Telefon. Das ist prinzipiell ab der Version 4.0.2 der cyanogenmod Software auf deinem Telefon möglich. Ab dieser Version ist der dropbear ssh server mit dabei. Dieser nutzt im Build von cyanogen das Verzeichnis /data/dropbear/.
Du musst nun folgendes tun:
Einen ssh key mit PuTTY oder Linux erzeugen. Für Putty gibts hier eine Anleitung.
Jetzt muss Du den ssh public key als Datei speichern und authorized_keys Datei auf der sdkarte speichern.
Jetzt kommen die Sachen im Terminal deines Telefons:
Werde root:
su -
Lege das Verzeichnis /data/dropbear und /data/dropbear/.ssh an:
mkdir -p /data/dropbear/.ssh
Kopiere die die Datei authorized_keys nach /data/dropbear/.ssh
cp /sdcard/authorized_keys /data/dropbear/.ssh/
Setze nun die richtigen Rechte:
chmod -R 644 /data/dropbear
Erzeuge nun einen passenden Hostkey (das kann einen moment dauern):
dropbearkey -t rsa -f /data/dropbear/dropbear_rsa_hostkey
Optional kannst Du noch einen dss key erzeugen:
dropbearkey -t dss -f /data/dropbear/dropbear_dss_host_key
Jetzt musst Du Dir noch ein passendes Profil anlegen:
echo >>/data/dropbear/.profile "PATH=/usr/bin:/usr/sbin:/bin:/sbin \
:/system/sbin:/system/bin:/system/xbin:/system/xbin/bb:/data/local/bin"
echo >>/data/dropbear/.profile "export PATH"
Fertig!
Jetzt kannst Du den dropbear Server das erste mal starten:
dropbear -v -F
Wenn alles gut ist siehst Du folgendes (oder so ähnlich):
TRACE: enter loadhostkeys
TRACE: enter buf_get_priv_key
TRACE: enter rsa_key_free
TRACE: leave rsa_key_free: key == NULL
TRACE: enter buf_get_rsa_priv_key
TRACE: enter buf_get_rsa_pub_key
TRACE: leave buf_get_rsa_pub_key: success
TRACE: leave buf_get_rsa_priv_key
TRACE: leave buf_get_priv_key
TRACE: enter buf_get_priv_key
TRACE: enter dsa_key_free
TRACE: enter dsa_key_free: key == NULL
TRACE: enter buf_get_dss_pub_key
TRACE: leave buf_get_dss_pub_key: success
TRACE: leave buf_get_priv_key
TRACE: leave loadhostkeys
[6343] Sep 18 11:53:35 Not forking
TRACE: listensockets: 1 to try
TRACE: listening on ':22'
TRACE: enter dropbear_listen
TRACE: dropbear_listen: all interfaces
TRACE: leave dropbear_listen: success, 1 socks bound
Nun kannst Du das erste mal ein ssh auf dein Telefon machen. In einem anderen Artikel beschreibe ich wie man den Dienst beim booten startet. Hattest Du nun die Hoffnung auf ein Login unterwegs möglich ist, muss ich dich leider, zumindestens für T-Mobile, entäuschen. Du bekommst im T-Mobile Netz keine öffentliche IP, sondern eine Private (NAT). Damit ist es nicht möglich von aussen auf dein Telefon zuzugreifen.
Ein Teil dieses Artikels ist im übrigen dem Wiki hier entnommen.
Wie bekomme ich denn die IP-Adresse des Androids heraus, um mich mit ssh dort einzuloggen?
Ah, hat sich erledigt. Mit netstat (im Gegensatz zu ifconfig) gehts.
wenn man seine IP-Adresse nicht kennt, bzw. sich nicht immer wieder die neue Adresse raussuchen möchte… kann man unter „dyndns.com“ ein Domain an seine IP binden und mit einem App diese auf seine aktuelle IP bringen :-)
Das funktioniert natürlich nur, wenn der jeweilige Provider eine öffentliche Adresse vergibt. Ansonsten kann man es zwar auch machen, hat aber nix davon. Bei T-Mobile ist es so (zumindestens in den Veträgen die ich kenne), das man Private Adressen erhält und somit nicht direkt auf das Telefon zugreifen kann.
Mit Hamachi geht es. Der Dienst ist ein virtuelles Netz, was auch mit den von den Mobilfunkprovidern verwendeten NAT geht. Dadurch kann man jederzeit auf sein Tel zugreifen, vorrausgesetzt es hat eine bestehende Internetverbindung.
http://forum.xda-developers.com/showthread.php?t=579535
http://community.logmeinrescue.com/t5/Hamachi/hamachi-on-android/m-p/32843