総合手引 | セクション 8 | English | オプション |
利用可能なオプションは以下の通りです:
| |
| |
| |
| |
| |
匿名 ftp アクセスのみ許可します。 | |
| |
| |
| |
このオプションがセットされると、 ftpd は制御端末を切り離してデーモンとなり、 FTP ポートへの接続要求を待ち、 子プロセスを生成して接続要求に対応します。 この方式は ftpd を inetd(8) から起動するよりオーバヘッドが少ないため、 処理量の多いサーバで負荷を低減するのに役立ちます。 | |
| |
syslog の LOG_FTP のファシリティ (facility) を用いてデバッグ情報を出力します。 | |
| |
EPSV コマンドを無効化します。 古いファイアウォールの後ろにサーバがある場合に有用です。 | |
| |
サーバソフトウェアバージョンやホスト名といったホスト固有情報を サーバメッセージ中に表示しないようにします。 | |
| |
ftp(1) セッションそれぞれの結果を、成功も失敗もともども syslog の LOG_FTP のファシリティを用いて ログに残します。 このオプションが 2 回指定されると、 retrieve (get), store (put), append, delete, make directory, remove directory, rename の各操作およびそれらの引数で指定された ファイル名も記録されます。 デフォルトでは、 syslogd(8) はこれらを /var/log/xferlog に記録します。 | |
| |
匿名ユーザによるディレクトリ作成を禁止します。 | |
| |
ファイルシステムのパーミッションが許す限りにおいて、 匿名ユーザによる既存のファイルの上書きや修正を許します。 デフォルトでは、匿名ユーザは既存のファイルを修正できず、 特に、アップロードされるファイルは一意な名前で作成されます。 | |
| |
匿名ユーザのみに対し、サーバを書き込み専用モードにします。
匿名ユーザに対しては、RETR が無効化され、
匿名ダウンロードを禁止します。
本オプションは、
| |
| |
サーバを書き込み専用モードにします。 RETR が無効化され、 ダウンロードを禁止します。 | |
| |
| |
| |
| |
| |
このオプションがセットされると、 ftpd は、ユーザ操作のセキュリティチェックや PORT 要求の制限に関して 古き良き時代の振る舞いに戻ります。 現在では、 ftpd はリモートユーザのホストの非特権ポートに向けられた PORT コマンド だけを用います (これは FTP プロトコルの仕様に違反していますが、 いくつかのセキュリティホールを閉じることができます)。 | |
| |
サーバを、読み取り専用モードにします。 ローカルファイルを修正し得る全コマンドは、無効化されます。 | |
| |
このオプションがセットされると、 ftpd は匿名 (anonymous) によるファイルダウンロードの全てについてのログを、ファイル /var/log/ftpd が存在する場合に限り、このファイルに残します。 | |
| |
クライアントは異なったタイムアウト秒数を要求することもできます。
| |
| |
何も操作しないで放置した場合のタイムアウト時間を timeout 秒に設定します (デフォルトは 15 分)。 | |
| |
IP_PORTRANGE_HIGH
の範囲の代りに
IP_PORTRANGE_DEFAULT
の範囲のデータポートを使用するよう、ftpd に指示します。
更なる情報については
ip(4)
を参照してください。
FreeBSD 5.0 以上では、実際はなにもしないことに注意してください。 なぜなら、どちらのポート範囲もデフォルトで等価だからです。 | |
| |
デフォルトのファイル生成マスクを umask にします。 この数値は 8 進数値であることを期待されます。 詳細は umask(2) を参照してください。 このオプションに対し、 login.conf(5) の設定が優先します。 | |
| |
| |
| |
FTP セッションを /var/log/wtmp に記録しません。 | |
ファイル /var/run/nologin は、ftp アクセスを拒否するのに使うことができます。 このファイルが存在する場合、 ftpd はそのファイルの内容を表示して終了します。 /etc/ftpwelcome ファイルが存在する場合、 ftpd は "ready" メッセージを表示する前にその内容を表示します。 もし /etc/ftpmotd ファイルが存在する場合、 ログイン成功後に ftpd はその内容を出力します。 使用される motd ファイルはログイン環境に対して相対であることに 注意してください。 つまり、匿名ユーザの場合には、 ~ftp/etc に存在することを意味じます。
この ftp サーバは、現在、以下の ftp リクエストをサポートしています。
リクエストの文字の大文字小文字の区別は無視されます。
印 [RW] が付いているリクエストは、
リクエスト | 説明 |
ABOR | abort previous command |
ACCT | specify account (ignored) |
ALLO | allocate storage (vacuously) |
APPE | append to a file [RW] |
CDUP | change to parent of current working directory |
CWD | change working directory |
DELE | delete a file [RW] |
EPRT | specify data connection port, multiprotocol |
EPSV | prepare for server-to-server transfer, multiprotocol |
HELP | give help information |
LIST | give list files in a directory ("ls -lgA") |
LPRT | specify data connection port, multiprotocol |
LPSV | prepare for server-to-server transfer, multiprotocol |
MDTM | show last modification time of file |
MKD | make a directory [RW] |
MODE | specify data transfer mode |
NLST | give name list of files in directory |
NOOP | do nothing |
PASS | specify password |
PASV | prepare for server-to-server transfer |
PORT | specify data connection port |
PWD | print the current working directory |
QUIT | terminate session |
REST | restart incomplete transfer |
RETR | retrieve a file |
RMD | remove a directory [RW] |
RNFR | specify rename-from file name [RW] |
RNTO | specify rename-to file name [RW] |
SITE | non-standard commands (see next section) |
SIZE | return size of file |
STAT | return status of server |
STOR | store a file [RW] |
STOU | store a file with a unique name [RW] |
STRU | specify data transfer structure |
SYST | show operating system type of server system |
TYPE | specify data transfer type |
USER | specify user name |
XCUP | change to parent of current working directory (deprecated) |
XCWD | change working directory (deprecated) |
XMKD | make a directory (deprecated) [RW] |
XPWD | print the current working directory (deprecated) |
XRMD | remove a directory (deprecated) [RW] |
以下に示した非標準コマンドあるいは Unix に特有のコマンドが、SITE リクエストでサポートされています。
リクエスト | 説明 |
UMASK | change umask, e.g. ``SITE UMASK 002'' |
IDLE | set idle-timer, e.g. ``SITE IDLE 60'' |
CHMOD | change mode of a file [RW], e.g. ``SITE CHMOD 755 filename'' |
MD5 | report the files MD5 checksum, e.g. ``SITE MD5 filename'' |
HELP | give help information |
注: 匿名ログインの場合、SITE リクエストは無効化されています。
Internet RFC 959 で規定されている ftp リクエストのうちの、これ以外のものは 解釈はされますがインプリメントされていません。 MDTM および SIZE は RFC 959 では規定されていませんが、次に改訂される FTP RFC には登場するでしょう。 サービス拒否攻撃の可能性を除去するために、 現在の転送タイプが ASCII の場合には、 10240 バイトより大きなファイルに対する SIZE リクエストは拒否されます。
ftp サーバがアクティブなファイル転送を中断するのは、ABOR コマンドの前に、 Telnet "Interrupt Process" (IP) シグナルと Telnet "Synch" シグナルが Telnet ストリーム内にある場合だけです。 これは Internet RFC 959 に記述されています。 もし、データの転送中に STAT コマンドを受けとり、その前に Telnet IP と Synch があった場合、転送ステータスが返されます。
ftpd ユーティリティは、 csh(1) で使われている "ファイル名置換" ( globbing ) を解釈します。 これにより、ユーザはメタキャラクタ "amp;*?[]{}~" を利用できます。
ftpd ユーティリティは、6 つのルールに従ってユーザの認証を行います。
最後のケースの場合、 ftpd は特別な手段でクライアントのアクセス権を制限します。 サーバは "ftp" ユーザのホームディレクトリへ chroot(2) します。 "ftp" ユーザのホームディレクトリパスに /./ セパレータが含まれる特殊な場合、 左側を chroot(2) 先のディレクトリ名、右側を以降のカレントディレクトリとして ftpd は使用します。 典型的な使用例は /usr/local/ftp/./pub です。 システムのセキュリティが侵害されないために、 "ftp" サブツリーは、以下の規則に従って慎重に構築することを推奨します。
~ftp | ホームディレクトリは "root" の所有とし、誰も書き込みできないようにします。 |
~ftp/etc | |
このディレクトリは "root" の所有とし、誰も書き込みできないようにします (モード 555)。 ls(1) が所有者を数字でなく名前で表示できるようにするために、 ファイル pwd.db ((passwd) 5 参照) 及び group(5) が必要です。 ファイル passwd(5) 中のパスワードは使用されませんので、本当のパスワードを入れてはいけません。 ファイル ftpmotd が存在すると、ログイン成功後、その内容が表示されます。 このファイルのモードは 444 とすべきです。 | |
~ftp/pub | |
本ディレクトリおよびそれ以下のサブディレクトリは、 ここにファイルを置くことに対して責任のあるユーザおよびグループにより 所有されるべきであり、彼等によってのみ書き込み可能であるべきです (モード 755 または 775)。 "ftp" またはそのグループが所有したり書き込み可能であるべきでは ありません。 そのようにしてしまうと、 ゲストユーザが、望まないファイルでディスクを一杯にできてしまいます。 | |
システムに複数の IP アドレスがある場合、 ftpd は仮想ホストの概念をサポートします。 仮想ホストは、複数の匿名 ftp 領域それぞれを別々のインターネットアドレス に割り当てる機能を提供します。 ファイル /etc/ftphosts は各仮想ホストに関連した情報を保持します。 各ホストはそれぞれの行で定義され、 各行は空白で区切ったいくつかのフィールドからなります:
hostname | 仮想ホストのホスト名あるいは IP アドレス。 |
user | システムのパスワードファイル中のユーザレコードを含みます。 普通の匿名 ftp と同様に、このユーザのアクセス UID, GID および グループによって匿名 ftp 領域のファイルアクセス権が決まります。 匿名 ftp 領域 (ログイン時にユーザが chroot するディレクトリ) は、 そのアカウントに対するホームディレクトリとして決定されます。 他の ftp アカウントのユーザ ID およびグループも、 標準 ftp ユーザと同じであって構いません。 |
statfile | 全てのファイル転送のログが記録されるファイル。 デフォルトでは /var/log/ftpd です。 |
welcome | サーバがプロンプトを出す前に表示される welcome メッセージ。 デフォルトでは /etc/ftpwelcome です。 |
motd | このファイル内容はユーザがログインした後に表示されます。 デフォルトでは /etc/ftpmotd です。 |
文字 '#' で開始する行は無視されますので、コメントを含むことが可能です。
プライマリ IP アドレスあるいはホスト名に対する仮想ホストを定義すると、 そのアドレスへの ftp ログインのデフォルト値が変更されます。 amp;'user', 'statfile', 'welcome', 'motd' の各フィールドは デフォルト値を用いる場合、ブランクのままもしくはハイフン一つ amp;'-' と しても構いません。
いかなる匿名ログインの設定についても言えることですが、 設定と保守には十分に注意を払い、セキュリティ上の問題をきたさないよう 防御しなければなりません。
ftpd ユーティリティは、 リモートからのファイル一覧表示要求に対応するための内部サポートを持ち、 chroot された環境でもそれ以外でも /bin/ls を実行しなくなります。 ~/bin/ls の実行形式ファイルは chroot されたディレクトリになくてよく、 ~/bin ディレクトリも存在する必要はありません。
/etc/ftpusers | 歓迎されない/制限を受けるユーザのリスト。 |
/etc/ftpchroot | chroot される一般ユーザのリスト。 |
/etc/ftphosts | 仮想ホストのための設定ファイル |
/etc/ftpwelcome | welcome メッセージ。 |
/etc/ftpmotd | login 後の welcome メッセージ。 |
/var/run/nologin | |
内容を表示し、アクセスを拒否します。 | |
/var/log/ftpd | 匿名による転送のログファイル。 |
/var/log/xferlog | |
セッションログのデフォルトの置場。 | |
FTPD (8) | January 27, 2000 |
総合手引 | セクション 8 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | A child of 5 could understand this! Fetch me a child of 5. | ” |