DynDNSの仕組みが若干変わった

2023/07/10追記

この記事で触れているddclientですが、2023年7月5日付けで更新終了となりました。

代替としてinadyn , dnsupdate が紹介されていました。


昔はDynDNSと呼ばれていた「Dyn」というDNSサービスがあります。

固定じゃないIPアドレスでも、特定のホスト名でアクセスできるようにしてくれるRemote Access(DynDNS)を、以前は無料で提供していました。
今は、年25ドルになっています。

が・・・実は、無料だった当時、寄付をすると上位サービスにアップグレード、というキャンペーンをやっていました。
このアップグレードしたユーザは、現在も、無料で使えていたりします。

それは、さておき、Dynに久々にログインしてみたところ、以下の様にお知らせが出てきました。

login

You have not generated an updater client key!
Please generate a key for use with update clients to help keep your account credientals secure.

いままで、DynDNSに登録したIPアドレスを変更する際、クライアントソフトにユーザ名/パスワードを登録して行っていたものを、Dynの管理画面でクライアントキーを発行し、それをクライアントソフトに登録する、という形に変更したようです。

が・・・Linuxの場合、Dynのクライアント一覧に掲載されているソフトが、GUI環境向けの「Dyn Updater for Ubuntu Linux」だけがクライアントキーに対応していないように見えるのは気のせいか??
(2014/09/25リリースのver5.2に「Support secure update key for account.dyn.com in place of account credentials.」とある)

ddclient」の方は、2013/12/26リリースのver3.8.2が最新のようで、まだ対応していない。

そんなわけで、新しい仕組みができたけど、まだ使えない、という微妙な感じになりました^^;;;

Kobo Touch/gloをAndroid化する・・・ことの覚え書き

2013年の話ではありますが、Kobo Touchの2代目と、Kobo gloをAndroid化する、という話があります。

あるのですが、日本語で、その起源について、きちんと書かれているページがないようなので、メモとして記載します。

まず、このネタの起点はMobilereadのフォーラム「Android on Glo」です。

投稿者のSyreKronさんが、ぐぐってたら、ドイツのheckeさんのblog「collector {dt.:Sammler}」を発見。
ここでは、ドイツで販売されているE-Ink Readerの「Tolino Shine」用にLinux kernelをコンパイルしてる。
このToline ShineはAndroid 2.3で動作しているのだが、上記Blogを見ると、ハードウェア構成がKobo gloに似ている。

試しにTolino Shine向けのAndroidイメージをKogo gloに入れてみたら、Androidがちゃんと動いているように見えるよ!

という報告が第1弾。

これを受けて、いろんな人が、Kobo gloのキーをちゃんと認識できるようにしたり、と、カスタマイズを行っていき、それをとりまとめたのが、MarekGibekさんの「New image for Kobo Touch」で、それをさらに改良して、新バージョン「Android for Kobo v2 – improved reading mode(2014/08/07)」がある。

といったところ。

Kobo Touch(N705C)と、Kobo Glo用のfirmwareが上記で配布されている。
日本でKobo Touchが発売された頃のものは、Kobo Touch(N705B)なので、N705Cのものは使用できない。

MobileReadフォーラム「Android on Kobo: “Tips and Apps”」に、Kobo E-Ink Reader上でAndroidを動かす場合の情報源について、リンクが紹介されている。

SmartQ ZWatch同等品 SpeedUp SmartWatch

SmartQ ZWatchのカスタムfirmwareとかあるのかな?と探していたら、インドネシアのSpeedUp社から販売されている「SpeedUp Smart Watch」というのが、同等品とのこと。

実際、「firmwareページ」にあるマニュアルを見てみると、SmartQ ZWatchとほぼ同じように見える。

Zwatchと異なり、「Sync用ソフトウェアSpeedUp SmartWatchがGoogle Playで公開されている、というのが良い点かも?
(APKファイル直リンクでの配布もある)

SpeedUp SmartWatchのfirmware v1.6をダウンロードし、/system/build.propを開いてみると、以下の様な内容だった。

# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=KRT16M
ro.build.display.id=V1.6_05-06-2014
ro.build.version.incremental=eng.1012337.140605.114853
ro.build.version.sdk=19
ro.build.version.codename=REL
ro.build.version.release=4.4
ro.build.date=Thu Jun  5 11:48:53 CST 2014
ro.build.date.utc=1401940133
ro.build.type=userdebug
ro.build.user=SpeedUp
ro.build.host=1012337
ro.build.tags=test-keys
ro.product.model=SW-1
ro.product.brand=SpeedUp SmartWatch
ro.product.name=SpeedUp SmartWatch SW-1
ro.product.device=s2122b
ro.product.board=SpeedUp SmartWatch SW-1
ro.product.cpu.abi=mips
ro.product.cpu.abi2=mips
ro.product.manufacturer=SpeedUp Technology
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=13
ro.board.platform=xb4780
# ro.build.product is obsolete; use ro.product.device
ro.build.product=SpeedUp SmartWatch SW-1
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=full_s2122b-userdebug 4.4 KRT16M eng.1012337.140605.114853 test-keys
ro.build.fingerprint=SmartQ/full_s2122b/s2122b:4.4/KRT16M/eng.1012337.140605.114853:userdebug/test-keys
ro.build.characteristics=tablet
# end build properties

#
# ADDITIONAL_BUILD_PROPERTIES
#
dalvik.vm.heapstartsize=5m
dalvik.vm.heapgrowthlimit=48m
dalvik.vm.heapsize=128m
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=512k
dalvik.vm.heapmaxfree=2m
ro.sf.lcd_density=160
persist.sys.timezone=Asia/Jakarta
testing.mediascanner.skiplist=/storage/host-udisk/,/storage/udisk/
wifi.interface=wlan0
wifi.supplicant_scan_interval=15
ro.telephony.call_ring.multiple=0
mobiled.libpath=/system/lib/libmobiled.so
ro.sf.hwrotation=180
ro.config.low_ram=true
keyback_long_press_time=1000
debug.velocitytracker.strategy=int1
ro.opengles.version=131072
ro.carrier=wifi-only
ro.config.notification_sound=OnTheHunt.ogg
ro.config.alarm_alert=Alarm_Classic.ogg
persist.sys.dalvik.vm.lib=libdvm.so
dalvik.vm.lockprof.threshold=500
net.bt.name=SmartQ-SW-1
dalvik.vm.stack-trace-file=/data/anr/traces.txt

ちなみに、SmartQ ZWatchの最新firmware v3.7の/system/build.propは以下の様になっている。

# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=KRT16M
ro.build.display.id=V1.6_05-06-2014
ro.build.version.incremental=eng.1012337.140605.114853
ro.build.version.sdk=19
ro.build.version.codename=REL
ro.build.version.release=4.4
ro.build.date=Thu Jun  5 11:48:53 CST 2014
ro.build.date.utc=1401940133
ro.build.type=userdebug
ro.build.user=SpeedUp
ro.build.host=1012337
ro.build.tags=test-keys
ro.product.model=SW-1
ro.product.brand=SpeedUp SmartWatch
ro.product.name=SpeedUp SmartWatch SW-1
ro.product.device=s2122b
ro.product.board=SpeedUp SmartWatch SW-1
ro.product.cpu.abi=mips
ro.product.cpu.abi2=mips
ro.product.manufacturer=SpeedUp Technology
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=13
ro.board.platform=xb4780
# ro.build.product is obsolete; use ro.product.device
ro.build.product=SpeedUp SmartWatch SW-1
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=full_s2122b-userdebug 4.4 KRT16M eng.1012337.140605.114853 test-keys
ro.build.fingerprint=SmartQ/full_s2122b/s2122b:4.4/KRT16M/eng.1012337.140605.114853:userdebug/test-keys
ro.build.characteristics=tablet
# end build properties

#
# ADDITIONAL_BUILD_PROPERTIES
#
dalvik.vm.heapstartsize=5m
dalvik.vm.heapgrowthlimit=48m
dalvik.vm.heapsize=128m
dalvik.vm.heaptargetutilization=0.75
dalvik.vm.heapminfree=512k
dalvik.vm.heapmaxfree=2m
ro.sf.lcd_density=160
persist.sys.timezone=Asia/Jakarta
testing.mediascanner.skiplist=/storage/host-udisk/,/storage/udisk/
wifi.interface=wlan0
wifi.supplicant_scan_interval=15
ro.telephony.call_ring.multiple=0
mobiled.libpath=/system/lib/libmobiled.so
ro.sf.hwrotation=180
ro.config.low_ram=true
keyback_long_press_time=1000
debug.velocitytracker.strategy=int1
ro.opengles.version=131072
ro.carrier=wifi-only
ro.config.notification_sound=OnTheHunt.ogg
ro.config.alarm_alert=Alarm_Classic.ogg
persist.sys.dalvik.vm.lib=libdvm.so
dalvik.vm.lockprof.threshold=500
net.bt.name=SmartQ-SW-1
dalvik.vm.stack-trace-file=/data/anr/traces.txt

