amLS420DをFW1.30にアップデートしたらssh接続ができなくなった。調べたら、LS-CHLのsshd起動不可と同じ様な”SUPPORT_SFTP=0”チェックが増えていた。initrd.buffalo内のnas_featureを修正しないとSUPPORT_SFTP=1で動作しないが、sshdが常に起動していないといけない使い方ではないので、funcスクリプトで使いたい時にsshd,telnetdを起動するようにする。LS420Dではまだfuncスクリプトを導入していないので、まずはfuncスクリプトをサックと作っちゃいましょう。/proc/buffalo/kernevntを見ながらfuncボタンを押すとFUNCSW_pushedが割込みとして出てくる。kernelmon⇒kernelmon_exec.sh⇒libfuncswという感じにファイルが読み込まれる、編集が一番楽そうなlibfuncswを弄る事にする。LS-WXL,LS-WVLはlibfuncsw.shだったかな?ほぼ同じなのでlibfuncswの最後にstarthack.shをコールする様にする。LS420DはRAID機なので、HDDを取り出してLinuxPCに接続してファイルを変更してもうまく動作しないので、FWアップデートで変更を入れます。initrd.imgに修正を入れinitrd.imgを再作成するスクリプトにstarthack.shも同時に作る様にしましょう。新しく作るのが面倒なので、LS-WXL,LS-WVLで使っていたchginitrd.shを改造する。最新のFWが入っているので、FWアップデータのデバッグモードの強制アップデートでfuncスクリプトを導入する。後は、sshd,telnetdのrootログイン有効化(FW1.30)を行うスクリプト(sshd-telnetd-use.sh)を作るだけ。スクリプトの内容を下記に示す。rootのパスワードはadminのパスワードと同じにする。sshdのrootログイン有効化の内容を下記に示します。・sshd_configの#PermitRootLoginをPermitRootLoginに変更する。・nas_featureのSUPPORT_SFTP=0をSUPPORT_SFTP=1に変更する。startを行いsshdを起動する。telnetdのrootログイン有効化の内容を下記に示します。・login、system-authのpam_securetty.soがある行をコメント化する。telnetd)使い方はいたって簡単です、ざっくり手順を書きます。1.LinuxPCにchginitrd.sh、FW1.30のinitrd.imgを置きLinuxPCにrootでログインしchginitrd.shを実行する。2.出来上がったinitrd.imgをFW1.30のアップデータに入れFW1.30にアップデートする。3.1でstarthack.shができるのでLS420Dの共有ディレクトリにhackディレクトリを作成しstarthack.shを置く。4.LS420Dの共有ディレクトリ/hack配下にsshd-telnetd-use.shを置く。5.starthack.sh、sshd-telnetd-use.shの内容を確認しfuncボタンを押す。6.ssh接続かtelnet接続でrootでログインする。stopを行うか再起動を行って下さい。telnetdのプロセスを殺すか再起動を行って下さい。chginitrd.sh:initrd.imgに修正を入れinitrd.imgを再作成するスクリプト。initrd.imgに修正を入れinitrd.imgを再作成する。1.funcスクリプトに対応。不要な機能はコメント化するか削除して下さい。・本スクリプトはLS400シリーズ(LS420D)用です。