vsftpdは起動時にvsftpd.confを参照し、vsftpdの様々な動作オプションを決定します。
vsftpd.confの書式
vsftpd.confに記述するステートメントは行の終端で終了します。
ステートメントはディレクティブとその値を “=” で結んだ形式で記述します。
directive=value
- directiveの部分に有効なディレクティブ、value の部分に有効な値を入れる
- “=”とdirective, valueの間にスペースがあってはならない
- 先頭に # のある行はコメントと解釈される
vfstpd.confの設定項目一覧
vsftpd設定ファイル(vfstpd.conf)には以下のようなディレクティブ(設定項目)があります。
ディレクティブ | 説明 | デフォルト |
---|---|---|
anonymous_enable | 匿名ユーザーによるFTPログインの許可する | YES |
local_enable | ローカル ユーザ アカウントによる ログインを許可する | YES |
write_enable | ファイルに変更を加えるFTPコマンドの使用を許可する | YES |
local_umask | 新規ファイルに適用するパーミッションのumask値を設定する | 022 |
anon_upload_enable | 匿名ユーザーからのサーバーへのファイル書き込み許可する | NO |
anon_mkdir_write_enable | 匿名ユーザーがディレクトリの生成を許可する | NO |
dirmessage_enable | メッセージファイル(message_fileで指定)を設置したディレクトリにアクセスがあるとメッセージファイルの内容を表示する | NO |
xferlog_enable | ログ取得の有無を設定する | YES |
connect_from_port_20 | アクティブモード時のサーバー側が使用するデータ転送用ポート番号の指定方法を定義する(YES:ftp_data_portで指定するポート、NO:1024以降のポート) | YES |
chown_uploads | 匿名ユーザーでアップロードされたファイルの所有者を変更するかを設定する | YES |
chown_username | 匿名ユーザーでアップロードされたファイルの所有者を変更す場合のユーザーを指定する | whoever |
xferlog_file | ログファイルのファイル名を設定する | /var/log/xferlog |
xferlog_std_format | ログをxferlogのフォーマットにするかの設定する | YES |
idle_session_timeout | コントロールコネクション上にFTPコマンドや応答が流れない(アイドル)状態のタイムアウト値を秒数で指定する | 600 |
data_connection_timeout | データ転送の進捗が進まない場合のタイムアウト値を秒数で指定する | 300 |
nopriv_user | 特権がいらない場合の権限を指定する | nobody |
async_abor_enable | 非同期ABORを認めるかどうかを設定する | NO |
ascii_upload_enable | アップロード時のASCIIモードでのデータ転送を許可する | NO |
ascii_download_enable | ダウンロード時のASCIIモードでのデータ転送を許可する | NO |
ftpd_banner | 接続が最初に来たときにvsftpdが表示する挨拶メッセージを指定する | vsFTPd x.x.x |
deny_email_enable | 匿名ユーザーのパスワード(e-mail アドレス)のうちログインを拒否したいもののリストを適用するかどうかを指定する | NO |
banned_email_file | 匿名ユーザーのパスワード(e-mail アドレス)のうち、許可しないもののリストのファイル名を指定する | /etc/vsftpd/banned_emails |
chroot_local_user | ログイン後にホームディレクトリへとchroot()するかどうかを指定する(ホームディレクトリより上層へのアクセスを禁止するかどうか) | NO |
chroot_list_enable | ログイン後にホームディレクトリへとchroot()されるローカルユーザーのリストを指定する(ホームディレクトリより上層へのアクセスを許可するユーザーのリスト) | NO |
chroot_list_file | ホームディレクトリ内のchoot() jailに入れられるローカルユーザーのリストを示すファイル名を指定する | /etc/vsftpd/chroot_list |
ls_recurse_enable | “ls -R”コマンドの使用を許可する | NO |
listen | スタンドアロンモード(デーモン)で起動するかどうかを指定する | NO |
listen_ipv6 | スタンドアロンモード(デーモン)で起動するかどうかを指定する(IPv6で待ち受ける) | NO |
pam_service_name | vsftpdが使用するPAMサービス名を指定する | ftp |
userlist_enable | userlist_fileで指定したファイルをユーザ名のリストとして読み込む。このファイルに名前のあるユーザーでログインしようとするとパスワードを尋ねられる前に拒否される | NO |
userlist_deny | NOにした場合、userlist_fileで指定したファイルに明示的にリストされたユーザー以外はログインが拒否される | YES |
userlist_file | userlist_enableオプションが有効な場合に読み込まれるファイルのファイル名を指定する | /etc/vsftpd/user_list |
tcp_wrappers | YESにした場合、vsftpdをtcp_wrappersをサポートしてコンパイルしてあれば外から来る接続はtcp_wrappersのアクセス制御が適用される | NO |
use_localtime | ディレクトリリストの表示にローカルのタイムゾーンを使用する | NO |
pasv_enable | パッシブモード接続の許可/不許可を設定する | YES |
pasv_min_port | パッシブモードでの接続に割り当てるポートの最小値 | 0(任意のポート) |
pasv_max_port | パッシブモードでの接続に割り当てるポートの最大値 | 0(任意のポート) |
※環境(ディストリビューションやバージョン等)によってはデフォルト値が異なる場合があります。