harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

infra トラブルシュート メモ 運用

LinkStation rootアカウントのリセットとtelnetログイン

投稿日:2012年12月3日

職場のLinkStationが不調になったとの連絡があり、フォルダにアクセスできなくなったり、起動してしばらくするとエクスプローラーからの応答が無くなったり、管理画面へのアクセスもタイムアウトする始末…と非常に困った状況になりました。

ただpingは応答するのと、保証もずっと前に切れている古いモデルなので、ダメもとでtelnetアクセスとrootログインのハックを試してみることとにしました。
これで中のデータさえ抜き出せればOKなのですが…
すでにLinkStationのハッキングではおなじみと思われる”acp_commander.jar”の利用です。

本当はアプライアンス製品に手を出すのは、個人的には是としないポリシーなのですが、データのサルベージは自分達でやるしかないし、ググれば数多くのハック記事が出てきて実績(!?)もありそうなので、参考にさせてもらいつつ試してみたところ、無事データのサルベージに成功しました…やれやれ。

ということで、同様の記事が既にネット上にたくさんありますが、今回の作業ログもあわせて追加します。

今回お世話になったサイト

acp_commander.jarの配布元です。
buffalo.nas-central.org
acp_commander.jarのダウンロードページ

-モデル

LS-WHGL/R1
今回のホストはLS-WH2.0TGL/R1です。
RAID0にて2TBを割り当て、使用率99%なのでデータを失ったらイイ感じにヤバかったw

-ファームウェア

F/W 3.10、一応この機種では最新です。

1)acp_commander.jarを実行してみる

WindowsXPのコマンドプロンプトから実行。

パスの指定が面倒だったので、javaランタイムのjava.exeと同じフォルダに
acp_commander.jarをダウンロードし、そのまま実行。

C:\Program Files\Java\jre7\bin>java.exe -jar acp_commander.jar -t 192.168.200.241 -o
there seems to be no existing prefs, write default values
ACP_commander out of the nas-central.org (linkstationwiki.net) project.
Used to send ACP-commands to Buffalo linkstation(R) LS-PRO.
WARNING: This is experimental software that might brick your linkstation!
Using random connID value = C3F5332*****
Using target:   BACKUP_LS/192.168.200.241
Starting authentication procedure...
Sending Discover packet...
Found:  BACKUP_LS (/192.168.200.241)    LS-WHGL/R1(KEIKOU) (ID=00483)   mac: 00:1D:**:**:**:**
Firmware=  3.100        Key=2FDB****
Trying to authenticate EnOneCmd...      ACP_STATE_OK
start telnetd...        OK (ACP_STATE_OK)		←telnetサービスの起動
Reset root pwd...       Password changed.		←rootのパスワードリセット
You can now telnet to your box as user 'root' providing no / an empty password.
C:\Program Files\Java\jre7\bin>

2)ログイン確認

rootパスワードのリセット、telnetの起動に成功すると
ログインできるようになるので、ひとまずコマンドプロンプトから確認。

BUFFALO INC. LinkStation series
BACKUP_LS login:

表示されました。
つづけてrootと入力します。

BUFFALO INC. LinkStation series
BACKUP_LS login: root
root@BACKUP_LS:~#

ログイン成功!
つづけて共有フォルダを何となくのぞいてみる。

root@BACKUP_LS:~# ls -al
drwx------    3 root     root           39 Dec  3 14:40 .
drwxr-xr-x   19 root     root         4096 Nov  1  2007 ..
-rw-------    1 root     root          609 Dec  3 15:22 .bash_history
drwx------    2 root     root           28 Feb 26  2009 .files
root@BACKUP_LS:~# cd /mnt/array1/
root@BACKUP_LS:/mnt/array1# ls
mt-daapd  share     spool
root@BACKUP_LS:/mnt/array1# ls -al
drwxrwxrwx    5 root     root           63 Nov  1  2007 .
drwxrwxrwx   11 root     root          126 Nov  1  2007 ..
-rw-r--r--    1 root     root            0 Dec  3 15:22 .accesstest
drwx------    2 root     root           22 Nov  1  2007 mt-daapd
drwxrwxrwx    3 root     root           21 May  9  2012 share
drwxr-xr-x    4 root     root           27 May  9  2012 spool
root@BACKUP_LS:/mnt/array1# cd share/
root@BACKUP_LS:/mnt/array1/share# ls -al
drwxrwxrwx    3 root     root           21 May  9  2012 .
drwxrwxrwx    5 root     root           63 Nov  1  2007 ..
drwxrwxrwx    2 nobody   nogroup        65 May  9  2012 trashbox
root@BACKUP_LS:/mnt/array1/share#

あとはrsyncでファイルを一時的に外部のHDDへ書き出し、何とか完了です。

3)その他の作業

telnetでログインすれば、Viも使えるし普通のLinuxと同様に操作できるので、あとは任意で下記の項目を設定して再起動してあげればOK。

rootパスワードの再設定

    telnetでログインできるので、passwdコマンドで設定してあげてもOK。

ログインユーザーの登録

    これもuseraddで普通に実行できたので、必要に応じてユーザーを追加。
    ※今回は転送用にユーザーアカウントを作成しました。

ssh環境の設定

    ssh関連の設定ファイルは/etc/sshdでなく/etc直下にある。ここを任意で編集。

telnetd、sshdの自動起動設定を追加

    今回はデータのサルベージが目的だったのでsshdはrsyncをssh経由で使用するのに起動。

とりあえず今日のところはデータも無事だし、一段落。
そしてサルベージしたデータの保管用に、また新しいLinkStationを探しにパソコンショップへ行くことにしますw

-infra, トラブルシュート, メモ, 運用

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

no image

script​/標準入力の判定(case文)

ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出力、 ホスト名が対象外 …

no image

[juniper] SRX(JunOS) ルーティング不具合修正(非対称ルートへの対応)

SSGシリーズからSRX220にリプレイスを行った際に、VPNを経由したリモートオフィスとのLAN通信がうまくいかない事象が起きたので、トラブルシュート。 ・社内LANにおいてゲートウェイが複数ある …

no image

[メモ][postfix] インバウンド、アウトバウンドにかかわらずすべてのメールを特定のアカウントに転送する設定

テスト環境でデバッグやテスト時に開発サーバーのMTAから配信されるメールを特定のアドレスに転送させる設定を追加。 目的は、ソース内にハードコーディングされている本番サーバー向けのドメインに、誤ってメー …

no image

[MySQL] ZRM(Zmanda Recovery Manager) を試してみる

お客さんのWebサイトで運用しているMySQLにて、ここんとこmysqldump実行時にエラーが出るように。 レプリケーションにてスレーブ2ホストで同期しているので、ダンプのエラー自体は緊急性は高くな …

no image

rsync実行時に”Argument list too long.”で叱られた時のメモ、ついでにxargsで渡してみた

アプリサーバーのログファイルが大量に増えたので、 ログ退避用にバックアップ用ホストを用意して転送をしようとしたら rsyncさんから"Argument list too long.&quot …