Vignette tut noch, wie es aussieht :-)
#Motorola can't do – but the community delivers #Froyo for #Milestone
Sowas von peinlich. Motorola hat sich in der Beliebheit als Hersteller bei mir einen sauberen vorletzten Platz erkämpft, nur Sony, die neuerdings meine Hardware – und mein Netz? Ich kann’s nicht ausschließen, da nicht überprüfbar – mit Methoden von Kriminellen Berichten zufolge ausspionieren wollen, halte ich für noch untragbarer.
[Nachtrag, 18:15] Augenscheinlich »stellt« sich Motorola auf facebook der Kritik; keine Ahnung, der Worte sind genug gewechselt, statt an 2.2 rumzufrickeln, wäre eine mittlerweile eine Aussage zu 2.3 angesagt. Da Motorola aber bei der gezeigten Innovations- und Produktpflegegeschwindigkeit mit Android 2.3 für’s Milestone nicht vor 2013 fertig würde, ist das – mir zumindest – nun auch egal.
Power of Open Source (& Close-Source-Binary-Merging) rulez, dennoch werde ich kein Motorola-Gerät mehr kaufen, denn die untauglichen Sperren, mit denen man Fremdimages zu verhindern suchte, sind ein Unding. Es ist meine Hardware, Motorola hat daran keine Rechte mehr seit Kauf; und somit ist es alleine meine Entscheidung, welche – legale – Software ich darauf laufen lassen will. Das hat die chinesische Sony nicht verstanden und da Motorola das ebenfalls nicht versteht, kommt mir deren Dreckshardware halt auch nicht mehr ins Haus.
market.android.com – spot the error :-)
fsck ya … Jetzt mach ich mir selbst 'n FroYo-Meilenstein. Das, was #Motorola nicht schafft …
Motorola: Bestandskunden == arme Säue?
Wie unfähig kann ein Handyhersteller eigentlich sein? Bei Motorola stellt sich mir diese Frage nicht mehr, nachdem nun endgültig das Vertrauen in jenes Unternehmen verloren ging. Das hochpreisige Motorola Milestone wird faktisch vom Hersteller nicht mehr supportet; erst nach über einem Jahr bequemt man sich – vielleicht, denn Termine ankündigen und sie später nicht einzuhalten ist das Einzige, das Motorola bislang hinsichtlich einer aktiuellen Android-Version für das Milestone zustande gebracht hat –, die schon jetzt veraltete Android-Version 2.2 auf das Milestone zu bringen. Aktuell ist heute leider schon 2.3, mit 3.0 (zumindest für Tablets) anklopfend, wenn Motorola – vielleicht, vielleicht auch nicht – endlich 2.2 zu liefern sich willig zeigt.
Ein Armutszeugnis — und gewiß eine Warnung an alle potentiellen Interessenten des Motorola Xoom-Tablets, welches aktuell als erstes Android-3.0-Gerät am Markt am Markt erwartet wird, nicht auf Produkt- oder Kundenpflege nach dem Kauf zu setzen. Denn das, so lehrt die Erfahrung, bieten chinesische Nachbauer noch eher als Motorola. Und anders als Motorola unterbinden jene nicht die Selbsthlfe; Motorola hingegen sperrt den Kunden auch noch von der gekaufenten Hardware durch kryptographische Verfahren aus.
Mein Milestone mit Android 2.1 Update 1 hat jedenfalls nach wie vor Probleme mit dem Autofokus, der Blitz löst, scheinbar tagesformabhängig, mal nur Sekundenbruchteile aus und die QUalität der Videos ist nach wie vor unterirdisch. Die Fotoprobleme bestehen wohlgemerkt mit der Android-eigenen Kamera-Anwendung als auch mit Vignette, Camera 360 und Co.
Hardwarefreak
Ich gestehe, ich bin ein bißchen verrückt.
Verrückt nach »hackable Hardware«, was aber primär der lausigen Firmware ansonsten potenter Hardware geschuldet ist.
Ich weiß nicht, was ich in einer Welt machen würde, die nicht dank BSD-Lizenz, GPL und Linux den Weg genommen hätte, den diese, in der ich existiere, genommen hat; vielleicht wäre ich tatsächlich Gärtner geworden … In dieser Welt allerdings reizt es mich, meine Vorstellung davon, wie Gadgets funktionieren sollten, auch umzusetzen. Auch im Rahmen von Trial and Error wie jüngst beim InfoFrame; nicht jedes geekige Gadget paßt in jede Lebensituation ;-)
Nun denn, auf der Suche nach sinnvollerer Hardware für »meinen« Infoframe bin ich einerseits auf den Insignia Infocast 8″ gestoßen, quasi ein »Chumby on Speed« (schnelle ARM-CPU, 800x480er Display) – über einen Bekannten, der mir auch schon meinen Pink PogoPlug besorgte, sollte ein Testmuster diese Woche in D erscheinen –, sowie jüngst auf den leider schon ausverkauften O2 Joggler – ein grade aus der Bucht gefischtes Exemplar bringt ein (Ex-) Kollege hoffentlich nächste Woche nach Berlin. Denn, bei aller Liebe, ein interaktionsloser Bilderrahmen an der Wand ist doch eher lame.
Das mit der Diashow und der permanenten Zeitanzeige ist schon mal nett. Hinweise per Einblendung, wie z. B. das das Terrarium wieder der täglichen kurzen Aufmerksamkeit bedarf, sind praktisch. Aber einen Kalender möchte man ggf. jetzt einsehen und nicht Minuten auf die vorgefertigte Grafik warten. Die Schaltzeiten der Terrariumswärmequellen möchte man direkt beeinflussen könne und nicht erst den Webbrowser auf dem Netbook starten. Die Squeeze Center-Infrastruktur möchte man ggf. an einem festen Ort bedienen können und nicht nur von grade abwesenden/leeren Androiden oder eben dem Netbook (via Web-UI).
Mal sehen, was sich davon auf Joggler (Atom-, also x86-based) und Infocast (ARM-based) wird umsetzen lassen; insbesondere hoffe ich ja, daß der Joggler sich als VDR-Frontend bewähjren könnte, das hätte definitiv was …
Und in der Zwischenzeit, wärend ich mit jener Hardware rumspiele, mag bitte das gemeine Android-Tablet mit jenseits 800 MHz, HW-Beschleunigung für Grafik und Android >2.1 auf um die 100 EUR sinken, dann kann man sowas auch guten Gewissens in der Küche liegen lassen (wo es ggf. verwechselt wird mit einem hitzebständigen Untersetzer :->) ….
Es geht eben nichts über renovierten, modernisierten Wohnraum.
239k km … #A6 #C4
OpenVPN mit der FritzBox …
Da es jemand »für einen Bekannten« nachfragte und the-construct.com abgeschaltet wurde (und der Betreiber sich leider auch sich nicht mehr meldet, obwohl es Angebote gibt, den Kram weiterlaufen zu lasssen), hier kurz die Schritte und Tools, um DropBear (SSH-Server) und OpenVPN auf ‘ner FritzBox der 71er-Klasse an den Start zu bringen. Ich hab’s seinerzeit über sog. Pseudo-Images von the-contruct.com gemacht, da gab’s dann ein Webfrontend, welches ein tar zusammenpackte, welches man über’s Web-IF hochladen konnte und, welches dann über /var/flash/debug.cfg den Kram rebootfest implementierte. Idealerweise rennt der Kram vom USB-Stick, aber wenn man den nicht hat, tut’s ggf. auch der Webspace …
# cat /var/flash/debug.cfg
#!/bin/sh
LED_DEVICE=/proc/led_mod/led
if [ ! -f /proc/led_mod/led ] ; then
LED_DEVICE=/var/led
echo "set led: ${LED_DEVICE}"
fi
# start internet phone led flashing
echo "set internet phone led to blink (modul=14, state=3)"
echo 14,3 > ${LED_DEVICE}
# check kernel version
KERNEL_VERSION=`uname -r | grep 2.6`
if [ -z "${KERNEL_VERSION}" ]
then
KERNEL_VERSION="linux24"
ETHERWAKE="etherwake"
else
KERNEL_VERSION="linux26"
ETHERWAKE="ether-wake"
fi
# init busybox var
BUSYBOX="/bin/busybox"
# wait to be able to interrupt in case of emergency
sleep 15
if [ -z "$(busybox | grep telnetd)" ]
then
while !(ping -c 1 0xdecafbad.net)
do
sleep 5
done
# check if file already exists
if [ ! -f /var/tmp/busybox ]
then
wget -qO /var/tmp/busybox http://0xdecafbad.net/${KERNEL_VERSION}/busybox
# make it executable
chmod +x /var/tmp/busybox
fi
# set busybox var
BUSYBOX="/var/tmp/busybox"
fi
# start telnet deamon with password of web gui
#${BUSYBOX} telnetd -l /sbin/ar7login
# load VPN-Server (OpenVPN)
# create tun-device
mknod /var/tmp/tun c 10 200
# write 'secret.key' to file
cat > /var/tmp/secret.key << 'ENDSECRETKEY'
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
[Keyfile-Daten hier her]
-----END OpenVPN Static key V1-----
ENDSECRETKEY
# write 'server.ovpn' to file
cat > /var/tmp/server.ovpn << 'ENDSERVERCONF'
dev tun0
dev-node /var/tmp/tun
ifconfig 192.0.2.1 192.0.2.6
secret /var/tmp/secret.key
proto udp
remote 192.168.178.4
port 1199
tun-mtu 1500
#keepalive 10 60
verb 4
mssfix
route 192.0.2.0 255.255.255.248
route 192.0.2.0 255.255.255.0
ping 15
ping-restart 60
resolv-retry 60
persist-tun
persist-key
daemon
ENDSERVERCONF
cat > /var/tmp/uu.ovpn << 'ENDSERVERCONF'
dev tun1
dev-node /var/tmp/tun
ifconfig 192.168.4.14 192.168.4.15
secret /var/tmp/secret.key
proto udp
remote 1.2.2.3
port 4711
tun-mtu 1500
fragment 1300
#keepalive 10 60
verb 4
mssfix
route 192.168.4.0 255.255.255.0
ping 15
ping-restart 60
resolv-retry 60
persist-tun
persist-key
daemon
ENDSERVERCONF
# try to load files from USB drive
#for f in /var/media/ftp/*
#do
# if [ -f ${f}/files/${KERNEL_VERSION}/openvpn ]
# then
# echo "copy ${f}/files/${KERNEL_VERSION}/openvpn"
# cp ${f}/files/${KERNEL_VERSION}/openvpn /var/tmp/openvpn
# fi
#done
# check if file already exists
if [ ! -f /var/tmp/openvpn ]
then
# wait for server
while !(ping -c 1 0xdecafbad.net)
do
sleep 5
done
# load files
wget -qO /var/tmp/openvpn http://0xdecafbad.net/${KERNEL_VERSION}/openvpn
fi
# make them executable
chmod +x /var/tmp/openvpn
chmod 0600 /var/tmp/server.ovpn
chmod 0600 /var/tmp/secret.key
# start OpenVPN, add route via Internet Link
/sbin/route add 1.2.2.3 dev dsl
/var/tmp/openvpn --config /var/tmp/server.ovpn
/var/tmp/openvpn --config /var/tmp/uu.ovpn
# load SSH-Server (dropbear) and etherwake
# CONFIGURATION
# SSH
# port
dropbearport="22"
# password
PASSWD='[real PW (MD5?) here]'
# Etherwake
# MAC address
wolmac="01:23:45:67:89:AB"
# interface to use for WOL
# intf = std - ata
# eth0 = LAN1 - WAN
# eth1 = LAN2 - LAN1
wolinterface="eth0"
# CONFIGURATION END
# try to load files from USB drive
#for f in /var/media/ftp/*
#do
# if [ -f ${f}/files/${KERNEL_VERSION}/dropbear ]
# then
# echo "${f}/files/${KERNEL_VERSION}/dropbear"
# cp ${f}/files/${KERNEL_VERSION}/dropbear /var/tmp/dropbear
# fi
#
# if [ -f ${f}/files/${KERNEL_VERSION}/sftp-server ]
# then
# echo "${f}/files/${KERNEL_VERSION}/sftp-server"
# cp ${f}/files/${KERNEL_VERSION}/sftp-server /var/tmp/sftp-server
# fi
#done
# check if file already exists
if [ ! -f /var/tmp/dropbear ]
then
# wait for server
while !(ping -c 1 0xdecafbad.net)
do
sleep 5
done
# load files
wget -qO /var/tmp/dropbear http://0xdecafbad.net/${KERNEL_VERSION}/dropbear
fi
# check if file already exists
if [ ! -f /var/tmp/sftp-server ]
then
# wait for server
while !(ping -c 1 0xdecafbad.net)
do
sleep 5
done
# load files
wget -qO /var/tmp/sftp-server http://0xdecafbad.net/${KERNEL_VERSION}/sftp-server
fi
if [ ! -f /var/tmp/busybox ]
then
# try to load files from USB drive
# for f in /var/media/ftp/*
# do
# if [ -f ${f}/files/${KERNEL_VERSION}/busybox ]
# then
# echo "${f}/files/${KERNEL_VERSION}/busybox"
# cp ${f}/files/${KERNEL_VERSION}/busybox /var/tmp/busybox
# fi
# done
# check if file already exists
if [ ! -f /var/tmp/busybox ]
then
# wait for server
while !(ping -c 1 0xdecafbad.net)
do
sleep 5
done
# load files
wget -qO /var/tmp/busybox http://0xdecafbad.net/${KERNEL_VERSION}/busybox
fi
fi
# make them executable
chmod +x /var/tmp/busybox
chmod +x /var/tmp/dropbear
chmod +x /var/tmp/sftp-server
# set busybox var
BUSYBOX="/var/tmp/busybox"
# change root password
${BUSYBOX} sed -e "/root:/s#^root:[^:]*:#root:${PASSWD}:#" -i /var/tmp/shadow
# create symlink for dropbearkey
ln -s /var/tmp/dropbear /var/tmp/dropbearkey
${BUSYBOX} uudecode -o /var/tmp/dropbear_rsa_host_key << 'RSA'
begin 600 /var/tmp/dropbear_rsa_host_key
[UUENCODED data here]
end
RSA
${BUSYBOX} uudecode -o /var/tmp/dropbear_dss_host_key << 'DSS'
begin 600 /var/tmp/dropbear_dss_host_key
[UUENCODED data here]
end
DSS
# start dropbear
sleep 60
/var/tmp/dropbear -p ${dropbearport} -r /var/tmp/dropbear_rsa_host_key -d /var/tmp/dropbear_dss_host_key
# create simplified WOL script
echo "${BUSYBOX} ${ETHERWAKE} -i ${wolinterface} ${wolmac}" > /var/tmp/startpc
# make it executable
chmod +x /var/tmp/startpc
# stop internet phone led flashing
echo 14,1 > ${LED_DEVICE}
# /var/tmp/busybox uname -a
Linux fritz.fonwlan.box 2.6.13.1-ohio #1 Wed Jan 27 13:20:43 CET 2010 mips unknown
# set | grep CONFIG_VERSION
CONFIG_VERSION='04.80'
CONFIG_VERSION_MAJOR='29'
#
Ja, die echten Keys, Passwörter, IPs usw. habe ich verändert :-) Ja, ich verwende hier zwei OpenVPN-Tunnel, einen initial zu einem Asterisk-Server, der hier im LAN stünde (Route über FB-Oberfläche gesetzt bzw. gleiches Netz), und einen im Internet. Und ACHTUNG: /var/flash/debug.cfg nur mit »cat« beschreiben, also »cat /var/tmp/my-file >/var/flash/debug.cfg« — standard disclaimers apply; your mileage may vary; no liability assumed; following the steps shown here might void your warranty, ruin you sex life, kill your dog or make you unhappy in other ways …
Short: works for me, credits go to the creator of the-construct.com … Alles klar? ;)
Linux und Alzheimer
So, ein Wermutstropfen hängt da noch in der Luft; meine neue ‘Access-Fritzbox’ soll, natürlich, einen Fernwartungszugang per SSH über OpenVPN bekommen, so, wie es die anderen drei Boxen, die ich betreue, auch haben (Mental Note: für Berlin muß ich das noch nachrüsten).
Ist ja recht simpel, insbesondere bei der »Speed!Box« W701V, sprich der abgespeckten 7170 ohne USB: die – noch auf the-construct.com-Vorarbeit basierende – /var/flash/debug.cfg lädt aus dem Netz ‘ne neue busybox, ‘n openvpn-Binary usw., erstellt die Konfigfiles und startet dann OpenVPN als auch einen DropBear-SSH-Server …
Eigentlich easy going, aber:
Feb 6 03:47:35 azrael openvpn[5223]: Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #9 / time = (1296960344) Sun Feb 6 03:45:44 2011 ] – see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings
Tja, mein OpenVPN-Server scheint zu alzheimern, denn:
root@azrael.uu.org:/etc/openvpn # grep "Peer Connection Initiated with" /var/log/messages | tail -6 Feb 6 03:42:44 azrael openvpn[5223]: Peer Connection Initiated with 7.2.2.5:61091 Feb 6 03:43:44 azrael openvpn[5223]: Peer Connection Initiated with 7.2.2.5:12042 Feb 6 03:44:45 azrael openvpn[5223]: Peer Connection Initiated with 7.2.2.5:61091 Feb 6 03:45:44 azrael openvpn[5223]: Peer Connection Initiated with 7.2.2.5:12042 Feb 6 03:46:44 azrael openvpn[5223]: Peer Connection Initiated with 7.2.2.5:61091 Feb 6 03:47:46 azrael openvpn[5223]: Peer Connection Initiated with 79.236.242.50:12042
Eigentlich laufen über diesen Link zwei OpenVPN-Verbindungen. Eine orginiert von der FB zu IP1:Port1 (Port1 = 12042), ferner sendet der DockStar seinen Tunnel zu IP2 (gleicher Host wie IP1 allerdings), Port2 (der oben nicht auftaucht, was am NAT liegen mag).
root@azrael.uu.org:/etc/openvpn # netstat -antup | grep 5223 udp 0 0 1.2.2.30:12042 0.0.0.0:* 5223/openvpn
Schon komisch, da sendet der OpenVPN-Daemon auf dem DockStar das an IP2:Port2, aber lt. Logfile kommt es beim Prozeß an., der auf IP1:Port1 lauscht. Noch spannender ist ein tcpdump, denn der zeigt eigentlich nur Pakete bei IP2:Port2 eingehend – ebenfalls für beide Verbindungen.
Nun ist der VPN-Server eine VMWare-Instanz, aber bislang gab es diesbezüglich angenehmerweise grade keine Probleme in dem Bereich …
Na, ich werde mal ‘ne Mütze voll Schlaf drüber nehmen — und vielleicht morgen den Reboot für den sauberen Stand wagen ;-)






