No.10 FTPサーバーを立ち上げよう!
2001,6/24完成
2001,8/04 追加
2003,1/3 追加

1.FTPサーバーで何するの?
FTPサーバーでやれること、というのも色々あるようですが、私がFTPサーバーを入れる
目的はただ一つ!「出先でホームページの更新をするため!」これだけです。 (^_^;)
とりあえず外部に公表したり、ホームページ以外のファイルのやり取りをするつもりもありませんので
お手軽にFTPサーバーを立ち上げる事をモットーにしたいと思います。

2.FTPサーバーを選ぼう!
ということでFTPサーバーを探し回りました。
Vecter
ここにあるのですが、まずつまづいたのはFTPD=FTPデーモン(Daemon)という言い方。
FTPクライアントはまだわかる。しかしFTPデーモンとは何者???
「あんたはデビルマンかいぃぃ〜〜」と突っ込みを入れたくなるのは私だけではないでしょう。 (^_^;)
と、腑に落ちないでいたらデーモンの説明をしているページがちゃんとありました。 (^_^;)
どうやらFTPデーモン=FTPサーバーと考えていいみたいですね。
なんだかんだでいくつか候補をピックアップしました。

名前 言語 扱い 関連サイト/説明サイト コメント
WAR FTP 英語 フリー War FTP Daemon の実験
War FTP Daemon(Windows)の設定
WAR FTP Daemon v1.66x2
WarFTP v1.7bata チュートリアル
War FTPd Ver1.65 編
フリーのFTPDでは定番らしい。
日本語化するソフトもある。
初期設定が難しそう。
QuickFTP 日本語 フリー Quick FTP Ver1.207 編
自宅でかんたんFTPサーバー
窓の杜 「QuickFTP」v1.202
FAQ
日本語、フリー、簡単設定、と
三拍子そろっていて心引かれる
のですが、機能的な課題がありそうなのと
作者がバージョンアップを行っていない、
のが不安で採用を断念。
TinyFTPD 日本語 フリー Tiny FTP Daemonの掲示板 最初ホームページに行った時にはギョッと
しましたが、マニュアルは親切だし、設定も比較的
簡単そうだし、中身はまじめ。
サポート掲示板も稼動しているし、まずはこれを
使うことにしました。
Serv-U 英語 シェア Serv-Uについて
Serv‐Uと僕
これも有名どころだそうな。
BPFTPServer 英語 シェア BPFTPServer(旧称g6 ftp server)の特徴 どうも高機能らしいがシェアウェアなのと英語
なのが(私にとっては)難。
MatuFtpServer 日本語 シェア(1500円) MatuFtpServer これも簡単そうでよさげなんですがシェアウェアっ
てとこで検討をやめました。
2003,1/3追加
雷電FTPD 日本語 シェア($12.95) FTP Serverを立てよう 2003,1/3追加
最近出てきたシェアウェアFTPD。かーなり高機能
っぽいです。”帯域制限機能”というものに心引か
れます。また、$19.95出せばSSL機能も使えるとか
・・・2001年当時存在していれば使っていただろう
なぁ。

・できりゃーフリーを使いたい
・英語はようわからん (T_T)

となると残された選択肢はQuickFTPTinyFTPD
表の中のリンク以外にも”do that like us(現在リンク切れ 2003,1/3)”も参考にさせていただきながらあーでもない、
こーでもないと選んだ結果、TinyFTPDを使うことに決定しました。
マニュアルの親切さとサポート掲示板が生きている(毎日書きこみがある)というのが決めてでした。
まずはこれでFTPDを立ち上げて何か不都合が出てきたら他のを検討する、と。
(でも、雷電FTPDも魅力だなぁ〜。帯域制限機能が魅力的。今、TinyFTPDでそれほど不満はないものの、
 いつか機会を見て使ってみたい一品です。 2003,1/3 追記)


3.TinyFTPDをインストールしよう
そうと決まればここでTynyFTPDをダウンロードします。
現在(2001,6/24)の最新バージョンであるtftpd52b.exeを実行すると
セットアップが始まりますのでホイ、ホイ、ホイ、と何も考えずにインストールすると
”Program Files\Tinyftpd”のフォルダーが作られ無事インストールが完了しました。
後は、例によってtinyftpdaemon.exeをWindowsのスタートアップに登録しておきます。


4.TinyFTPDのシステム設定
TinyFTPDの設定は本家本元のここをみていただければよいのですが、
私がどういう風に設定したか参考で書いときます。
(この設定で本当に正しいか自信ありませんので、あしからず・・・)
まずは全体のシステム設定を行います。
tinyftpdaemon.exeを立ち上げて”メニューの設定→システム設定”を選択します。


赤字で囲ったように設定してみました。
使うのは一人なんですがFTPクライアントによっては複数にしとかないと安定動作しないものもあるらしく
最大ユーザー数は3人に設定してみました。
あと”嘘のシステム名”というのはユーザーからサーバーは何?って聞かれたときに”UNIX”だよ、
と答える機能で、不法侵入者に対して”Windowsだよ”と答えてなめられないための機能みたいです。
何となく納得 (T_T)。



LOGは取っときましょう。 (^_^)



ログイン時の制限です。
不法侵入を防ぐためにこれくらいの設定にしてみました。



サーバー名と管理者名を適当に決めます。
FTPクライアントでつないだ人に対するメッセージのようです。


その他、別名、FSE、再接続、MN128の項目は特にいじらず。



