huruyosi’s blog

プログラミングとかインフラとかのメモです。

linkstation LS220D でsshのログインを可能にする

はじめに

容量が2Tの型番が LS220D0202 です。 RAIDにはしてあるけどデータのバックアップは欲しいです。

色々とつまづいたこと

「linkstation ssh」で検索すると出てくる記事は acp_commander.jar で /etc/sshd_config を書き換える記事がでてきます。この方法は試したけど、だめでした。

ファームのバージョンを下げて実現している記事もありました。ファームの更新履歴を見るとバージョンを下げると脆弱性への対策が無くなるので嫌でした。

/etc/sshd_config の書き換えではうまくいかない理由

sshdの起動スクリプト /etc/init.d/sshd.sh が 機能毎に有効/無効を定義してある /etc/nas_feature を参照して、SUPPORT_SFTP が"o"の場合には処理を中断しています。 /etc/nas_feature は起動時に作成される様です。

本題

Compiled thoughts from a compiler: Take control of your Buffalo Linkstation NAS にやり方がありました。

ファームの改変

ざっとした手順はこうなります。

  1. buffalo のサイトから最新のファームウェアをダウンロード
  2. ddrootfs.img を展開して rootのファイルシステムを展開する
  3. /etc/init.d/sshd.sh から /etc/nas_feature の判定をコメントアウト
  4. ついでに /etc/sshd_config のPermitRootLoginを有効にして公開鍵を設置
  5. ddrootfs.img を作り直し
  6. リンクステーションのファームウェアを更新

ファームウェアの更新

既に同じバージョンは入っていると不必要と判断され、更新が行われません。 linkstation_version.ini 内の日付を1日進めてファームの更新を行います。