KURO-BOX Memo
玄箱を標準状態からDebian Linuxに差し替えた時の作業メモです。
2006年・夏の段階でメモですので内容が古くなっているかもしれません。

目次

1.初期設定
1-1.玄箱を買ってくる
1-2.玄箱を組み立てる
1-3.普通のファームウェアを導入する 
1-4.完了

2.Debian化の下準備
2-1.Debian化の検討
2-2.目標
2-3.準備しないといけないもの
2-4.ネットワークに関する計画と目標

3.Debian化
3-1.ファームウェアを玄箱に転送する
3-2.Telnetで玄箱にアクセスし作業を行う
3-3.EMモードに落とした玄箱での作業
3-4.Debian化されているかの確認

4.Debianの初期設定
4-1.作業ユーザーの登録 
4-2.初期作業用ユーザーの削除

5.いろいろ
5-1.必須作業
5-2.WEBサーバーを導入する。(Apache2)
5-3.FTPサーバーを導入する。(ProFtpd)
5-4.ファイルサーバーを導入する。(SAMBA)
5-5.EXIM4あぼーん

6.WebMinの導入及び設定
6-1.導入
6-2.WebMinのアクセス許可を設定をする
6-3.WebMinを日本語化する
6-4.WebMinをアップグレードする

7.その他
7-1.おわりのはじまり
7-2.やったことつれづれ

1.初期設定

1-1.玄箱を買ってくる

アヒャー(゚∀゚)
ちなみに今買うのであればなんの迷いもなくHGを推奨します、ある程度差額があろうが劇的にパフォーマンスが違います(特にWebMinで作業していたらそれは痛感する) ハードディスクは別になんでも良いと思うけど「容量」「価格」「発熱」「静音」の4バランスを総合的に判断してください。我が家の4台の玄箱はSeagateのST3200822A 200G、Maxtorの300G(名前失念 長寿命のやつだったと思う)、WDの320G(WD3200JB)*2という構成ですが特に問題なく動作しています、サムスンあたりが安いので実験用には良いかもしれないけど信頼性考えたら最低でもWDは欲しいかなという印象ですね。

1-2.玄箱を組み立てる。

説明書参照。
※ワンポイント:背面の空気ファンの所のネジの存在は見落としがちなので注意 ネジは全部で8個(ファンの横に1→箱を開いて基盤を止めてるのが4つ→HDD固定用が2つ→電源ユニットを筐体に止めてるのが1つ)なのですが昔の玄箱だとファンの横のファンを見落として粉砕してブチギレ金剛化現象が時々みられたので注意すること。

1-3.普通のファームウェアを導入する

説明書参照。
ファームウェアという書き方しているけど早い話がリモートでLinuxシステムを転送するわけですね、正直このやり方にはまいった(良い意味で) 今回は作業の手順上初代の玄箱で作業を進めますがHGの場合も作業工程は同一です。

ダウンロードした玄箱のファームウェアを適当な場所に解凍して実行します。

警告文が出ます。実際にWindowsXPでファイヤーウォールが有効になっている場合は接続等が問題なかったとしても正常に認識できない場合がありますので一時的にファイヤーウォールを停止します。

玄箱の検索がはじまります。

玄箱が正常に認識されました。接続したハードディスクで間違いないか確認してください。問題がないのであればアップデート開始ボタンをクリックしてください。

OKボタンを押すと玄箱のPOWERランプが点滅します。(再起動→起動プロセス) しばらく放置すると点滅が点灯にかわります。

1-4.完了

導入完了。デフォルトのネットワーク設定は

ワークグループ名:workgroup
ホスト名:kuro-box
IPアドレス:DHCPによる自動取得

なんでもいいので適当にWEBブラウザを起動する。起動後にブラウザのアドレスに「http://kuro-box」と入力してエンター、一般的な環境であれば玄箱に接続できるはずです。

