FreeBSD7.1RにFTPサーバ(Proftpd)をインストール

Proftpd は FTPサーバであり、他のコンピュータ(クライアント)から接続してファイルの転送を行うことができる。

  • 参考:FTPクライアントの例として、Windowsパソコンでは、ffftp が有名。
  • 参考:FTPクライアントの例として、FreeBSDからは lftp や、ftp コマンドなどがある。
%su
Password:
# cd /usr/ports/ftp/proftpd
# make install clean
# rehash
  • インストール時にオプション指定を聞かれるが、とりあえずそのままで続行。

インストールが完了すると、/usr/local/etc/rc.d/ に proftpd の起動/終了シェルスクリプトが作られる。

Proftpd 動作モードによる設定

Proftpd の動作モードは2タイプある。この部分が混乱するところであり、キモイところである。

次のどちらかの方法で設定すればよい。

タイプstandaloneinetd経由
プロセス常時稼動要求時のみ稼動
接続早っもっさり
有効にするもの/etc/rc.conf/etc/inetd.conf
無効にするもの/etc/inetd.conf/etc/rc.conf
設定ファイル/usr/local/etc/proftpd.conf/usr/local/etc/proftpd.conf
アクセス制限/usr/local/etc/proftpd.conf/etc/hosts.allow と /usr/local/etc/proftpd.conf
偏見的メリット早っsshdなどと同じファイルでアクセス制限が可能
偏見的デメリット別に常時稼動していなくてもいいもっさり

Standalone 版で動かす場合

Standalone モードは、Proftpd が常に稼動している状態であり、inetdを経由するよりも少しばかり早く反応する。

ただし、アクセス制限は、/usr/local/etc/proftpd.conf で行う必要があり、/etc/hosts.allow での制限が有効にならない。

StandaloneモードのProftpdを設定する

inetd経由で動かす場合

inetd を使って、FTPポートにパケットが届いた場合だけ、Proftpd を起動するため、standalone モードに比べて、若干、接続までに時間を要する。

inetd を使って起動する方法は、/etc/hosts.allow でアクセス制限ができる(telnetd や sshd と同じファイルでアクセス制限の管理ができる)。

※/usr/local/etc/proftpd.conf に記入したアクセス制限も当然ながら有効である。

inetd経由で起動するProftpdを設定する

動かしてみよう

まず起動してみる(後にリブートでも自動起動するか確認しておくこと)。

# cd /usr/local/etc/rc.d
# ./proftpd start

proftpd が動いているか確認。

# ps aux | grep ftpd

proftpd が動いているようなら、他のコンピュータから接続してみる。

困ったとき?

*次のメッセージが表示されて Proftpd が起動しない(ftp.vdobv.comは仮)。

Starting proftpd.
 - warning: unable to determine IP address of 'ftp.vdobv.com'
 - error: no valid servers configured
 - Fatal: error processing configuration file '/usr/local/etc/proftpd.conf'

このような場合は、/etc/hosts に、例えば下記のように、自分自身を追加してみる。

127.0.0.1    ftp.vdobv.com

*FFFTP(クライアント)で接続してもサーバ側のファイル一覧が表示されない。

FFFTPの高度タブで、NLST -R のチェックを外し、LIST をチェックして、再接続して、更新する。

*次のメッセージが表示されて Proftpd が起動しない。

Starting proftpd.
 - mod_tls/2.1.2: compiled using OpenSSL version 'OpenSSL 0.9.8h 28 May 2008' headers, but linked to OpenSSL version 'OpenSSL 0.9.8j 07 Jan 2009' library
 - Fatal: unable to load module 'mod_tls.c': Operation not permitted

OpenSSLのバージョンアップで再インストールした場合など、Proftpdに影響する場合がある。make しなおせばいい。

freebsd7.1r/proftpd/home.txt · 最終更新: 2009/05/10 14:24 by vdobv
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0