/system/appのファイルは、Zwatchから「cn.yunzhisheng.assistant.smartdevices.apk」と「com.tencent.mm.apk」が抜かれているという感じだった。

ぱっと見は流用できそうな感じだけど、果たしてどうなのやら??

IPFireでパッケージのインストールやアップデートができない

ESXiの上で、ネットワークを2つ作り、それぞれをVPN接続する、というテスト環境を作ろうとした。

VPNルータをどうするか悩んだのだが、Linuxベースの「IPFire」というので構築することにした。
(Endian FirewallのComminity Editionだとうまく構成が作れなかった)

決め手の1つに、vmware-toolsを容易にインストールすることができる、ということがあった。
が、「手順」の通りにやろうとしても、エラーとなる。

状況としては、「pakfire update problem」と全く同じモノ。
(上記のURLよりエラーを引用)

Sep  7 21:15:34 serwer1 pakfire: PAKFIRE INFO: IPFire Pakfire 2.15 started!
Sep  7 21:15:34 serwer1 pakfire: CRYPTO INFO: Checking GnuPG Database
Sep  7 21:15:34 serwer1 pakfire: CRYPTO WARN: The GnuPG isn't configured corectly. Trying now to fix this.
Sep  7 21:15:34 serwer1 pakfire: CRYPTO WARN: It's normal to see this on first execution.
Sep  7 21:17:34 serwer1 pakfire: Sending my uuid: 168d3c61-ae2a-454f-81a1-48a817470c37
Sep  7 21:17:34 serwer1 pakfire: DOWNLOAD STARTED: counter.py?ver=2.15&uuid=168d3c61-ae2a-454f-81a1-48a817470c37
Sep  7 21:17:34 serwer1 pakfire: DOWNLOAD INFO: Host: pakfire.ipfire.org (HTTP) - File: counter.py?ver=2.15&uuid=168d3c61-ae2a-454f-81a1-48a817470c37
Sep  7 21:17:34 serwer1 pakfire: DOWNLOAD INFO: HTTP-Status-Code: 200 - 200 OK
Sep  7 21:17:34 serwer1 pakfire: DOWNLOAD STARTED: 2.15/lists/server-list.db
Sep  7 21:17:34 serwer1 pakfire: DOWNLOAD INFO: Host: pakfire.ipfire.org (HTTP) - File: 2.15/lists/server-list.db
Sep  7 21:17:35 serwer1 pakfire: DOWNLOAD INFO: 2.15/lists/server-list.db has size of 907 bytes
Sep  7 21:17:35 serwer1 pakfire: DOWNLOAD INFO: HTTP-Status-Code: 200 - 200 OK
Sep  7 21:17:35 serwer1 pakfire: DOWNLOAD INFO: File received. Start checking signature...
Sep  7 21:17:35 serwer1 pakfire: DOWNLOAD ERROR: The downloaded file (2.15/lists/server-list.db) wasn't verified by IPFire.org. Sorry - Exiting...
Sep  7 21:18:06 serwer1 pakfire: TIME INFO: Time Server 217.153.128.243 has 0.010834 sec offset to localtime.

解決方法として、外部の11371ポートに対する通信を許可すること、と書かれている。
PakfireのAdditional Note

IPFireの設定をいじってみても解決しない。
なぜ?と考えて見ると、今回作成したテスト環境は、別のFirewallの中にある、というのがポイントだった。
つまり、別のFirewall側に設定を追加する必要があったということ。

そちらの設定変更権限はないので、別の方策がないか捜索したところ、発見。

Pakfire wont update on new install The GnuPG isn’t configured corectly. solved!

「/opt/pakfire/lib/functions.pl」内で
「my $command = “gpg –keyserver pgp.ipfire.org –always-trust –status-fd 2”;」
と書かれているところ、下記のようにポート80でアクセスできるサーバに書き直す。
「my $command = “gpg –keyserver hkp://keyserver.ubuntu.com:80 –always-trust –status-fd 2”;」
というもの。

これを実施したところ、正常に動作するようになった。

ちなみに、上記URLだと、「Core 82で直った」とか書かれてますが、Core82で試して同じ現象でした。