5.TinyFTPDのユーザー設定
次にアクセスするためのユーザー設定を行います。
tinyftpdaemon.exeを立ち上げて”メニューの設定→ユーザー設定”を選択します。
”anonymous”という設定がデフォルトでありますが”有効”になっていないので無視する事にします。



まず、新規作成を選びます。



ユーザー名とパスワードを決めます。
ユーザー名の横の”有効”をチェックしとかないとログインできないので注意!
ホームディレクトリーはどこでもいいみたいですが、ホームページの更新が目的なので
ホームページのルートを設定します。



上の二つを設定していると上で設定したホームディレクトリーより上のフォルダーが
見えなくなります。これ、セキュリティ上大事ですね。



ここの接続人数とシステムの接続人数の違いがよーわからんのですが、システム設定と同じ3人に設定。
アクセスするのは私なので一番偉い”管理者コマンド”で優先度も”高い”にします。 (^_^)



キャラクターセットはデフォルトのまま。



ファイルの読み書き、フォルダー操作は必要なのでそのまま(禁止せず)。
ブラウザーからアクセスできなくなるようなのでパッシブモードは禁止。
パッシブモードはポートが固定されてて危険いるみたいだし、やっぱり禁止。

ホストと攻撃とはそのまま。



6.ルーターの設定(NATe)
TinyFTPDの設計が終わったので次はルーターの設定です。
まずやんなきゃいけないのはFTPサーバーに外部IPアドレスのポートを割り当てることです。


FTPサーバーはポート20,21を割り当てるのが普通みたいなのでそのまま割り当てます。
右のIPアドレスはサーバーのローカルIPアドレスです。



7.ルーターの設定(フィルター)
No.8のここでルーターのフィルター設定をしているので上で設定したポート20と21は使えなくなっています。
そこでルーターのフィルター設定を再度行う必要が出てきます。

まずこういう設定にしてみました。(失敗)

コムスターズルーターはフィルター設定が最大で8つしかできないため(怒!)、
8番目の設定を一旦なくし、新たにポート20、21をフィルタリングしてみました。
                     ↓(結果)
FTPは使えるようになったんですが、見えないホームページが出てきました。 (T_T)
こりゃダメだ。

仕方がないので今度はこうやってみました。(成功。。。。でも不安

8番目の設定を元に戻して4番目の設定でポート25だけを指定していたものを20-25にしました。
                            ↓結果
これは大成功!
しかし・・・ポート22-24が使いもしないのにフィルターされていないわけで、、、セキュリティ上不安・・・
他のフィルタリングソフトでガードする必要がありますね。
NECさーーん、コムスターズルーターのフィルター設定数増やしてくれーーー! (T_T)


8.さーー、つないでみよう!
では、いよいよFTPクライアントでTinyFTPDにつないでみましょう。
使っているFTPクライアントはホームページビルダーについていたやつです。

1)家庭内LANからの接続(成功!)

ローカルIPアドレス経由でTinyFTPDに接続。
問題なく成功。 (^_^)


2)グローバルIPアドレスでの接続(成功!)

次にサーバーの現時点でのグローバルIPアドレスを直接入力してTinyFTPDに接続。
これも問題なく成功。 (^_^)^2


3)ドメイン名での接続(成功!)

最後に本命ドメイン名を指定してTinyFTPDに接続。
これも問題なく成功。やったーーい!! (^_^)^3


ちなみにつながっているときのFTPクライアントの画面はこんな感じ。
右がサーバー、左がサーバーの同じフォルダーをみているところ。
ちゃんと同じに見えています。 (^_^)




あと、TinyFTPDの画面もこんな感じ。ちゃんとつながっています。


最後に田舎の親父に頼んで外部からFTP接続できるか試してもらいましたがこれも成功!
ということで何とかFTPサーバーの立ち上げに成功しました。
めでたし、めでたし。


9.おまけ(スピードを上げよう)
ということでFTPを使っていたのですが、どうもTinyFTPDは遅いらしい。
(War FTP Daemon と Tiny FTP Daemon )←このサイト閉鎖されていました。 (T_T) 2003,1/3追記
「こりゃいかん!?どーしよう!」
とわたわたしていたらちゃんと対処方法も載ってました。
(Tiny FTP Daemon 再び )←このサイト閉鎖されていました。 (T_T) 2003,1/3追記
おーー、なんとありがたい。
seti@hort221.ab.a.u-tokyo.ac.jp さんありがとう。

ということで、早速試してみました。


システム設定の送信ブロックサイズを10240Byteにして、動作間隔を10msecにしたところ、、、
なーるほど、確かに体感速度が上がっています。
こりゃいいわい、とそのまま使いつづけています。

※ 2001,8/04追加
 と、快適に使っていたのですが、ISDN経由で外部から使っている分には問題ないものの、
 家庭内LAN内でローカルIPアドレスでつないで大量のファイルを送受信しているとFTPクライアントが
 途中で固まってしまう、という現象が起きてしまいました。
 家の中でもISDNの速度でしか使えない、というのはちとばかり情けないものがあります。
 こいつぁー弱った、と試行錯誤をしてみたところ”最大ユーザー数”を増やすと固まらなくなりました。
 真の原因はよくわかっていませんがとりあえずの対処療法ということで。
              ↓
 その後、LANカードを変更したらピタ!っと納まりました。intel製がよいようです。 2003,1/3追記


では、では、

←戻る  進む→
ホームに戻る