目次
- このマニュアルについて
- 玄箱へDebianをインストールする
- Debian各種パッケージをインストール
- 公開前にすべきこと
- 作業の終わりはシャットダウンを
このマニュアルについて
このマニュアルでは、Linux初心者の私の経験を元に、初めての方でも玄箱をサーバーにする為に、玄箱にDebianをセットアップしていく手順をステップ・バイ・ステップで紹介します。
こんなことを玄箱でやりたい(目指すこと)
- Windowsからファイルを共有できる(Samba)
- FTPアクセスができる(ProFTPD)
- XOOPSを運用できる(Apache2/PHP/MySQL)
- iTunesから玄箱内の音楽を聴く(mt-daapd)
- 玄箱の時間を自動修正する(ntpd)
- Webから玄箱を簡単に管理できるようにする(Webmin,SWAT)
- 外部からtelnet接続で玄箱をメンテナンスできるようにする。(ddclient)
一応お断りですが、これは作者Harryによる備忘録ですので、正確さには心がけているつもりですが間違いも含まれている可能性があります。実行する際は自己責任でお願いします。
玄箱を普通にセットアップする。
まずは玄箱にハードディスクを入れてを組み立てます。HDDのジャンパはMasterにしておきましょう。
次に、インターネットが利用可能なLANケーブルを玄箱に接続します。通常のLANケーブルはストレートタイプなので、玄箱裏のスイッチはX→||に切り替えておきます。
次に、下記のリンクにあるファームウェアの最新版(ファームウェアアップデート Ver1.02 )を入手します。
- http://bit.ly/5nO8Fe (kuroutoshikou.com)
ローカルハードディスクに展開し、KuroBoxUpdate.exeを実行すると、同一ネットワーク内にある玄箱を探し出しインストールが開始されます。*1

警告文が出ますが、これは「OK」ボタンをクリックして次に進みます。
LAN内の玄箱を自動的に探し、見つかるとグレーの表示でHDDの名称とIPアドレスなどがグレーで表示されます。見つかったHDDがこれでよければ「セットアップの開始」ボタンをクリックします。
ハードディスクのフォーマットを始めます。見つからない場合は、ルーターの設定を見直す必要があります。
フォーマットが終わり、OSの転送も完了すると、このようなウィンドウが出てくると完了です。
※上手く行けばこの時点でDHCPによってIPアドレスが割り振られ、またWindowsマシンからもワークグループ"WORKGROUP"、マシン名"kuro-box-em"として見えるはず。
Explorer等でアクセスすると共有フォルダ"share"にファイルが読み書きできることが確認できます。
ピアツーピアでのセットアップ
あまりおすすめしませんが、玄箱のIPアドレス等を再設定する目的などで、ネットワークに接続せず(ルーターを経由せず)にピアツーピアー(1対1)で接続する場合は、セットアップ作業に入る前に、PCのIPアドレスを192.168.11.1にしておきます。
その場合は、玄箱のIPアドレスはデフォルトの192.168.11.150として接続できるようになります。ただしこの場合は、当然ですがaptitudeやwgetなどでインターネットからパッケージをダウンロードすることができません。
Debianファイルを入手して玄箱に転送しておく。
玄箱うぉううぉう♪さんのところから、以下のファイルを入手しておきます。
- http://bit.ly/61DtmT (kuro.dsk.jp)
- Debian化イメージ debian_2006_06_10_dist.tar
- 電源ボタン管理ソフト kuroevtd_1.1.3.tar
これらのファイルはアップデートされている可能性がありますので、都度確認をするようにします。
玄箱の共有フォルダーを開き、ファイルを置く
まず、ネットワークから玄箱を探すには、マイコンピュータを開いて、CTRL+Fキーで出てくる検索画面で、「他の項目を検索」の「コンピュータ」をクリックして、「コンピュータ名(M)」にkuro-boxと入れて検索を開始すると、以下のように玄箱が出てきます。
入手後は、デフォルトでウィンドウズから見える玄箱の共有フォルダー(\\kuro-box\share)にコピーしておきます。
Tera Term Proでtelnet接続を行う
玄箱にはモニター(GUI/CUI)がない為、Telnetという、ネットワーク経由でコマンドを打ち込んで玄箱を操作する事を行わなければなりません。
Telnetを行うには、Tera Term Proというソフトがおすすめですので、もっていない方はダウンロードを行ってください。
- http://bit.ly/739CsQ (sourceforge.jp)
元祖Tera Term Proオリジナルの作者である、寺西 高氏によるものもありますが、それよりもSourceForgeで開発が続けられているこちらのほうがいいようです。(後ほどの文字化け対策に役立つ)
telnetするためには、あらかじめ玄箱に割り当てられたIPアドレスは把握しておいてください。
インストールが終わったら、ttsshを起動してください。

