パソコン実習室
FTPサーバ (vsftpd-2.0) の設定
≪ previous next ≫

U.vsftpd.conf

 vsftpd は起動時に構成ファイル vsftpd.conf を参照する。  vsftpd.conf は vsftpd の様々な動作オプションを制御する。
構成ファイルのサンプルは、インストール時に次のディレクトリへ生成される。 : /etc/vsftpd/vsftpd.conf


U.1.書式

 vsftpd.conf に記述するステートメントは行の終端で終了する (終端記号なし) 。
ステートメントはディレクティブとその値を "=" で結んだ形式で記述する。

directive=value
  • directive の部分に有効なディレクティブ、value の部分に有効な値を入れる。
  • "=" と directive, valueの間にスペースがあってはいけない。
  • 先頭に # のある行はコメントと解釈され、vsftpd は無視する。

U.2.主なディレクティブ

 以下に vsftpd.conf で使用するディレクティブの抜粋を示す。
記述中の value に相当する値は推奨値である。

defaule : の記述について
 インストール時に生成される vsftpd.conf のディレクティブには、値を設定済のものやコメントアウトしてあるもの、 あるいはディレクティブの記述が省略されているものもある。
それらデフォルト値と、それを vsftpd がどのように解釈するかを次のように表記した。
表記意味
設定されている値
設定なし [ 値 ]ディレクティブの記述はないが、[ 値 ]が設定されているとみなされる
コメントアウト [ 値 ]コメントアウトされているが、[ 値 ]を設定してあると認識される


U.2.1.起動・動作関連ディレクティブ

  • default : YES
  • YES
    vsftpd はスタンド アロンで起動する。
  • NO
    vsftpd はxinetd ベースで起動する。
  • ※ Red Hat ES 4 添付の vsftpd では、NO を設定しても xinetd ベースでは起動しない。


  • default : YES
  • YES
    ホスト アクセスファイルをアクセス制御に利用する。
    ( ホスト アクセスファイル : /etc/hosts.allow,  /etc/hosts.deny )
  • NO
    ホスト アクセスファイルをアクセス制御に利用しない。
TCP_wrapper
 TCP ラップのサービスに接続要求があった場合、TCP_wrapper は hosts.allow と hosts.deny を参照して、クライアントが接続を許可されているどうかを判定する。
 接続が許可されると、TCP_wrapper は要求されたサービスへの接続制御を開放 (該当サービスへ処理を移行) する。
クライアントの要求は次の手順で処理される。
@ /etc/hosts.allow を参照。 適合していれば接続を許可し、そうでなければAへ。
A /etc/hosts.deny を参照。 適合していれば接続を拒否。 そうでなければ接続許可。
※ /etc/hosts.allow の規則が /etc/hosts.deny より優先する。
※ ホスト アクセスファイル内の記述は上から順に解析され、最初に適合する規則が適用される。
※ いずれにも適合しない、あるいはホスト アクセスファイルが存在しない場合、接続は許可される。



  • default : 設定なし [ YES ]
  • vsftpd のログイン セッション維持を制御する。
  • YES
    セッションを維持し、utmp と wtmp の更新を試みる。
    認証に PAM を使用している場合は、pam_session を open し、ログアウト時に close する。
  • NO
    ログイン セッションを維持せずログを取得しない。
    vsftpd はより少ない処理、少ない権限で動作する。

U.2.2.ログインとアクセス制御のディレクティブ

  • default : YES
    NO を推奨する。
  • YES
    匿名ユーザ (anonymous, ftp) のログインを許可する。
    匿名ユーザはパスワードなしで /var/ftp にログインできる。
  • NO
    匿名ユーザ (anonymous, ftp) のログインを許可しない。
    不特定多数に公開する目的がなければ NO としておく。


  • default : 文字列を記述しコメントアウトしてある。
  • ログイン時にクライアントに対して文字列を表示する。
  • 必要であれば文字列を編集し、コメントアウト記号を外す。


  • default : YES
  • YES
    ローカル ユーザ アカウントによる ログインを許可する。
    ( ローカル ユーザ : /etc/passwd に記録されている ユーザ ID が 500 以降のユーザ アカウント )
  • NO
    ローカル ユーザ アカウントによる ログインを許可しない。
  • 他のパッケージではデフォルト値が NO となっている場合もある。


  • default : vsftpd
  • vsftpd 用 PAM サービス名を指定する。
    PAM は指定されたファイルを /etc/pam.d 内で検索し open する。
  • 他のパッケージではデフォルトが ftp となっている場合もある。


  • default : YES
  • ユーザをリストアップしたファイル (userlist_file で指定) の 有効/無効 を指定する。
  • YES
    リストアップ ユーザは、userlist_deny によるアクセス制御対象となる。
  • NO
    リストアップ ファイルは無効。 ユーザ名によるアクセス制御は行わない。
  • 他のパッケージではデフォルト値が NO となっている場合もある。


  • default : 設定なし [ YES ]
  • このディレクティブは userlist_enable が YES の場合のみ意味を持つ。
  • リストアップ (userlist_file で指定) ユーザのアクセス拒否を制御する。
    設定値による制御状況は次の通り。
  • userlist_denyリストアップ ユーザのアクセスその他ユーザのアクセス
    YES拒否許可
    NO許可拒否
  • アクセス拒否のタイミングは、パスワードを問われる前に拒否 (permission_denied) される。
  • ※ デフォルトでリストアップされているユーザ名はシステム関連名である場合が多く、アクセス制御をパスして
       もパスワード入力後に PAM 認証で接続拒否される可能性が高い。


  • default : 設定なし [ /etc/vsftpd.user_list ]
  • userlist_enable が YES の場合に参照するファイルを指定する。
    ディレクティブなしでも、デフォルトで /etc/vsftpd.user_list が参照先として指定される。
  • デフォルト指定ファイルは、インストール時に生成 (システム関連名をリストアップ) される。
  • 違うファイル名で運用する場合はディレクティブを追加してファイル名を指定する。
    ※ デフォルトの内容 (システム関連のユーザ名) でよければ当該ディレクティブの追加は不要だが、ディレク
       ティブを追加してファイル名を明示しておく方が運用管理上好ましい。



≪ previous [[ FTPサーバ - vsftpd の設定 ]] next ≫