2007/10/23(火)wu-ftpd のインストール
2017/10/11 9:06
のようなものが出るようにして欲しいという要望が・・・
正直、途方に暮れたんですが、どうやら、
IE6 にて anonymous FTP でログインを試みる → 失敗したらこのプロンプトが出る。
という仕組みらしい。
ところが FreeBSD 標準の ftpd だと、どうも IE6 が想定していないエラーが返るので、
このプロンプトが出ないらしい。。
FrreBSD 標準の ftpd では、
「anonymous ログインなんでできません」というエラーを返すので、ftpd の挙動としては全く正しいんだが、、、
IE6 が想定している ftpd の挙動は、anonymous ログインのリトライを要求するというもの。
やはり造りはちょっとアマチュア入ってるね、、 < IE6
解決には wu-ftpd が現実的。
ということで、 wu-ftpd をFreeBSD のパッケージからインストールして設定するが、、
ファイル一覧が表示できない
という現象に悩むこと数時間。
どうもパッケージのコンパイル済みバイナリファイルが、現状にあっていない模様・・・
proFTPD に変えても同じ結果。
ということで、wu-ftpd をソースコードからコンパイルです。
wu-ftpd は、ここで入手できます → http://www.wu-ftpd.org/
最新バージョンは 2.6.2 ですが、これが 2001年だったり、、セキュリティfix はパッチファイルという有様。
開発が停止しとる、、、
まずは、入手した wu-ftpd-2.6.2.tar.gz を gzip などで展開。同時にパッチも入手。
そして、作成されたディレクトリ に移動し、
./configure --prefix=/usr/local --enable-ls
とする。--enable-ls (chroot の場合の /bin/lsではなく、内部のlsコマンドを使う)が重要です。
(参考 http://unix-study.com/unix/sol8/install/wu-ftpd/idnex.html)
早速 make すると、エラーが出ます。
2つのファイルを手動で修正する必要あります。
1) src/proro.h
一番最後の行(295行目)
char *strcasestr(register char *s, register char *find);
↓
/* char *strcasestr(register char *s, register char *find); */
としてコメントアウト
2) src/ftpcmd.y
= {
となっている部分の = を削除。
= と { は、タブ文字で区切られています。
修正後 make を行い、
エラーが無くなったら make install
FreeBSD 6.2 の場合
/usr/local/sbin 配下に in.ftpd、ckconfig、ftprestart、ftpshut、privatepw
/usr/local/bin 配下に ftpcount、ftpwho
/etc 配下に ftpaccess、ftpconversions
はインストールされます。
ftpd は /usr/local/sbin/in.ftpd がその本体です。
あとはこの in.ftpd を inetd から in.ftpd -a -l として起動できるように設定して、インストール完了。