telnetでログインする
Tera Term Proを起動し、ホストに玄箱のIPアドレスを打ち込みます。
IPアドレスが判らない場合は、ホストにkuro-boxと打ち込んでもOKです。
ログインするためのアカウント:root、パスワード:kuro を入力します。
KURO-BOX login: root Password: kuro (←表示されません)
玄箱をEMモードにする
EMモードとはフラッシュ・メモリに格納されている Linuxシステムを起動するモードである。 先ほどの続きでログインが成功したら、つづいて以下のように入力します。
# echo -n 'NGNG' > /dev/fl3 # reboot
rebootコマンドで再立ち上げすると、ttsshが自動的に閉じ、玄箱はEMモードで立ち上がります。
パーティションのマウント
再びtelnetでlogin(アカウント:root、パスワード:kuro)しなおします。
Kroutoshikou KURO-BOX (IETSUNA) kernel 2.4.17-kuro-box on ppc KURO-BOX-EM login: root Password: #
KURO-BOX-EMと出ていることから、EMモードで無事ログインできていることがわかります。では次に素のmount状態を見てみます。
# mount /dev/root on / type auto (rw,errors=remount-ro,errors=remount-ro) proc on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=20)
そして実際のmount実行。 ↑
# /bin/mount -t ext3 /dev/hda1 /mnt # /bin/mount -t ext3 /dev/hda3 /mnt2
反応がないので、ちゃんとmountされたかどうか不明です。
もう一度mountコマンドで確認。
# mount /dev/root on / type auto (rw,errors=remount-ro,errors=remount-ro) proc on /proc type proc (rw) none on /dev/pts type devpts (rw,gid=5,mode=20) /dev/hda1 on /mnt type ext3 (rw) /dev/hda3 on /mnt2 type ext3 (rw)
このようになれば、ちゃんとmountされています。
Debian 化イメージを展開
ここも一気に解凍します!
# tar zxvf /mnt2/share/debian_2006_06_10_dist.tar
ファイル群がダァ〜ッと解凍されていく様子をしばらく眺めます。
kuroevtd を1.1.3に入れ替え
kuroevtdは、電源ボタン管理ソフトになります。
(shareにコピーし忘れてしまった場合、Debian化が成功した後でもインストールできますので安心を。その際はこの項をスキップしてください。)
まずはアーカイブを解凍
# tar zxvf /mnt2/share/kuroevtd_1.1.3.tar kuroevtd/kuroevtd # ls -l kuroevtd/kuroevtd -rwxr-xr-x 1 root root 8140 Nov 13 2004 kuroevtd/kuroevtd
IPアドレスの変更を行う
玄箱うぉううぉう♪さんのDebian化イメージを解凍した状態では、IPアドレスが192.168.0.100となっており、その他の設定もそれに準じたものになっています。
私は家の中のネットワークを、192.168.123.x で構成しているので、このタイミングで玄箱のネットワーク設定を変更しておきます。
(玄箱を192.168.123.12にしてみます)
まずは、IPアドレスの修正
/mnt/etc/network/interfaces を修正します(IPアドレス、ネットワークアドレス、サブネットマスク、ブロードキャストアドレス、デフォルトゲートウェイアドレスを見直し変更)
ファイルを編集するには、viというコマンドを使用します。
# vi /mnt/etc/network/interfaces
viの使い方はこちらを参照
つづいて、以下の例を見ながら、あなたの玄箱の環境に合わせて変更します。
デフォルトはこちら。
# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or # /usr/share/doc/ifupdown/examples for more information. iface eth0 inet static address 192.168.0.100 network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 iface lo inet loopback auto eth0 lo
私の場合は、192.168.123.12に玄箱、192.168.123.254がルーターなので以下のように変更しました。
# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or # /usr/share/doc/ifupdown/examples for more information. iface eth0 inet static address 192.168.123.12 network 192.168.123.0 netmask 255.255.255.0 broadcast 192.168.123.255 gateway 192.168.123.254 iface lo inet loopback auto eth0 lo
次に、アクセスリストの修正
/mnt/etc/hosts.allow を修正する。
# vi /mnt/etc/hosts.allow
私の場合は、外部からのtelnetアクセスもしたいので、すべての許可の設定(ALL : ALLを追加)をした。
# /etc/hosts.allow: list of hosts that are allowed to access the system. # See the manual pages hosts_access(5), hosts_options(5) # and /usr/doc/netbase/portmapper.txt.gz # # Example: ALL: LOCAL @some_netgroup # ALL: .foobar.edu EXCEPT terminalserver.foobar.edu # # If you're going to protect the portmapper use the name "portmap" for the # daemon name. Remember that you can only use the keyword "ALL" and IP # addresses (NOT host or domain names) for the portmapper. See portmap(8) # and /usr/doc/portmap/portmapper.txt.gz for further information. # # ALL : 192.168.0.1/255.255.255.0 # ALL : 127.0.0.1 ALL : ALL
行頭に#が付いている行は、コメント行です。(設定ファイル読み込み時には無視されます)
名前解決のためのDNSサーバアドレスを修正
/mnt/etc/resolv.conf を修正する。
# vi /mnt/etc/resolv.conf
ここでは、ブロードバンドルータのアドレスを指定する。
search nameserver 192.168.123.254
ホスト名の変更
デフォルトではホスト名がKURO-BOXとなっています。
そのままでもいいのですが、お好みに合わせて、また同一ネットワークに2台以上玄箱がある場合は変更をしたほうがいいです。
/mnt/etc/を修正します。
# vi /mnt/etc/hosts 127.0.0.1 localhost 192.168.123.12 KURO-BOX
/mnt/etc/hostnameを修正します。こちらは、ログイン時に表示される名称、コマンドラインの行頭に表示される名称になります。
# vi /mnt/etc/hostname KURO-BOX
この設定が間違うと、再起動後に認識しませんので慎重に!
もう一度1からやり直したいときはEMモードで!
接続が出来ず、インストールに失敗したと思われる場合や、HDDを換装した際は、もう一度付属CD-ROMもしくはアップデートファイルからのインストールからやり直したいケースがありますが、玄箱や玄箱HGを一度これらからセットアップすると2回目からは、このセットアッププログラムでは、玄箱や玄箱HGを認識できなくなります。
玄箱が認識できるのはEMモードで動作しているときだけです。
その場合は、EMモードへ切り替えを行ってからKuroBoxSetup.exeもしくはKuroBoxUpdate.exeを実行する必要があります。
ちなみに、loginのプロンプトが KURO-BOX-EM で無い場合はEMモードではないことがわかります。
ちゃんとログインできるか?確認
今までの手順が上手く行けば、設定したIPアドレスでtelnetでloginできるはず。
祈りつつ、Tera Term Proからloginを試みます。
Debian GNU/Linux 3.0 KURO-BOX
おお、これでDebianが起動している!
さて、ここでのログインアカウント:tmp-kun、パスワード:tmp-kunなので、
KURO-BOX login: tmp-kun Password: tmp-kun (←表示されない)
rootアカウントもありますが、この時点では直接loginできませんでした。
tmp-kunでloginした後に、suコマンドでrootになりましょう。
# su - Password: root (←表示されない)
とりあえず、ログインができるようになりました。
(※Debian化する前の玄箱のデフォルトtelnetのログインユーザIDはroot、デフォルトパスワードは玄箱はkuro、玄箱HGはkuroadminなので、上記DebianのユーザーID・パスワードと混同しないよう注意!)
Debian各種パッケージをインストール
これで、無事にDebianが立ち上がり、ログインができましたが、今の状態ではサーバー・パッケージ類はほとんど入っていません。
セットアップCD-ROMでインストール後にWindowsから見えていた、KURO-BOXさえ見えない状態ですので、以下の手順でパッケージをどんどんインストールしましょう。
パスワードの変更をしておこう
デフォルトでは、以下のようなユーザーになっています。
- 初期ユーザ : tmp-kun
- パスワード : tmp-kun
- rootユーザー : root
- rootパスワード: root
外部公開をする前には必ずユーザー情報を変更しなければなりません。外部攻撃の原因になるので、ユーザーの新規追加、デフォルトユーザーの削除、rootのパスワード変更必ず行いましょう。
rootのパスワード変更
ログイン後、すでにsuコマンドで管理者へ切り替ているので、以下のコマンドを打ち込むとパスワードを変更できます。
# passwd
パスワードを聞いてくるので入力。もう一度同じパスワードを入力。
これでrootのパスワード設定は完了です。このパスワードは、後述のSWATなどへのアクセスにも使用するので忘れないようにしましょう。
作業用ユーザーの追加
adduserコマンドでユーザー追加をします。
# adduser
ユーザー名とパスワードを入力します。
その後、ユーザー情報なんたらを入れろと出てくるので、適当に入力しておいてください。
Enter the new value, or press return for the default
Full Name []: Harry
Room Number []: 123
Work Phone []: 090-1234-5678
Home Phone []: 012-345-6789
Other []:最後にyを選ぶと終了です。
最新のパッケージに更新する。
まずはじめにやっておきたいのが、最新のパッケージに更新することだ。Debian では apt-get コマンドで更新することができる。update でデータベースを更新し、upgrade で既存パッケージを更新する。
Debianダウンロード元リストを変更する
アップデート前にダウンロード元リスト(/etc/apt/sources.list)を変更しておきます。
sources.listをsargeに書き換えます。
# vi /etc/apt/sources.list
"woody"のところを"sarge"に書換えます。
# See sources.list(5) for more information, especialy # Remember that you can only use http, ftp or file URIs # CDROMs are managed through the apt-cdrom tool. # Security updates for "stable" deb http://security.debian.org sarge/updates main contrib #deb http://security.debian.org testing/updates main contrib # Woody #deb http://ftp2.de.debian.org/pub/debian woody main contrib #deb http://ftp2.de.debian.org/pub/debian-non-US woody/non-US main contrib deb ftp://ftp.dti.ad.jp/pub/Linux/debian sarge main contrib~ deb ftp://ftp.dti.ad.jp/pub/Linux/debian-non-US sarge/non-US main contrib # Sources #deb-src http://ftp2.de.debian.org/pub/debian woody main contrib #deb-src http://ftp2.de.debian.org/pub/debian-non-US woody/non-US main contrib deb-src ftp://ftp.dti.ad.jp/pub/Linux/debian sarge main contrib~ deb-src ftp://ftp.dti.ad.jp/pub/Linux/debian-non-US sarge/non-US main contrib
"deb"から始まる行は、バイナリパッケージの取得用設定です。
"deb-src"行はソースパッケージの取得用設定です。
アップデートを行う
# apt-get update # apt-get upgrade
途中、設定を求められるパッケージがあるが、デフォルトですすめてください。
私は、この後に以下のものもインストールしておきました。(そのうち使用するのでインストールを推奨します。)
# apt-get install aptitude # apt-get install sudo # apt-get install wget
玄箱 Debian にアプリケーションを追加する
すでに気が付かれているとは思いますが、Debian は apt-get または aptitudeコマンドでパッケージのインストールが可能です。
apt-getとaptitudeの違いは、aptitudeの 方が、関連ファイルも含めてインストールしてくれるらしいとの事で、私は愛用していますが、aptitude を使う場合は apt-get との混用を避けるべきとのことです。
Sambaのインストール
Debian 化により、なくなってしまった Samba をインストールしよう。
# aptitude install samba
とりあえず設定は後ですることにし、デフォルトのまま選択して先に進みます。
Workgroup/Domain Name? workgroup Use password encryption? Yes Modify smb.conf to use WINS settings from DHCP? No How do you want to run Samba? daemons OK Create samba password database, /var/lib/samba/passdb.tdb? No Do you want to upgrade glibc 2006-07-14 (金) 22:51:27 [Y/n] Do you wish to restart services? [Y/n]
SWATをインストール
ブラウザから Samba の設定をするために、SWATをインストールする。
# aptitude install swat
SWATの場合、インストール後に inetd.conf の設定が必要である。
# vi /etc/inetd.conf
最後の行、swat の行頭にある「#<OFF>#」を削除し有効にする。
次に inetd を再起動する。
# /etc/init.d/inetd restart
SWATへブラウザから接続する
ブラウザーから http://bit.ly/5tyQTU (玄箱のIPアドレス:901) もしくは http://bit.ly/6ktVeR (kuro-box:901) へアクセスすると、ログイン用ウィンドウが出てきます。
ここで、ユーザIDはroot、パスワードは先ほど設定したroot用パスワードを入力します。
Sambaの設定を行う。
ログインに成功をすると、以下のようなウィンドウが出てきます。
viで/etc/samba/smb.confを編集することでも設定はできますが、せっかくSWATを入れたのでこれを利用して設定してみましょう。
まず、サーバーに接続可能なすべての端末・ユーザーから読み書き共に可能な共有フォルダの設定です。もっとも基本的・根本的な設定は、
smb.confファイルの内容で関連する変更点は下記のようになりますので、SWATで対応する項目を変更していきます。
[global] security = share os level = 2 [public] (Advancedにて) path = /mnt/share invalid users = read only = No guest only = Yes guest ok = Yes
以上の設定は、誰もが読み書きできることから、逆にファイルの漏洩・改ざん、操作ミスによるファイル削除などに対するリスクはありますが、利便性は高いので初心者向きです。
家庭内ネットワークで知らない第三者が操作する可能性がないのであればこれでよいでしょう。
SWATを用いたSambaの設定方法のさらに細かいことはこちらを参照。
- http://bit.ly/8Qg311 (www.syns.net)
共有フォルダに書き込み権限を与える
Windowsから共有フォルダが見えるようになり、SWATでWriteableでYesを選択したのに書き込みが出来ない場合、ディレクトリの書込み権限(パーミッション)の設定がされていない可能性があります。
この場合は、書き込みをしたいディレクトリ(私の場合は/mnt)に移動した後、
cd /mnt ls -l drwxr-xr-x 21 root root 20480 2006-09-30 22:37 share ←書き込み権限なし chmod 777 mp3
これでmp3ディレクトリに書き込み権限を与えることができましたので再確認。
ls -l drwxrwxrwx 21 root root 20480 2006-09-30 22:37 share
これでWindowsからユーザーがファイルを書き込み・削除出来るようなります。
ProFTPDのインストール
ここでは、FTPサーバーとして有名なProFTPDを組み込む。
# aptitude install proftpd
途中の選択肢はデフォルトの"standalone"のままにしておきます。
ftp接続テスト
ローカルで自分自身にftp接続してみる。ログインできればOK
# ftp localhost Connected to localhost. 220 ProFTPD 1.2.10 Server (Debian) [127.0.0.1] Name (localhost:xxxxx): user ←ここにユーザを入力 331 Password required for user. Password: ←ここにパスワードを入力 230 User user logged in. Remote system type is UNIX. Using binary mode to transfer files. ftp> ftp> quit 221 Goodbye.
ここまでできればOKです。 できる場合もできない場合も下のことを行っておきましょう。
rootでftpするための設定
現在のところ、tmp-kunでしかログインできないので、rootでアクセスしたい場合は以下のように設定する。
# vi /etc/ftpusers
ここに書かれているユーザではftpできないという意味なので、rootを#でコメントアウトする。
# vi /etc/proftpd.conf
次の行を確認し、inetdになっていたら、standaloneに書き換え。
ServerType standalone
次の行を適当なところに追記する。
RootLogin on
rootでのftp接続テスト
ローカルで自分自身にftp接続してみる。rootでログインできればOK
# ftp localhost Connected to localhost. 220 ProFTPD 1.2.10 Server (Debian) [127.0.0.1] Name (localhost:xxxxx): root ←ここにrootを入力 331 Password required for root. Password: ←ここにrootパスワードを入力 230 User root logged in. Remote system type is UNIX. Using binary mode to transfer files. ftp> ftp> quit 221 Goodbye.
これでFTP接続が可能となることが確認できたので、FFFTPなどのFTPクライアントでも試してみましょう。
apache2.conf変更箇所 5箇所
ServerName KURO-BOX (3行目辺り、ServerRootの前に追加) DirectoryIndex index.html index.cgi index.pl index.php index.xhtml ↓↓↓ DirectoryIndex index.html index.htm index.cgi index.pl index.php index.xhtml index.shtml HostnameLookups Off ↓↓↓ HostnameLookups On LanguagePriority en da nl et fr de el it ja ko no pl pt pt-br ltz ca es sv tw ↓↓↓ LanguagePriority ja en da nl et fr de el it ko no pl pt pt-br ltz ca es sv tw #AddHandler cgi-script .cgi ↓↓↓ AddHandler cgi-script .cgi .pl
apache2.confの追加箇所
#<Directory /home/*/public_html>〜<Directory> の後
<Directory /var/www/phpMyAdmin>
AllowOverride All
</Directory>編集終了後は、Apacheの再起動をして変更を有効にします。
# /etc/init.d/apache2 restart
Apache2の動作確認
再起動後、http://bit.ly/5L224p (玄箱のIPアドレス) もしくは http://bit.ly/5zGOwE (kuro-box) を打ち込んで
といった表示がされれば、Apacheはうまく動作しています。
PHPの動作確認
まずはテストファイルを作成する。
# vi /var/www/phpinfo.php
以下の内容を記述します。
<? phpinfo(); ?>
ブラウザから http://bit.ly/6w109T (玄箱のIPアドレス) にアクセスし、PHP関連の情報がずらずらと表示される事を確認します。
このように表示されたらOKです。
MySQLをインストールする
続いて、MySQLをインストールする。MySQLは、XOOPSやMovableType等データベースを必要とする方には必要です。(HTMLベースのホームページを公開している人は不要)
# aptitude install mysql-server # aptitude install php4-mysql
phpMyAdminのインストール
phpMyAdminは、MySQLの設定をウェブ上から簡単にできるようにしたインターフェースです。コレをインストールしておけば、telnet上から難しいことをしなくてもデータベースの作成や、テーブルの管理、パスワードの設定をすることができます。
まずは、phpMyAdminのダウンロードページの最新版から、all-languages.zipをダウンロードします。
- http://bit.ly/7x0oqO (www.phpmyadmin.net)
ダウンロードしたものを解凍し、ftpで/var/www/phpMyAdminへ転送します。
http://bit.ly/5L224p (玄箱のIPアドレス)phpMyAdmin/ へアクセスして、以下の画面が表示されればOKです。
(phpMyAdminのロゴ) MySQL - *.*.*
phpMyAdminからパスワード設定をする
デフォルトでは、パスワード設定がされていないので設定を変更する必要があります。
http://bit.ly/5L224p (玄箱のIPアドレス)phpMyAdmin/ へアクセスします。
すると、下のようなログイン画面が出てきます。
ユーザー名はroot、パスワードには何も入力せずにOKを押します。
右のフレームにある、「特権」をクリックします。
すべてのユーザーにパスワードを設定します。
それぞれのユーザー名右端の鉛筆マークをクリックすると、各ユーザーごとのパスワード変更画面が出てきます。
画面をスクロールさせるとパスワードを2回入力する画面が出てきますので、設定をして
「実行する」ボタンを押します。
設定ファイル(config.inc.php)を変更する
上記のパスワード設定を行うだけでは、次回からphpMyAdminに接続できなくなります。
そこで、PCに展開したphpMyAdmin内(/var/www/phpMyAdmin/)のlibrariesフォルダの中にあるconfig.default.phpを編集して先ほど設定したパスワードを入力する必要があります。
# vi /var/www/phpMyAdmin/libraries/config.default.php $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'ここにパスワードを入れる';
phpMyAdminのフォルダにアクセス制限をかける
デフォルトでは、phpMyAdminは誰でも見れてしまいます。
したがって、phpMyAdminというディレクトリーは通常アクセス制限すべきです。
そこで、
.htaccess .htgroup .htpassword
というファイルをphpMyAdminディレクトリに作成する必要があります。これらのファイルはアスキーモード、パーミッションは644で転送してください。
.htaccessの内容
AuthUserFile /var/www/phpMyAdmin/.htpassword AuthGroupFile /var/www/phpMyAdmin/.htgroup AuthType Basic AuthName "phpMyAdmin login?" <limit GET POST> require valid-user </limit>
.htpasswordの内容
.htpasswordはユーザ名とパスワードのファイルです。
書式は、「(ユーザ名):(password_crypt)」であらわします。
ちなみにパスワードはcryptされています。
(例)
ユーザー名がtest、パスワードが test0000
ユーザー名がtest02、パスワードが test0000の場合。
test:aioRezOz3mVm6
test02:aioRezOz3mVm6
cryptの方法は各プログラム言語の参考書を参照してください。C言語、PERLなど一般的なものはほとんど変換できます。
パスワードCryptの簡易のプログラムはこちらで見れます。
- http://bit.ly/6guW1I (www.futurism.ws)
.htgroupの内容
.htgroupは空ファイルです。
ファイルだけ作成して転送しておきましょう。
また、上記ファイルの設定を有効にするために、Apache2の/etc/apache2/apache2.confを変更する必要があります。
# vi /etc/apache2/apache2.conf AllowOverride ALL
設定ファイルの内容を変更する。
ここでアクセス設定を行います。この設定があってないとWebminに接続できません。
# vi /etc/webmin/miniserv.conf allow=127.0.0.1 192.168.123.(←最後のアドレス数字のみ削除)
Webminへアクセス
Webminを見るには、http://bit.ly/8PownG (玄箱のIPアドレス:10000) または http://bit.ly/52VoHr (kuro-box:10000) へアクセスする。
証明書がどうとか聞かれるが、無視して続行すると以下の画面が出ます。
ユーザー名とパスワードを聞かれますので、rootのユーザー名とパスワードを入力してください。
左上のChange Language and Themeで、言語設定Webmin UI languageをPersonal choice .. の中のJapanese(JA_JP.EUC)を選択しておきます。
WebminでMySQL/Apache/Samba/ProFTPDの設定ができるようにする
Webminへアクセスできるのを確認したら、さらに以下のものを追加して、ブラウザー上のWebminからMySQL/Apache/Samba/ProFTPDが管理できるようにします。
# aptitude install webmin-mysql # aptitude install webmin-apache # aptitude install webmin-samba # aptitude install webmin-proftpd
iTunesサーバー(mt-daapd)組み込み
ここでは、iTuneサーバーとして有名な、mt-daapdをインストールします。mt-daapdが動いていると、玄箱の中の音楽ファイルがiTunesから自動的に検出され、ネットワーク内で共有・再生することができます。
あらかじめ、以下のものをインストールしておきます。
# aptitude install dpkg # aptitude install libid3tag0
次に、パッケージをダウンロードします。(Thanks!bnoteさんのページ)
- http://bit.ly/69Ndsh (www.bnote.net)
ダウンロードしたファイルは、先ほどのSambaで登録した共有フォルダに転送し、ディレクトリをshareにしておいてください。
# cd /mnt/share
パッケージのインストールを行います。
# dpkg -i mt-daapd_0.2.4-1_powerpc.deb
Selecting previously deselected package mt-daapd.~
(Reading database ... 13822 files and directories currently installed.)~
Unpacking mt-daapd (from mt-daapd_0.2.4-1_powerpc.deb) ...~
Setting up mt-daapd (0.2.4-1) ...
Configuration file `/etc/init.d/mt-daapd'
==> File on system created by you or by a script.
==> File also in package provided by package maintainer.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : background this process to examine the situation
The default action is to keep your current version.~
mt-daapd (Y/I/N/O/D/Z) [default=N] ? &font(Red){y};~
Installing new version of config file /etc/init.d/mt-daapd ...iTunesファイル名・タグ名の文字化け対策
以上のインストールを行ってiTuneを立ち上げると、日本語ファイル名やタグ情報が文字化けすることがあります。以下の手順で文字化け対策を行っておきます。
インストールに先立ち、以下のものをインストールしておきます。
# aptitude install rpm # aptitude install alien # aptitude install patch # aptitude install gcc # aptitude install libgdbm-dev # aptitude install libid3tag0-dev
ここからが修正パッチの導入です。
# cd /tmp # wget http://ouchi.nahi.to/%7Ekaidempa/mt-daapd/mt-daapd-0.2.4-1j1.src.rpm # rpm -ivh mt-daapd-0.2.4-1j1.src.rpm # cd /usr/src/rpm/SPECS # rpm -ba mt-daapd.spec # cd /usr/src/rpm/RPMS/ppc # cp mt-daapd-0.2.4-1j1.ppc.rpm /tmp # cd /tmp # alien mt-daapd-0.2.4-1j1.ppc.rpm # dpkg -i mt-daapd_0.2.4-2_powerpc.deb
mt-daapdの環境設定
環境設定ファイルであるmt-daapd.confファイルを何カ所か修正します。
# vi /etc/mt-daapd.conf
私はこの4ヶ所を修正しました。
web_root /usr/share/mt-daapd/admin-root admin_pw mt-daapd ←Webから見るときのパスワード mp3_dir /mnt/mp3 ←音楽ファイルを置く場所 servername KURO-BOX ←iTunesから見える名前
mp3_dirのフォルダ名にスペースを使用(例:My Music)すると、iTunesから認識しなかったり、認識した後に落ちることがあるようですので要注意です。
ブラウザーから確認
ブラウザーから http://bit.ly/6RbRNQ (玄箱のIPアドレス:3689) もしくは http://bit.ly/8QhMiy (kuro-box:3689) を入力します。
ユーザー名はroot、パスワードはmt-daapd.confで設定したものです。
ログインに成功すると上のような画面が出現します。
configから設定ができるようにするには、/etc/mt-daapd.confに書き込み権限(FTPで666)を与えておく必要があります。
iTunesから確認
うまく起動していれば、iTunesの左の欄にmt-daapd.confで設定した名称が玄箱として検出されます。 (下の場合ではKURO-BOXとして表示されています。)
mt-daapd.confで設定したフォルダにmp3ファイルなどを転送しておくと、左の欄の玄箱をクリックすると、音楽ファイルが表示され、再生ができるようになります。
文字化けが解消されていない場合
文字化け解消パッチを当てる前にmt-daapdを起動した時作成された曲名データベースsongs.gdbが残っていたために文字化けをしている可能性があります。
以下の手順でsongs.gdbを削除すれば、次にiTunesを起動したときには文字化けは解消されます。
# /etc/init.d/mt-daapd stop # rm -f /var/cache/mt-daapd/songs.gdb # /etc/init.d/mt-daapd start
ntpサーバーへアクセスさせる
玄箱に定期的にNTPサーバー(時刻をあわせるためのサーバ)へアクセスし、時間あわせをさせます。時間がずれるとろくなことがないみたいなのでできるだけ導入すべきです。
# aptitude install ntpdate ntp-server
ntpサーバーアクセス先設定
ntpdateが時刻の問い合わせを行うサーバは、/etc/default/ntpdateファイル内の、NTPSERVERSというところで設定します。
# vi /etc/default/ntpdate NTPSERVERS="ntp.nc.u-tokyo.ac.jp"
ntp-serverが同期するサーバは、/etc/ntp.confというファイル内で行います。このファイル内でserverと言う文字のあとに同期するサーバのホスト名を書きます。
# vi /etc/ntp.conf server ntp.nc.u-tokyo.ac.jp
ここには本来複数個のサーバを記載しておいた方が良いとのこと。他にntp1.jst.mfeed.ad.jp, ntp2.jst.mfeed.ad.jp, ntp3.jst.mfeed.ad.jp等があります。
ntpサーバー起動
まずは、ntpdateを一度実行してから、ntp-serverを起動します。
# /etc/init.d/ntpdate start Running ntpdate to synchronize clock. # /etc/init.d/ntp-server start Starting NTP server: ntpd.
これで起動しました。
telnetコンソール表示の日本語化
# aptitude install locales [*] ja_JP.EUC-JP EUC-JP OK ja_JP.EUC-JP OK # dpkg-reconfigure locales [*] ja_JP.EUC-JP EUC-JP OK ja_JP.EUC-JP OK
"Change Language and Theme" ボタンを押し、"Webmin UI language"に"Japanese (JA_JP.EUC)"を設定する。
各種選択画面では、↑↓で選択、スペースで*を入れて、タブキーでOKボタンへ移動し、Enterで決定します。
Tera Term Proの文字コードをEUCに
表示の日本語化を行うと、telnetで文字化けが起きます。これは、玄箱の文字コードがEUCに対して、Tera Term Proの文字エンコードがデフォルトでShiftJISだからです。
Tera Term Proウィンドウから、「設定」→「端末」で、「漢字-受信」「漢字-送信」を両方ともEUCに変更すると解決します。
ダイナミックDNSを導入する
玄箱を外部から参照(外部に公開)するには、外部に対して静的なアドレスと玄箱との結びつけが必要になります。これを行おうのがダイナミックDNSです。
固定IP+独自ドメイン名を取得されている方や、ブロードバンドルータがダイナミックDNSに対応して定期的に更新してくれる機能をがある場合は不要です。
固定IPアドレスを持っている場合でも、ダイナミックDNSは最長1ヶ月ぐらいしか情報保持してくれませんので、のddclientを使って定期的に情報更新をしておく必要があります。
DynDNSでアカウント、サブドメインを取得する。
まずは、DynDNSのページより、アカウント、サブドメインを取得します。
DynDNSのアカウント取得については以下のリンクが参考になります。
- http://bit.ly/72aWub (y-kit.jp)
アカウント名、パスワード、サブドメイン名は続けて行う設定で必要ですので覚えておいてください。
ddclientをインストールする。
ddclientを使用すると、DynDNSに登録しているドメイン/IPアドレスを定期的に更新してくれます。以下のコマンドでインストールが開始されます
# aptitude install ddclient
以下の設定を参考に、先ほど取得したサブドメイン、ユーザー名、パスワードを入力します。(タブキーでカーソルを動かすことができます)
<Configuring Ddclient> [Choose dynamic DNS service provider] www.dyndns.org [Your DynDNS fully qualified domain names]│ 取得したサブドメイン名 [Username for dynamic DNS service] ユーザ名 [Password for dynamic DNS service] パスワード [Interface used for dynamic DNS service] eth0 [Run ddclient on ppp connect] <no> [Run ddclient as daemon?] <yes> [ddclient update interval] 300
設定を間違えた場合や再設定を行いたい場合は、以下のコマンドを使って再設定が可能です。
# dpkg-reconfigure ddclient
ddclientの動作確認
# /usr/sbin/ddclient -daemon=0 -debug -verbose -noquiet
ダァーっとメッセージが流れますが、成功すると一番下の行に下記のメッセージが表示されます。
SUCCESS: updating ***.dyndns.org: good: IP address set to ”現在のIPアドレス”
家庭内ネットワークにある玄箱を公開する場合
家庭内ネットワークでは、インターフェース設定[Interface used for dynamic DNS service]でeth0としている部分のアドレスはローカルアドレス(例:192.168.123.12)となっているで、正しくグローバルアドレスを登録できません。
ADSLやFTTHを通じて家庭内ネットワークで運用されている場合は、/etc/ddclient.confを下記のようにしてください。
# vi /etc/ddclient.conf [Interface used for dynamic DNS service] [変更前] use=if, if=eth0 -> [変更後] use=web
このようにすることで、WEB接続したときの接続元アドレス、つまり、ブロードバンドルータでNAT化されたグローバルアドレスが DDNSサービスに登録されることになります。
さらにPPP接続の場合は、加えて以下の部分も修正する必要があります。
[Run ddclient on ppp connect] [変更前] <no> -> [変更後] <yes>
インストール済みパッケージの確認方法
これだけいろいろな作業をやると、何を入れて何を入れてないかわからなくなることが多々ありますが、以下のコマンドでインストール済みのパッケージ一覧を表示してくれます。
# dpkg -l
デフォルトユーザー(tmp-kun)の削除
公開をする前には、外部からtelnetでログインされてしまう可能性がありますので、デフォルトユーザー(tmp-kun)を削除しましょう。
deluserコマンドでユーザーを削除をします。
# deluser tmp-kun ユーザ `tmp-kun' を削除しています。 終了。
Attach file:
| Page Info | |
|---|---|
| Page Name : | 初心者の玄箱Debianサーバー化パーフェクトマニュアル |
| Page aliases : | None |
| Page owner : | Harry |
| Can Read | |
| Groups : | All visitors |
| Users : | All visitors |
| Can Edit | |
| Groups : | No one |
| Users : | No one |






