Debianのwoody (3.0), sarge (3.1), etch (4.0), lenny (5.0)でbashの脆弱性問題に対応する手法

bashの脆弱性問題で、Debianで既にアップデートされないバージョンであるところの、woody (3.0), sarge (3.1), etch (4.0), lenny (5.0)に対して、簡単に対応する手法があるのか?というのを調べてみた。

Seewebというクラウドとホスティングをやっている会社にお勤めのDebianメンテナのMarco d’Itriさんが、会社の後援を受けて古いバージョン用の非公式debianパッケージを公開してくれています。
CVE-2014-6271 fix for Debian woody, sarge, etch and lenny

配布場所については、上記からたどってください。
(http://ftp.linux.it/pub/People/md/bash/ なんですが、Seeweb社の後援を受けて公開されていますので、敬意を表してここから配布場所への直リンクはしないでおきます)

どのバージョンのbashをダウンロードすればいいのかは、現在インストールされているパッケージのバージョンを調べてください。

olddebian:~# dpkg -l|grep bash
ii  bash                                                     3.2-4                    The GNU Bourne Again SHell
ii  bash-completion                                          20080705                   programmable completion for the bash shell
olddebian:~#

上記であれば、「bash」の「3.2-4」です。
配布場所のファイル一覧から「bash_3.2-4.???_amd64.deb」や「bash_3.2-4.???_i386.deb」のうち、数字が一番新しいものを探します。

2014/09/30 20:00現在だと「bash_3.2-4.2_amd64.deb」が最新でした。
これをwgetコマンドなどでダウンロードし、dpkg -iでインストールします。

手順としては、まずは、https://github.com/hannob/bashcheck/からbash脆弱性確認スクリプトを入手します。

olddebian:~# wget --no-check-certificate https://github.com/hannob/bashcheck/raw/master/bashcheck
<略>
olddebian:~# chmod a+x bashcheck
olddebian:~# ./bashcheck
Vulnerable to CVE-2014-6271 (original shellshock)
Vulnerable to CVE-2014-7169 (taviso bug)
./bashcheck: line 18: 20675 Segmentation fault      bash -c "true $(printf '<<EOF %.0s' {1..79})" 2> /dev/null
Vulnerable to CVE-2014-7186 (redir_stack bug)
Test for CVE-2014-7187 not reliable without address sanitizer
Variable function parser still active, likely vulnerable to yet unknown parser bugs like CVE-2014-6277 (lcamtuf bug)
olddebian:~#

脆弱性があることを確認したら、配布元のページから、debパッケージをダウンロードします。

「wget http://ftp.linux.it/pub/People/md/bash/bash_~.deb」という感じでダウンロードします。

ダウンロード後は、debパッケージを「dpkg -i」でインストールします。

olddebian:~# dpkg -i bash_3.2-4.2_i386.deb
(Reading database ... 19825 files and directories currently installed.)
Preparing to replace bash 3.2-4 (using bash_3.2-4.2_i386.deb) ...
Unpacking replacement bash ...
Setting up bash (3.2-4.2) ...
Processing triggers for man-db ...
olddebian:~#

インストール後、パッケージバージョンの確認と、脆弱性確認を行います。

olddebian:~# dpkg -l|grep bash
ii  bash                                                     3.2-4.2                    The GNU Bourne Again SHell
ii  bash-completion                                          20080705                   programmable completion for the bash shell
olddebian:~# ./bashcheck
Not vulnerable to CVE-2014-6271 (original shellshock)
Not vulnerable to CVE-2014-7169 (taviso bug)
Not vulnerable to CVE-2014-7186 (redir_stack bug)
Test for CVE-2014-7187 not reliable without address sanitizer
Variable function parser inactive, likely safe from unknown parser bugs
olddebian:~#

これで、現段階では、問題がなくなりました。


おまけ

squeeze(6.0)の場合、squeeze-ltsに切り替えることで対応できます。
「/etc/apt/sources.list」に以下を追加します。

deb http://http.debian.net/debian squeeze-lts main contrib non-free
deb-src http://http.debian.net/debian squeeze-lts main contrib non-free

そして、bashだけをアップデートしたいのであれば、以下を実行します。

root@olddebian:~# apt-get update
<略>
root@olddebian:~# apt-get install -t squeeze-lts --only-upgrade bash
<略>
root@olddebian:~# 

ネタ元:「How to only install security updates on debian」「bash vulnerability CVE-2014-6271 (Shellshock) fix on debian squeeze [duplicate]