接続できない場合はIPアドレス直打ちで接続する(ex:http://192.168.0.10等) 認証パスワードは説明書に書いてますが初代玄箱はroot/パスワードなし、玄箱HGはroot/webadminと変更されているので注意してください。

最低限やるべきこと

基本設定→KURO-BOXの名称設定
玄箱の名前を設定します。お好きな任意の名前を設定しておきましょう。

ネットワーク設定→IPアドレス設定
ルーターが導入されている環境であればあまり考える必要はないかもしれません。

ネットワーク設定→ワークグループ設定
WindowsXPユーザーはデフォルトのワークグループがmshomeになってる場合があるので注意してください。

メンテナンス→管理者パスワード設定
セキュリティ上の事を考えて変更しておきましょう

共有フォルダ設定→共有フォルダ設定
ここで新規の共有フォルダを作ったり削除したり編集できたりします。アクセス権などの設定もできますので今後一番ここを触ることになるのではないでしょうか?

設定画面で必要な項目を設定したら後は普通に自宅の家庭内ファイルサーバーとして使えます、おめでとうございます!

おまけ:玄箱と玄箱HGの比較

玄箱
玄箱HG
CPU PowerPC 200MHz PowerPC 266MHz
メモリ 64MB 128MB
LAN 10M/100M 10M/100M/1000M
USB2.0 1ポート 2ポート
ファイルサーバー
プリントサーバー

※初代玄箱でプリントサーバー機能を有効にするにはファームウェア1.02にする事

 

 

 

2.Debian化の下準備

2-1.Debian化の検討

標準状態のままでも普通にNAS及びプリントサーバーとして使えます。それ以上の機能を求めるのであればDebian化するしかありません。(他にもVineLinux等がありますが今回はDebian化するという大前提で話を進めます)

標準状態の玄箱
Debian化した玄箱
ファイルサーバー
プリントサーバー
WEBサーバー
×
FTPサーバー
×
iTunesサーバー
×
他、各種

×

 早い話がDebian Linux上で動くのでしたらなんでも動きます。ただしブラウザ上からクリックだけで設定できる標準状態の玄箱と違い少なからずCUI、早い話が昔ながらのテキストベースでの作業になりますのでそういった行為に抵抗感がある人は標準状態で使うのを強くおすすめします。逆に抵抗が無い人・そういったサーバー機能を求めている人はチャレンジする価値はあります。

2-2.目標

今回の作業では、最終的に以下の機能を実装します。

・ファイルサーバー機能(SAMBA) *
・ファイルサーバーをWEB上から管理する(SWAT)
・WEBサーバー機能(Apache2)
・FTPサーバー機能(ProFtpd)
・ダイナミックDNSクライアント(スクリプト)

*プリントサーバー機能に関しては双方向通信ができない(※出来る?)

2-3.準備しないといけないもの

・標準状態の玄箱

・玄箱Debian化キット

各種Debian化キットがありますが、今回は270氏が提供されているカーネル2.6.16.9版を使って話を進めます。
270氏のサイト
http://www.genbako.com/debian-2.6.16.9/

初代玄箱用
debian-sarge-2.6.16.9-KUROBOX-20060422.tgz
玄箱HG用
debian-sarge-2.6.16.9-KUROHG-20060422.tgz

・Telnet端末

TeraTermProを推奨。
http://hp.vector.co.jp/authors/VA002416/

2-4.ネットワークに関する計画と目標

現状

最終的にはこのような状態にする。

 

 

 

 

 

3.Debian化

3-1.ファームウェアを玄箱に転送する

エクスプローラーから玄箱にアクセスし、共有「share」に先ほどダウンロードしておいたDebian化キットを転送します。

3-2.Telnetで玄箱アクセスし作業を行う。

玄箱にTelnetでログインします。

Kroutoshikou KURO-BOX (IETSUNA)
kernel 2.4.17_kuro-box on ppc
KURO-BOX login: root ←rootと入力します。
Password: ←玄箱であれば「kuro」玄箱HGであれば「kuroadmin」
Linux (none) 2.4.17_kuro-box #4 2004年 4月 16日 金曜日 11:45:05 JST ppc unknown
root@KURO-BOX:~#

先ほどファイルをコピーした「share」というディレクトリに移動します。

root@KURO-BOX:~#
root@KURO-BOX:~# cd /mnt/share ←/mnt/shareに移動する
root@KURO-BOX:/mnt/share# ←移動した
root@KURO-BOX:/mnt/share# ls ←/mnt/shareの中身を表示する 
debian-sarge-2.6.16.9-KUROBOX-20060422.tgz ←ファイルが存在する事を確認
root@KURO-BOX:/mnt/share#

ファイルを展開します。

root@KURO-BOX:/mnt/share#
root@KURO-BOX:/mnt/share# tar xzf debian-sarge-2.6.16.9-KUROBOX-20060422.tgz ←ファイルを解凍する
root@KURO-BOX:/mnt/share# ←解凍が終了してプロンプトに戻ってきた
root@KURO-BOX:/mnt/share# ls ←/mnt/shareの中身を表示する 
bin dev lib proc sys var
boot etc lost+found root tmp
debian-sarge-2.6.16.9-KUROBOX-20060422.tgz home mnt sbin usr ←無事に解凍されている
root@KURO-BOX:/mnt/share#
root@KURO-BOX:/mnt/share# rm debian-sarge-2.6.16.9-KUROBOX-20060422.tgz ←圧縮ファイルを消す
root@KURO-BOX:/mnt/share#

最低限必要な各種設定を行うため、設定ファイルが存在するディレクトリに移動します。

root@KURO-BOX:/mnt/share# cd /mnt/share/etc ←設定ファイルがある所に移動する
root@KURO-BOX:/mnt/share/etc#  ←移動した。
root@KURO-BOX:/mnt/share/etc# vi hostname ←viを使いhostnameというファイルを編集する

viが起動しました。

KURO-BOX
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
hostname: unmodified: line 1

viの基本画面。viの使い方に関しては省略…といっても実際にまったくLinux触った事が無い人にとってはこのviの使い方が最大の鬼門になるので、本当に最低限の使い方だけ解説します。

viは基本的に カーソルを移動する・文字を削除する・行を削除する”コマンドモード” ⇔ 具体的に文字を入力する”入力モード”の2つがあります。編集モードで編集する部分にカーソルを移動させ(カーソルの移動は 上[↑][k] 下[↓][j] 左[←][h] 右[→][l])、そこで[i](カーソルの手前から入力モードに)[a](カーソルの後から入力モードに)[o](カーソルの下に一行追加して入力モードに)で文字を入力します。文字の入力が終わりコマンドモードに戻る時は[エスケープ]キーを押してください。他にも[x]キーでカーソルの文字を削除(DELキーと同じ働き) [dd]と続けて入力する事でその行を削除できます。コマンドモードで[:][w][エンター]キーと順番に押す事でファイルを上書きして保存 [:][q][!][エンター]キーと順番に入力する事でファイルを保存せずに終了する事が出来ます。

他にも高度な機能は多々ありますが、最低限の編集であれば[↑][↓][←][→]でカーソル移動 [x]で文字削除 [dd]で行削除 [a][i]で入力モード [ESC]でコマンドモードに戻り [:w]で保存して終了もしくは[:q!]で保存せずに終了 これだけ覚えればなんとかなります。

viを使い玄箱の名前を変更します。

root@KURO-BOX:/mnt/share/etc# vi hostname ←viを使いhostnameというファイルを編集する
KURO-BOX ←変更前
SOSDAN ←変更後

viを使いホストネームの解決を図ります。

root@KURO-BOX:/mnt/share/etc# vi hosts
127.0.0.1 localhost
192.168.0.2 main ←追加
192.168.0.3 sub ←追加
192.168.0.101 SOSDAN ←追加
# The following lines are desirable for IPv6 capable hosts
# (added automatically by netbase upgrade)
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

DNSサーバーの指定

root@KURO-BOX:/mnt/share/etc# vi resolv.conf
search
nameserver 192.168.0.1 ←環境によって変更してください

マシンへのアクセス許可

root@KURO-BOX:/mnt/share/etc# vi hosts.allow
# /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.0/255.255.0.0
ALL : 127.0.0.1
ALL : 192.168.0.2 ←追加
ALL : 192.168.0.3 ←追加
※ちなみに全てのマシンからアクセスできるようにするには
ALL : ALL
この一行を記載すればよい

ネットワークカードの設定を行います。

root@KURO-BOX:/mnt/share/etc#
root@KURO-BOX:/mnt/share/etc# cd /mnt/share/etc/network ←設定ファイルがある場所に移動する
root@KURO-BOX:/mnt/share/etc/network#
root@KURO-BOX:/mnt/share/etc/network# vi interfaces  ←設定ファイルを編集
# 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.101 ←玄箱のIPアドレスを指定
network 192.168.0.0 ←環境によって変更してください
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1 ←環境によって変更してください
iface lo inet loopbackauto eth0 lo

お疲れ様でした、環境設定はこれで完了です。設定したファイルを再度圧縮し玄箱から取り出します。

root@KURO-BOX:/mnt/share/etc#
root@KURO-BOX:/mnt/share/etc# cd /mnt/share ←/mnt/shareに移動します
root@KURO-BOX:/mnt/share#
root@KURO-BOX:/mnt/share# tar cvzf /tmpimage.tgz . ←ファイルを圧縮します
./ ←ここからこの「このファイルを圧縮しているよ」というメッセージが延々と出ます
./bin/
./bin/bash
./bin/rbash
./bin/sh
~(中略)~
./var/spool/cron/atspool/
./var/tmp/
./var/tmp/vi.recover/
./var/opt/
./var/mail/
root@KURO-BOX:/mnt/share# ←完了してプロンプトに戻ってきた
root@KURO-BOX:/mnt/share#
root@KURO-BOX:/mnt/share# cd / ←「/」に移動する
root@KURO-BOX:/#
root@KURO-BOX:/# mv tmpimage.tgz /mnt/share ←「/」にあるtmpimage.tgzを「/mnt/share」に移動する
root@KURO-BOX:/#

エクスプローラーから玄箱の共有フォルダに接続します。

先ほど作成した「tmpimage.tgz」が存在することを確認したら、このファイルを手元に保存します。保存が終わったらshareの中身を全て削除しておきます。

Telnet端末に戻り、玄箱をEMモードに落とします。

root@KURO-BOX:/#
root@KURO-BOX:/# echo -n NGNG > /dev/fl3 ←EMモードに落とす秘密のおまじない
root@KURO-BOX:/#
root@KURO-BOX:/# reboot ←玄箱を再起動させます
Broadcast message from root (pts/0) Sat Jul 1 17:50:07 2006…The system is going down for reboot NOW !!

3-3.EMモードに落とした玄箱での作業

ファームウェアアップデーターを起動し、EMモードに落ちてる玄箱のIPアドレスを確認します。

Telnetで確認したIPに接続します。

Kroutoshikou KURO-BOX (IETSUNA)
kernel 2.4.17-kuro-box on ppc
KURO-BOX-EM login: root ←root
Password: ←パスワード入力(kuro or kuroadmin)
#

パーテーションの削除、及び再生成を行います。

#
# cd / ←/に移動します。
# /sbin/mfdisk -e /dev/hda ←パーテーションを削除します。
delete partition 1
delete partition 2
delete partition 3
create partitions…
deleate all partitions.
The partition table has been altered!
Syncing disks.
# ←作業が完了してプロンプトに戻ってきた
# sh /sbin/mkfilesystem.sh ←パーテーションを削除します。
/dev/hda1 can’t mount
/dev/hda3 can’t mount
creating partitions…
~(すっげえ長いので略)~
This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
/dev/hda3 formart completed.
# ←作業が完了してプロンプトに戻ってきた

この状態のまま玄箱にFTPで接続します。

/mnt2/shareに先ほど作成し取り出しておいた「tmpimage.tgz」を転送します。

 ※注・画像を作成した環境ではIPアドレスの設定を「192.168.0.64」で行いました。

Telnetに戻ります。FTP経由で転送したイメージファイルをシステムに展開します。

#
# cd /mnt ←/mntに移動します。
# tar zxvf /mnt2/share/tmpimage.tgz ←このディレクトリに先ほどFTPで転送したファイルを展開します
~(中略)~
./var/tmp/vi.recover/
./var/opt/
./var/mail/
# ←作業が完了してプロンプトに戻ってきた

EMモードから通常モードに変更し再起動します。

#
# echo -n ‘OKOK’ > /dev/fl3 ←EMモードから通常モードに戻します。
#
# reboot ←再起動させます。

3-4.Debian化されているかの確認

Telnetで3-2で設定したIPアドレスに接続してみます。

Debian GNU/Linux 3.1 SOSDAN
SOSDAN login:

無事にDebian化が完了しているのが確認されました。おめでとうございます!

4.Debianの初期設定

4-1.作業ユーザーの登録

初期作業用ユーザーでログインします。

Debian GNU/Linux 3.1 sosdan
SOSDAN login: tmp-kun ←tmp-kunと入力
Password: ←tmp-kunと入力
Linux SOSDAN 2.6.16.9-kurobox #4 Sat Apr 22 11:33:45 JST 2006 ppc GNU/Linux
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
tmp-kun@SOSDAN:~$ ←ログインできました。

まず、rootのパスワードを変更します。


tmp-kun@SOSDAN:~$ su ←suコマンドを使いスーパーユーザーになります。
Password: ←初期状態のパスワードである「root」を入力してください。
SOSDAN:/home/tmp-kun# ←プロンプトが「#」になりスーパーユーザーになりました。
SOSDAN:/home/tmp-kun#
SOSDAN:/home/tmp-kun# passwd ←パスワードを変更します。
Enter new UNIX password: ←新しいパスワードを入力してください。
Retype new UNIX password: ←確認のためもう一度同じパスワードを入力してください。
passwd: password updated successfully ←パスワードが変更されました。
SOSDAN:/home/tmp-kun#

次に、通常作業に使うユーザーを作成します。


SOSDAN:/home/tmp-kun#
SOSDAN:/home/tmp-kun# adduser haruhi 「adduser ユーザー名」で新しいユーザーを追加します。 
Adding user `haruhi’…
Adding new group `haruhi’ (1001).
Adding new user `haruhi’ (1001) with group `haruhi’.
Creating home directory `/home/haruhi’.
Copying files from `/etc/skel’
Enter new UNIX password: ←パスワードを要求されるので入力
Retype new UNIX password: ←確認のためもう一度
passwd: password updated successfully
Changing the user information for haruhi
Enter the new value, or press ENTER for the default
Full Name []: Suzumiya ←フルネームを入力、後から変更可
Room Number []: ←空白のままエンター
Work Phone []: 空白のままエンター
Home Phone []: 空白のままエンター
Other []: 空白のままエンター
Is the information correct? [y/N] y ←ユーザーを作成しますか?なので「Y」を押してエンター
SOSDAN:/home/tmp-kun# ←ユーザーが作成され戻ってきました

ログアウトします。

SOSDAN:/home/tmp-kun#
SOSDAN:/home/tmp-kun# exit ←スーパーユーザーから一般ユーザーに戻ります。
exit
tmp-kun@SOSDAN:~$  ←戻りました。
tmp-kun@SOSDAN:~$ exit  ←ログアウトします。

4-2.初期作業用ユーザーの削除

先ほど登録したユーザーでログインします。

Debian GNU/Linux 3.1 sosdan
SOSDAN login: haruhi ←先ほど登録したユーザー名
Password: ←先ほどのパスワード
Linux SOSDAN 2.6.16.9-kurobox #4 Sat Apr 22 11:33:45 JST 2006 ppc GNU/Linux
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
haruhi@SOSDAN:~$ ←ログインできました。
haruhi@SOSDAN:~$ su ←スーパーユーザーになります。
Password: ←パスワードを入力。
SOSDAN:/home/haruhi#
SOSDAN:/home/haruhi# deluser tmp-kun ←「deluser ユーザー名」で削除。問い合わせ無いので注意
Removing user `tmp-kun’…
done. ←削除完了
SOSDAN:/home/haruhi#
SOSDAN:/home/haruhi# cd /home ←/homeディレクトリに移動します。
SOSDAN:/home#
SOSDAN:/home# ls ←ディレクトリの中身を表示します。
haruhi tmp-kun ←tmp-kunの残骸が見えます。
SOSDAN:/home#
SOSDAN:/home# rm -R tmp-kun ←「rm -R 削除するもの」で削除します。
rm: descend into directory `tmp-kun’? Y ←削除しますか?なので「Y」を入力しエンター
rm: remove regular file `tmp-kun/.bashrc’? Y ←同上
rm: remove regular file `tmp-kun/.bash_profile’? Y ←同上
rm: remove regular file `tmp-kun/.bash_history’? Y ←同上
rm: remove directory `tmp-kun’? Y ←同上
SOSDAN:/home# ←消えました。
SOSDAN:/home# ls -a ←もう一度ディレクトリを確認してみます。
. .. haruhi ←無事に削除されています。
SOSDAN:/home#

初期作業はここで終了です。おつかれさまでした。

5.いろいろ

ここから先は細かい説明は省きます。

5-1.必須作業

便利なツールであるaptをアップデートする。

※指定したパッケージを自動的にDL、インストールしてくれるソフト

SOSDAN:/# apt-get update ←入力。
Get:1 ftp://ftp.dti.ad.jp stable/main Packages [3276kB]
Get:2 http://security.debian.org stable/updates/main Packages [329kB]
Get:3 http://security.debian.org stable/updates/main Release [113B]
~(中略)~
Hit ftp://ftp.dti.ad.jp stable/non-US/contrib Release
Fetched 4953kB in 12s (411kB/s)
Reading Package Lists… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

もっと便利なツールであるaptitudeをアップデート・及びアップグレードする。

※指定したパッケージを自動的にDL、インストールしてくれるソフト  ちょっとナウい

SOSDAN:/# aptitude update ←入力。
Reading Package Lists… Done
Building Dependency Tree
Initializing package states… Done
~(中略)~
Building Dependency Tree
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。
SOSDAN:/# aptitude upgrade ←入力。
Reading Package Lists… Done
Building Dependency Tree
Initializing package states… Done
Reading task descriptions… Done
The following packages will be upgraded:
libc6 libgnutls11 libsasl2 libtasn1-2 perl perl-base perl-modules tar
The following packages are RECOMMENDED but will NOT be installed:
libsasl2-modules perl-doc
8 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 11.8MB of archives. After unpacking 65.5kB will be used.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Get:1 ftp://ftp.dti.ad.jp stable/main perl-modules 5.8.4-8sarge4 [2178kB]
Get:2 http://security.debian.org stable/updates/main libtasn1-2 0.2.10-3sarge1 [43.0kB]
Get:3 http://security.debian.org stable/updates/main libgnutls11 1.0.16-13.2 [299kB]
~(中略)~
Building Dependency Tree
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

これまた便利なツールなのでwgetを導入する。

※指定したURLからファイルをDLしてくるソフト サイトまるごとぶっこぬきもできる

SOSDAN:/# aptitude install wget ←入力。
Reading Package Lists… Done
Building Dependency Tree
Initializing package states… Done
Reading task descriptions… Done
The following NEW packages will be automatically installed:
libssl0.9.7
The following NEW packages will be installed:
libssl0.9.7 wget
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 1213kB of archives. After unpacking 3285kB will be used.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Writing extended state information… Done
Get:1 ftp://ftp.dti.ad.jp stable/main wget 1.9.1-12 [434kB]
Get:2 http://security.debian.org stable/updates/main libssl0.9.7 0.9.7e-3sarge1
[779kB]
Fetched 1213kB in 5s (220kB/s)
Preconfiguring packages …
Selecting previously deselected package libssl0.9.7.
(Reading database … 8815 files and directories currently installed.)
Unpacking libssl0.9.7 (from …/libssl0.9.7_0.9.7e-3sarge1_powerpc.deb) …
Selecting previously deselected package wget.
Unpacking wget (from …/wget_1.9.1-12_powerpc.deb) …
Setting up libssl0.9.7 (0.9.7e-3sarge1) …
Setting up wget (1.9.1-12) …Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

いらない子なのでeximを消す

※SMTPデーモン。今回の用途では必要ないし各地のページでも鬼の首とったかのように消されてたので。

SOSDAN:/# aptitude purge exim ←入力。
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
The following packages will be automatically REMOVED:
at mailx
The following packages will be REMOVED:
at exim mailx
0 packages upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 2015kB will be freed.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Writing extended state information… Done
(Reading database … 8864 files and directories currently installed.)
Removing at …
Stopping deferred execution scheduler: atd.
Removing mailx …
(Reading database … 8823 files and directories currently installed.)
Removing exim …
Stopping MTA: No /usr/lib/exim/exim3 found running; none killed.
exim.
Purging configuration files for exim …
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

5-2.WEBサーバーを導入する。(Apache2)

SOSDAN:/# aptitude install apache2 ←入力。
Reading Package Lists… Done
~(中略)~
Need to get 2612kB of archives. After unpacking 8806kB will be used.
Do you want to continue? [Y/n/?]Y ←Yと入力。
Writing extended state information… Done
~(中略)~

Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

webブラウザを起動して、アドレスに「http://192.168.0.101」(注:3-2の設定による)と入力してエンターをおしてみる。


※注・画像を作成した環境ではIPアドレスの設定を「192.168.0.103」で行いました。

導入完了。

5-3.FTPサーバーを導入する。(ProFtpd)

SOSDAN:/# aptitude install proftpd ←入力。
Reading Package Lists… Done
~(中略)~
Need to get 650kB of archives. After unpacking 1753kB will be used.
Do you want to continue? [Y/n/?] Y←Yと入力。
Writing extended state information… Done
~(後略)~

なんか出た!

————————— ProFTPd configuration —————————
ProFTPd can be run either as a service from inetd, or as a standalone
server. Eeach choice has its own benefits. If you have only a few ftp
connections per day, it may not be worth the resources to keep proftpd
running at all times.

On the other hand, if your ftp site is visited frequently, inetd is not
a good choice, because each time a connection is opened, a new process
is spawned.

Run proftpd from inetd or standalone?

inetd
standalone

<Ok>

—————————————————————————–

ProFTPDをinetd経由でアクセスがあるたびに起動させるか、standaloneとして常時起動させるかの質問です。これまではここで「standalone」を選択していましたが ダイナミックDNSのDNS履き替えの問題から今回はあえてinetdで動作させることにします。

————————— ProFTPd configuration —————————

ProFTPd can be run either as a service from inetd, or as a standalone
server. Eeach choice has its own benefits. If you have only a few ftp
connections per day, it may not be worth the resources to keep proftpd
running at all times.

On the other hand, if your ftp site is visited frequently, inetd is not
a good choice, because each time a connection is opened, a new process
is spawned.

Run proftpd from inetd or standalone?

inetd
standalone

<Ok>

—————————————————————————–

inetdを選択肢して<OK> 自動的に導入と初期設定が行われて

~(前略)~
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

FTPクライアントで接続を試してみる。

※注・画像を作成した環境ではIPアドレスの設定を「192.168.0.103」で行いました。

導入完了。

5-4.ファイルサーバーを導入する。(SAMBA)

SOSDAN:/# aptitude install samba ←入力。
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
The following NEW packages will be automatically installed:
libcupsys2-gnutls10 libkrb53 samba-common
The following NEW packages will be installed:
libcupsys2-gnutls10 libkrb53 samba samba-common
0 packages upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 5354kB of archives. After unpacking 13.0MB will be used.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Writing extended state information… Done
~(中略)~

なんか出た!

——————————– Samba Server ——————————–

This controls what workgroup your server will appear to be in when
queried by clients. Note that this parameter also controls the Domain
name used with the security=domain setting.

Workgroup/Domain Name?

workgroup                                           

<Ok>

—————————————————————————–

ワークグループを聞かれているので2-4の計画通り「workgroup」と入力。

他にもいろいろ質問されるけどここらへんはデフォルトのままで。

——————————– Samba Server ——————————–

Recent Windows clients communicate with SMB servers using encrypted
passwords. If you want to use clear text passwords you will need to
change a parameter in your Windows registry. It is recommended that you
use encrypted passwords. If you do, make sure you have a valid
/etc/samba/smbpasswd file and that you set passwords in there for each
user using the smbpasswd command.

Use password encryption?

<Yes>                <No>

—————————————————————————–

——————————– Samba Server ——————————–

If your computer gets IP address information from a DHCP server on the
network, the DHCP server may also provide information about WINS servers
(“NetBIOS name servers”) present on the network. This requires a change
to your smb.conf file so that DHCP-provided WINS settings will
automatically be read from /etc/samba/dhcp.conf.

You must have the dhcp3-client package installed to take advantage of
this feature.

Modify smb.conf to use WINS settings from DHCP?

<Yes>                <No>

—————————————————————————–

——————————– Samba Server ——————————–

he Samba daemon smbd can run as a normal daemon or from inetd. Running
as a daemon is the recommended approach.

How do you want to run Samba?

daemons
inetd

<OK>

—————————————————————————–

——————————– Samba Server ——————————–

To be compatible with the defaults in most versions of Windows, Samba
must be configured to use encrypted passwords. This requires user
passwords to be stored in a file separate from /etc/passwd. This file
can be created automatically, but the passwords must be added manually
(by you or the user) by running smbpasswd, and you must arrange to keep
it up-to-date in the future. If you do not create it, you will have to
reconfigure samba (and probably your client machines) to use plaintext
passwords. See /usr/share/doc/samba-doc/htmldocs/ENCRYPTION.html from
the samba-doc package for more details.

Create samba password database, /var/lib/samba/passdb.tdb?


<Yes>                    <No>

—————————————————————————–

~(前略)~
Starting Samba daemons: nmbd smbd.
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

便利なのでWEBブラウザ上からSAMBAの設定をできるツール「SWAT」も導入する。

SOSDAN:/# aptitude install swat ←入力。
Reading Package Lists… Done
~(中略)~
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 16.2MB of archives. After unpacking 28.6MB will be used.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Writing extended state information… 59%
~(後略)~

Your smb.conf will be re-written! とか警告が出るがどうせ<OK>ボタンしか存在しないのでどーんとこいだバーロwwwww

~(前略)~
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/#  ←作業が完了してプロンプトに戻ってきた。

早速SWAT経由でSAMBAの最低限の設定を行う。(これは可及的速やかに行いたい)

WEBブラウザを立ち上げて「http://玄箱のIPアドレス:901」 にアクセスする。

…表示されない。これはSWATを使う設定がなされていないからなのでSwatを使う設定を行う。

SOSDAN:/#
SOSDAN:/# vi /etc/inetd.conf ←入力する

~(前略)~
#<off># swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat ←変更前
swat stream tcp nowait.400 root /usr/sbin/tcpd /usr/sbin/swat ←変更後 「#<off>#」を取る

inetdをリスタートする

SOSDAN:/#
SOSDAN:/# /etc/init.d/inetd restart ←入力する
Restarting internet superserver: inetd.
SOSDAN:/#

WEBブラウザから「http://玄箱のIPアドレス:901」 にアクセスする。

ユーザー名:root パスワード:rootのパスワード を入力する。

無事にSWATの画面が表示された。取り急ぎ最低限の設定を行う。

Base Options
dos charset : CP850→MS932
unix charset : UTF-8→CP932
netbios names : お好みの名前で。
server string : %h server (Samba %v)→SAMBA %h

Security Options
create mask : 0744→0777
directory mask : 0755→0777

Browse Options
os level : 20→2
preferred master : AUTO→NO

設定は以上。設定内容を保存する。

一番上のCommit Changesボタンを押します。

SAMBAを再起動します。

ネットワークコンピューターを確認、ネットワーク上に玄箱が見えるようになりました。(まだ接続はできないはずです)

導入完了。

5-5.EXIM4あぼーん

闇の胎動を感じる!という事でどうもEXIM4が居る気がする…念のため畑に塩をまいておく。

SOSDAN:/# aptitude purge exim4-base exim-config ←入力。
Reading Package Lists… Done
Building Dependency Tree
(中略)
Reading task descriptions… Done
SOSDAN:/# Reading extended state information
bash: Reading: command not found
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

6.WebMinの導入及び設定

6-1.導入

2007.06.17追記

下記に記載しているaptitudeの方法が使えませんでした(エラーが出る)ので、窓の便利帳さんを参考にさせて頂いて一般的な導入方法を用いてWebMinの導入を行いました。

sourceforgeからDebian用のWebMinをダウンロードする。
SOSDAN:/# wget http://nchc.dl.sourceforge.net/sourceforge/webadmin/webmin_1.320_all.deb ←入力。
ダウンロードしたファイルをインストールする。
SOSDAN:/#dpkg -i webmin_1.320_all.deb ←入力。
ファイルが不足しているエラーが出るので不足しているパッケージを追加で導入する。
SOSDAN:/# aptitude install openssl libauthen-pam-perl libio-pty-perl libmd5-perl  ←入力。
※libnet-ssleay-perl の代わりにopensslが不足してたみたいなんで
# aptitude install libnet-ssleay-perl libauthen-pam-perl libio-pty-perl libmd5-perl ではなく
# aptitude install openssl libauthen-pam-perl libio-pty-perl libmd5-perl  とした。

これでWebMinが導入されました。念の為旧来の手順に関しても下記に残しておきます。

━追記ここまで

お世話になりますaptitude

SOSDAN:/# aptitude install webmin ←入力。
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
(中略)
Need to get 5276kB of archives. After unpacking 24.2MB will be used.
Do you want to continue? [Y/n/?]  ←Yを入力。
Writing extended state information… Done
Get:1 ftp://ftp.dti.ad.jp stable/main gawk 1:3.1.4-2 [1011kB]
(中略)

ん?

———————— Configuring Exim v4 (exim4-config) ————————

The Debian exim4 packages can either use a single monolithic file
(/etc/exim4/exim4.conf.template) or about 40 small files in
/etc/exim4/conf.d/ to generate the final configuration.

The former is better suited for large modifications and is generally
more stable, whereas the latter offers a comfortable way to make smaller
modifications but is more fragile and might break if modified
extensively.

If you are unsure then you should not use split configuration.

Split configuration into small files?


<Yes>           <No>

—————————————————————————–

き、きさまー!!!!!

Split configuration into small files? → No
General type of mail configuration: → no configuration at this time
Really leave the mail system unconfigured? →  Yes
Root and postmaster mail recipient: → 空白のままエンター

後で殺すからな>EXIM4

中略

Configuring webmin

Which hostname should be used by the web server?

SOSDAN___________________________________________

<Ok>

中略

(前略)
Setting up webmin-core (1.180-3) …
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

Webmin-coreの導入 なんか導入されてるような気もするが気にしない

SOSDAN:/# aptitude install webmin-core ←入力。
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information… Done
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

Webmin-sambaの導入

SOSDAN:/etc/webmin# aptitude install webmin-samba ←入力。
Reading Package Lists… Done
Building Dependency Tree
Reading extended state information
(中略)
webmin-inetd webmin-samba
0 packages upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 225kB of archives. After unpacking 1380kB will be used.
Do you want to continue? [Y/n/?] Y ←Yと入力。
Writing extended state information… Done
Get:1 ftp://ftp.dti.ad.jp stable/main webmin-inetd 1.180-4 [48.6kB]
Get:2 ftp://ftp.dti.ad.jp stable/main webmin-samba 1.180-3 [177kB]
(中略)
Reading extended state information
Initializing package states… Done
Reading task descriptions… Done
SOSDAN:/etc/webmin# ←作業が完了してプロンプトに戻ってきた。

導入完りょ…の前にもっかい死んどけEXIM4

SOSDAN:/# aptitude purge exim4-base exim-config ←入力。
Reading Package Lists… Done
Building Dependency Tree
(中略)
Reading task descriptions… Done
SOSDAN:/# Reading extended state information
bash: Reading: command not found
SOSDAN:/# ←作業が完了してプロンプトに戻ってきた。

6-2.WebMinのアクセス許可を設定をする

2007.06.17追記

新しいバージョンのWebMinであればこの手順は必要ないかもしれません、6-2の手順を行わなくても認証が来てroot/rootのパスワードを入力することで設定画面に行くことが出来ました。また新しいバージョンのWebMinは画面が著しく変更されていますが(綺麗になった)、基本的な設定内容に関しては変らないのでそのまま記載しておきます。状況に応じて必要な部分を設定してください。

━追記ここまで

WEBブラウザを立ち上げて「https://玄箱のIPアドレス:10000」 にアクセスする。

ナンカキター!

コナカッター…。

どうやらアクセス拒否されている気配、それもそのはずデフォルトでWebMinはローカルからのアクセスONLYになっているのでリモート接続は拒否される。そこでアクセス拒否の設定を書き換えます。

SOSDAN:/#
SOSDAN:/# cd /etc/webmin ←入力。
SOSDAN:/etc/webmin#
SOSDAN:/etc/webmin# vi miniserv.conf ←入力。
allow=127.0.0.1 ←変更前
allow=127.0.0.1 192.168.0.2  ←変更後

これで192.168.0.2のマシンから接続ができるようになりました。

設定を反映させるべくWebminを再起動させます。

SOSDAN:/etc/webmin#
SOSDAN:/etc/webmin# /etc/init.d/webmin restart ←入力。
Restarting webmin: webmin.
SOSDAN:/etc/webmin#

あらためてWEBブラウザを立ち上げて「https://玄箱のIPアドレス:10000」 にアクセスする。

キター!

ユーザーネームはroot
パスワードは最初に設定したrootのパスワードでLogin

6-3.WebMinを日本語化する

日本語になりました!

6-4.WebMinをアップグレードする

2009.01.11追記

下記に記載しているアップグレードの方法がエラーが出るので手動でアップグレードを行いました。

# wget http://nchc.dl.sourceforge.net/sourceforge/webadmin/webmin_1.4 41_all.deb

# dpkg i webmin_1.441_all.deb

これでWebMinが最新版(この段階では1.441)に置き換わる…はず。

━追記ここまで

ここから先は日本語の設定なのでスクリーンショットは省略します。

まずWebminを最新版にアップグレードします。

[Webmin]タブ → [Webmin設定]ボタン → [Webmin のアップグレード]ボタン

Webmin のアップグレード→www.webmin.com からの最新バージョン→[Webminのアップグレード]ボタンを押す

自動的にwebmin鯖との更新が始まり自動的にアップデートが始まる 時間がかかるのでしばらく待つこと

終了したら一番下をクリックして元の画面に戻る

7.その他

7-1.おわりのはじまり

これでひととおりの初期設定は終わりです、後はApacheやSAMBA、ProFTPDといった部分での専門資料を読まれたほうが説得力はあると思いますが、この後は自分の作業メモをいくつか残しておきます。

7-2.やったことつれづれ

●ユーザーアカウントを作りたい

webmin ⇒ システム ⇒ ユーザおよびグループ ここでユーザーとグループを生成できる

●SAMBAをいじる

なにはともあれファイル共有を実現したい(=素の玄箱とおなじ機能までは最低限回復させたい)という事でSAMBAの設定。基本設定以外は残りは全てWebMin経由で行った。
>webmin ⇒ サーバ ⇒Samba Windowsファイル共有
グローバル設定 ⇒ ファイル共有デフォルト ⇒ セキュリティとアクセス制御 書き込み可能にしますか?…はい
これをしておけば今後新しい共有フォルダつくった場合にもデフォルトで読み書きできるので非常に便利なので是非。

Sambaユーザ→Samba ユーザとパスワードを編集
SAMBAにアクセス用にするアカウントをクリック → アカウントを有効にする
これを忘れてて以前ずっとひっかかってた事があります、カッチョワリー

新しく共有を作りたい
「新規のファイル共有を作成」から。作る場合は/mnt/share/****** という感じにつくると良い(/mnt/shareの下が空き容量めいっぱいあるはずなので)

共有したフォルダに書き込みができないとかって場合のヒント
自宅マシンにてのある作業ログ

Debian GNU/Linux 3.1 lancer
LANCER login: tabi  ←ログイン
Password: ←パスワード
Last login: Sat Jul 1 19:05:03 2006 from 192.168.0.2 on pts/0
Linux LANCER 2.6.16.9-kurobox #4 Sat Apr 22 11:33:45 JST 2006 ppc GNU/Linux
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
tabi@LANCER:~$ su ←スーパーユーザーになる
Password: ←パスワード
LANCER:/home/tabi# cd /mnt/share  ←/mnt/share に移動
LANCER:/mnt/share# ls ←/mnt/shareの中身を確認
photo tmpimage.tgz
LANCER:/mnt/share# chmod -R 777 photo ←/mnt/shareの中にあるphoto というフォルダ以下をパーミッション変更 chmod=変更 -R=サブディレクトリまで適応 777=フルアクセス photoO=対象フォルダ
LANCER:/mnt/share# ←変更完了

●あるproftpd.confのヒント

2009.01.11追記

# vi /etc/proftpd/proftpd.conf

もしくはWebMin経由で。

━追記ここまで
#
# /etc/proftpd.conf — This is a basic ProFTPD configuration file.
# To really apply changes reload proftpd after modifications.
#
ServerName “********” ←任意の名前
ServerType inetd ←設定による
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200
DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions “-l”
DenyFilter *.*/##### ここから追加した内容 ##### ←オリジナル
ServerIdent on “Welcome” #ログイン時メッセージ ←変更完了
DefaultRoot ~ !root !**** ←ホームディレクトリより上位を表示させない。また!****の****にグループ名を記載したらそこのユーザーは例外となる=上位が見える 必須設定かな
AllowStoreRestart on #←アップロードのレジュームをオン ←コメントのとおり
AllowRetrieveRestart on #←ダウンロードのレジュームをオン  ←コメントのとおり
IdentLookups off #リモートユーザー名を確認しない ←コメントのとおり
UseReverseDNS off #DNSの逆引きは行わない。 ←コメントのとおり
DirFakeUser on ftp #表示させるダミーのFTPユーザー名 ←コメントのとおり
DirFakeGroup on wheel #表示させるダミーのFTPグループ名 ←コメントのとおり
##### ここまで追加した内容 #####

##### さらに追加した内容 ##### ←ここからは普段は必要ない
MasqueradeAddress ****.****.*** #PASVモード用設定だよーん ←****の部分にはダイナミックDNSの設定(sosdan.homeip.netなど)
PassivePorts 50030 50050 # PASVモードで使用可能なポート番号範囲 ←ルーターにもちゃんと穴をあけておくこと
##### ここまで追加した内容 ##### ←ここまで

# Uncomment this if you are using NIS or LDAP to retrieve passwords:

#PersistentPasswd off

# Uncomment this if you would use TLS module:
#TLSEngine on

# Uncomment this if you would use quota module:
#Quotas on

# Uncomment this if you would use ratio module:
#Ratios on

# Port 21 is the standard FTP port.
Port 50021 ←標準では21だが50021ポートを使いたかったのでこう記載した

# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 30

# Set the user and group that the server normally runs at.
User nobody
Group nogroup

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022
# Normally, we want files to be overwriteable.
AllowOverwrite on

# Delay engine reduces impact of the so-called Timing Attack described in
# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02
# It is on by default.
#DelayEngine off

# A basic anonymous configuration, no upload directories.

# <Anonymous ~ftp>
# User ftp
# Group nogroup
# # We want clients to be able to login with “anonymous” as well as “ftp”
# UserAlias anonymous ftp
# # Cosmetic changes, all files belongs to ftp user
# DirFakeUser on ftp
# DirFakeGroup on ftp
#
# RequireValidShell off
#
# # Limit the maximum number of anonymous logins
# MaxClients 10
#
# # We want ‘welcome.msg’ displayed at login, and ‘.message’ displayed
# # in each newly chdired directory.
# DisplayLogin welcome.msg
# DisplayFirstChdir .message
#
# # Limit WRITE everywhere in the anonymous chroot
# <Directory *>
# <Limit WRITE>
# DenyAll
# </Limit>
# </Directory>
#
# # Uncomment this if you’re brave.
# # <Directory incoming>
# # # Umask 022 is a good standard umask to prevent new files and dirs
# # # (second parm) from being group and world writable.
# # Umask 022 022
# # <Limit READ WRITE>
# # DenyAll
# # </Limit>
# # <Limit STOR>
# # AllowAll
# # </Limit>
# # </Directory>
#
# </Anonymous>

んでルーターのポートマッピングを50021.50030-50050⇒192.168.0.xxxにして外部からアクセス…できない。

vi /etc/services でftpのポートを修正…こない。

最終的には

vi /mnt/share/etc/hosts.allow で 「ALL : ALL」と追加する事で外部からアクセスができた。

……………らしいぞ?

●Apache2に関するヒント

デフォルトだと ユーザーのhomeディレクトリ (例:/home/mikuru/)にファイルをおいてもApacheは読んでくれない。そこに「public_html」というフォルダを作ればそこが公開フォルダになる …わかりにくい表現かな?
http://sekaiwoooinimoriagerusuzumiyaharuhinodan.com/~mikuru/index.html  =  /home/mikuru/public_html/index.html
※みれない場合はパーミッションの設定を確認する。

/etc/apache2/apache2.confに「ServerTokens Prod」を追加していたほうがよい(OSとApacheのバージョンを表示しない)

vi /etc/apache2/ports.conf Apahce2が使うポート番号の変更ができます
vi /etc/services でポート番号の修正もお忘れなく

トップページをいじりたい人へのヒント

vi /etc/apache2/sites-available/default

DocumentRoot /var/www/

DocumentRoot /mnt/share/wwwroot/ ※事前に/mnt/shareにwwwrootとディレクトリをほっておく

いろいろ設定いじったら忘れずにApache2再起動

# /etc/init.d/apache2 restart

●サーバーに関する考察

─mnt
└─share
├─ftproot ←FTPのトップ
│   ├─nomaneko
│   ├─nomatako
│   ├─supuu
│   ├─tamagokakegohan
│   └─upload
├─photoroot ←写真サーバーのトップ
│   ├─051021
│   ├─051125
│   └─060101
└─wwwroot ←WWW鯖のトップ
└─mikuru

/mnt/share以下をこういったフォルダ構成にしたとする。

共有ftpだけにアクセスできるユーザー…
全てのFTPユーザーのホームディレクトリ: /mnt/share/ftproot

写真サーバーにアクセスできるユーザー…
05/10/21撮影会に参加したユーザーのホームディレクトリ:/mnt/share/photo/051021
05/11/25撮影会に参加したユーザーのホームディレクトリ:/mnt/share/photo/051125
06/01/01撮影会に参加したユーザーのホームディレクトリ:/mnt/share/photo/060101

こんなかんじで設定していれば設定も楽、ユーザー作成時に設定すればいいと思う。
(proftpd.confをしっかり確認してDefaultRoot ~ !root の設定がちゃんとなされているか確認すること!)

2009.01.11追記

Apache2で日本語が文字化けする

# vi /etc/apache2/apache2.conf

下のほうにある

#AddDefaultCharset ISO-8859-1

これを

AddDefaultCharset shift_jis もしくは

AddDefaultCharset EUC-JP

これで。

━追記ここまで
2007.06.17追記

●玄箱のコンデンサに関して

3年間連続稼動させていた玄箱を分解したところ、電源部分のコンデンサが膨らんでいました。

電源ユニットは「加賀コンポーネント 直流電源 SPEC7251」が代用品として使えるそうです。千石電商で2000円ほど。

━追記ここまで