インストール方法
apt-get install vsftpd
設定ファイル
/etc/vsftpd.conf
ファイルの設定
(1)通信設定
- connect_from_port_20
- データ通信にサーバ側の20番ポートを使う設定をする。
Default: NO (but the sample config file enables it)
- ftp_data_port
- データ通信のポート番号を指定する。 connect_from_port_20をYESに設定した場合のみ。
Default: 20
- listen_port
- スタンドアロンの時に、制御通信のポート番号を設定する。
Default: 21
- listen
- スタンドアロンモードとなります。inetdにより起動することができなくなり、vsftpdは直接、稼働し、接続に関するハンドリングは直接行うことになります。
Default: YES
- listen_ipv6
- listenパラメータと同じであるが、IPv4ソケットではなくIPv6ソケットのリスンについてである。このパラメータはlistenパラメータと相互に排他的である。
Default: NO
- listen_address
- If vsftpd is in standalone mode, the
default listen address (of all localinterfaces) may be overridden by
this setting. Provide a numeric IP address.
Default: (none)
- listen_address6
- Like
listen_address, but specifies a default listen address for the
IPv6listener (which is used if listen_ipv6 is set). Format is standard
IPv6address format.
Default: (none)
- port_enable
- データコネクション時にPORTを許可します。
Default: YES
- port_promiscuous
- Set to YES if you want to disable the PORT security check that ensures thatoutgoing data connections can only connect to the client. Only enable ifyou know what you are doing!
Default: NO
- accept_timeout
- パッシブ方式のデータ接続のタイムアウト時間(秒)です。
Default: 60
- connect_timeout
- データ通信のタイムアウト時間(秒)を設定する。
Default: 60
- data_connection_timeout
- The timeout, in seconds, which is roughly the maximum time we permit datatransfers to stall for with no progress. If the timeout triggers, the remoteclient is kicked off.
Default: 300
- idle_session_timeout
- The timeout, in seconds, which is the maximum time a remote client may spendbetween FTP commands. If the timeout triggers, the remote client is kickedoff.
Default: 300
- local_max_rate
- The maximum data transfer rate permitted, in bytes per second, for local authenticated users.
Default: 0 (unlimited)
- max_clients
- スタンドアロン時に、最大接続可能クライアント数を設定する。
Default: 0 (unlimited)
- max_per_ip
- If vsftpd is in standalone mode, this is the maximum number of clients whichmay be connected from the same source internet address. A client will get anerror message if they go over this limit.
Default: 0 (unlimited)
- local_enable
- Controls whether local logins are permitted or not. If enabled, normaluser accounts in /etc/passwd (or wherever your PAM config references) may beused to log in. This must be enable for any non-anonymous login to work,including virtual users.
Default: NO
(3)アクセスに関する設定
- hide_file
- このオプションは、リストに表示されないファイル名のパターンをセットすることができる。こ
れらのファイル、ディレクトリなどは表示されないが、ファイル名を知っているクライアントからはアクセスできる。hide_fileにて特定された正規表
現にマッチしたファイルは表示されなくなる。Note that vsftpd's regular expression matching code
is a
simpleimplementation which is a subset of full regular expression
functionality.Seedeny_filefor details of exactly what regex syntax is supported.Example: hide_file={*.mp3,.hidden,hide*,h?}
Default: (none)
- deny_file
- このオプションは、どのような方法でもアクセスできないファイルのパターンをセットすることができる。これに作用されるアイテムは、隠されるのではなく、これらへのあらゆる試みが拒絶される。このオプションはとても単純であり、シリアスなアクセス制御に使うべきでなく、ファイルシステムのパーミッションを使うのが望ましい。しかし、このオプションは、バーチャルユーザの設定には便利である。 In particular aware that ifa
filename is accessible by a variety of names (perhaps due to
symboliclinks or hard links), then care must be taken to deny access to
all the names.Access will be denied to items if their name contains the
string given byhide_file, or if they match the regular expression
specified by hide_file.Note that vsftpd's regular expression matching
code is a simple implementationwhich is a subset of full regular
expression functionality. Because of this,you will need to carefully and
exhaustively test any application of thisoption. And you are
recommended to use filesystem permissions for anyimportant security
policies due to their greater reliability. Supportedregex syntax is any
number of *, ? and unnested {,} operators. Regexmatching is only
supported on the last component of a path, e.g. a/b/? issupported but
a/?/c is not.Example: deny_file={*.mp3,*.mov,.private}
Default: (none)
オペレーションに関する設定
- download_enable
- ファイルダウンロードを許可する。NOに設定するとすべてのダウンロード要求が拒否される。
Default: YES
- chmod_enable
- When enabled, allows use of the SITE CHMOD command. NOTE! This only appliesto local users. Anonymous users never get to use SITE CHMOD.
Default: YES
- ls_recurse_enable
- When enabled, this setting will allow the use of "ls -R". This is a minorsecurity risk, because a ls -R at the top level of a large site may consumea lot of resources.
Default: NO
- write_enable
- This controls whether any FTP commands which change the filesystem are allowedor not. These commands are: STOR, DELE, RNFR, RNTO, MKD, RMD, APPE and SITE.
Default: NO
送信モードに関する設定
・アクティブモードとパッシブモード
アクティブモードは、21番ポートを制御、20番ポートをデータ通信に使う。パッシブモードは、21番ポートを制御、データ通信に使うポートは任意とする。
- pasv_max_port
- パッシブモード時の最大ポート。ファイアウォールのために、狭いポート範囲を設定できる。
Default: 0 (use any port)
- pasv_min_port
- パッシブモード時の最小ポート。ファイアウォールのために、狭いポート範囲を設定できる。
Default: 0 (use any port)
- pasv_address
- Use this option to override the IP address that vsftpd will advertise inresponse to the PASV command. Provide a numeric IP address, unlesspasv_addr_resolveis enabled, in which case you can provide a hostname which will be DNSresolved for you at startup.
Default: (none - the address is taken from the incoming connected socket)
- pasv_addr_resolve
- Set to YES if you want to use a hostname (as opposed to IP address) in thepasv_addressoption.
Default: NO
- pasv_enable
- Set to NO if you want to disallow the PASV method of obtaining a dataconnection.
Default: YES
- pasv_promiscuous
- Set to YES if you want to disable the PASV security check that ensures thedata connection originates from the same IP address as the control connection.Only enable if you know what you are doing! The only legitimate use for thisis in some form of secure tunnelling scheme, or perhaps to facilitate FXPsupport.
Default: NO
・アスキー・モードは、改行コードを環境に合わせて変換する。バイナリ・モードはファイルをそのまま転送する。
- ascii_download_enable
- ASCIIモード転送でファイルのダウンロードができるようにする。
Default: NO
- ascii_upload_enable
- ASCIIモード転送でファイルのアップロードができるようにする。
Default: NO
匿名ユーザに関する設定
- deny_email_enable
- If activated, you may provide a
list of anonymous password e-mail responseswhich cause login to be
denied. By default, the file containing this list
is/etc/vsftpd.banned_emails, but you may override this with thebanned_email_filesetting.
Default: NO
- secure_email_list_enable
- Set to YES if you want only a
specified list of e-mail passwords for anonymouslogins to be accepted.
This is useful as a low-hassle way of restrictingaccess to low-security
content without needing virtual users. When enabled,anonymous logins are
prevented unless the password provided is listed in thefile specified
by theemail_password_filesetting. The file format is one password per line, no extra whitespace. Thedefault filename is /etc/vsftpd.email_passwords.
Default: NO
- banned_email_file
- This option is the name of a file
containing a list of anonymous e-mailpasswords which are not permitted.
This file is consulted if the optiondeny_email_enableis enabled.
Default: /etc/vsftpd.banned_emails
- email_password_file
- This option can be used to provide an alternate file for usage by thesecure_email_list_enablesetting.
Default: /etc/vsftpd.email_passwords
- ftp_username
- This
is the name of the user we use for handling anonymous FTP. The
homedirectory of this user is the root of the anonymous FTP area.
Default: ftp
- email_password_file
- This option can be used to provide an alternate file for usage by thesecure_email_list_enablesetting.
Default: /etc/vsftpd.email_passwords
- ftp_username
- This
is the name of the user we use for handling anonymous FTP. The
homedirectory of this user is the root of the anonymous FTP area.
Default: ftp
- chown_uploads
- If enabled, all anonymously uploaded files will have the ownership changedto the user specified in the settingchown_username.This is useful from an administrative, and perhaps security, standpoint.
Default: NO
- anon_max_rate
- The maximum data transfer rate permitted, in bytes per second, for anonymousclients.
Default: 0 (unlimited)
- anonymous_enable
- 匿名ユーザによるログインを許可する。ユーザ名がftpまたはanonymousを匿名ログインとして認識する。
Default: YES
- anon_upload_enable
- 匿名ユーザのファイルアップロードを許可する。write_enableの設定を行う必要がある。また、アップロード場所への書き込み権限が必要。仮想ユーザのアップロードにもこの設定が必要となる。(デフォルトでは、仮想ユーザは匿名権限となる。)
Default: NO
- anon_mkdir_write_enable
- 匿名ユーザにディレクトリの作成を許可する。write_enableの設定を行う必要がある。また、親ディレクトリの書き込み権限が必要。
Default: NO
- anon_other_write_enable
- 匿名ユーザは、ファイルアップロードとディレクトリ作成以外の書き込みオペレーション(削除、名前変更など)を許可する。このオプションは一般的に推奨されないが、完全性のため含まれている。Default: NO
- anon_world_readable_only
- 匿名ユーザが、読み取りのみとなり、ファイルのダウンロードのみが許可される。 This is recognising that the ftp user may own files,especially in the presence of uploads.
Default: YES
- allow_anon_ssl
- Only applies ifssl_enableis active. If set to YES, anonymous users will be allowed to use secured SSLconnections.
Default: NO
- force_anon_data_ssl
- Only applies ifssl_enableis activated. If activated, all anonymous logins are forced to use a secureSSL connection in order to send and receive data on data connections.
Default: NO
- force_anon_logins_ssl
- Only applies ifssl_enableis activated. If activated, all anonymous logins are forced to use a secureSSL connection in order to send the password.
Default: NO
- anon_root
- This option represents a directory which vsftpd will try to change intoafter an anonymous login. Failure is silently ignored.
Default: (none)
- no_anon_password
- When enabled, this prevents vsftpd from asking for an anonymous password -the anonymous user will log straight in.
Default: NO
- anon_umask
- The value that the umask for file creation is set to for anonymous users. NOTE! If you want to specify octal values, remember the "0" prefix otherwise thevalue will be treated as a base 10 integer!
Default: 077
- chown_upload_mode
- The file mode to force for chown()ed anonymous uploads. (Added in v2.0.6).
Default: 0600
ローカルユーザに関する設定
- chroot_local_user
- If set to YES, local users will be (by default) placed in a chroot() jail intheir home directory after login.Warning:This
option has security implications, especially if the users have
uploadpermission, or shell access. Only enable if you know what you are
doing.Note that these security implications are not vsftpd specific.
They apply toall FTP daemons which offer to put local users in chroot()
jails.
Default: NO
- local_umask
- The value that the umask for file
creation is set to for local users. NOTE! Ifyou want to specify octal
values, remember the "0" prefix otherwise the valuewill be treated as a
base 10 integer!
Default: 077
SSL通信に関する設定
- debug_ssl
- If true, OpenSSL connection diagnostics are dumped to the vsftpd log file.(Added in v2.0.6).
Default: NO
- implicit_ssl
- If enabled, an SSL handshake is the first thing expect on all connections(the FTPS protocol). To support explicit SSL and/or plain text too, aseparate vsftpd listener process should be run.
Default: NO
- require_cert
- If set to yes, all SSL client connections are required to present a clientcertificate. The degree of validation applied to this certificate iscontrolled byvalidate_cert(Added in v2.0.6).
Default: NO
- require_ssl_reuse
- If set to yes, all SSL data connections are required to exhibit SSL sessionreuse (which proves that they know the same master secret as the controlchannel). Although this is a secure default, it may break many FTP clients,so you may want to disable it. For a discussion of the consequences, seehttp://scarybeastsecurity.blogspot.com/2009/02/vsftpd-210-released.html
(Added in v2.1.0).
Default: YES
- ssl_enable
- If enabled, and vsftpd was compiled against OpenSSL, vsftpd will support secureconnections via SSL. This applies to the control connection (including login)and also data connections. You'll need a client with SSL support too. NOTE!!Beware enabling this option. Only enable it if you need it. vsftpd can make noguarantees about the security of the OpenSSL libraries. By enabling thisoption, you are declaring that you trust the security of your installedOpenSSL library.
Default: NO
- ssl_request_cert
- If enabled, vsftpd will request (but not necessarily require; seerequire_cert)acertificateonincomingSSLconnections.Normallythisshould not cause any trouble at all, but IBM zOS seems to have issues.(New in v2.0.7).
Default: YES
- ssl_sslv2
- Only applies ifssl_enableis activated. If enabled, this option will permit SSL v2 protocol connections.TLS v1 connections are preferred.
Default: NO
- ssl_sslv3
- Only applies ifssl_enableis activated. If enabled, this option will permit SSL v3 protocol connections.TLS v1 connections are preferred.
Default: NO
- ssl_tlsv1
- Only applies ifssl_enableis activated. If enabled, this option will permit TLS v1 protocol connections.TLS v1 connections are preferred.
Default: YES
- strict_ssl_read_eof
- If enabled, SSL data uploads are required to terminate via SSL, not anEOF on the socket. This option is required to be sure that an attacker didnot terminate an upload prematurely with a faked TCP FIN. Unfortunately, itis not enabled by default because so few clients get it right. (New in v2.0.7).
Default: NO
- strict_ssl_write_shutdown
- If enabled, SSL data downloads are required to terminate via SSL, not anEOF on the socket. This is off by default as I was unable to find a singleFTP client that does this. It is minor. All it affects is our ability to tellwhether the client confirmed full receipt of the file. Even without this option,the client is able to check the integrity of the download. (New in v2.0.7).
Default: NO
- ca_certs_file
- This option is the name of a file to load Certificate Authority certs from, forthe purpose of validating client certs. Regrettably, the default SSL CA certpaths are not used, because of vsftpd's use of restricted filesystem spaces(chroot). (Added in v2.0.6).
Default: (none)
- validate_cert
- If set to yes, all SSL client certificates received must validate OK.Self-signed certs do not constitute OK validation. (New in v2.0.6).
Default: NO
- dsa_cert_file
- This option specifies the location of the DSA certificate to use for SSLencrypted connections.
Default: (none - an RSA certificate suffices)
- dsa_private_key_file
- This option specifies the location of the DSA private key to use for SSLencrypted connections. If this option is not set, the private key is expectedto be in the same file as the certificate.
Default: (none)
- rsa_cert_file
- This option specifies the location of the RSA certificate to use for SSLencrypted connections.
Default: /usr/share/ssl/certs/vsftpd.pem
- rsa_private_key_file
- This option specifies the location of the RSA private key to use for SSLencrypted connections. If this option is not set, the private key is expectedto be in the same file as the certificate.
Default: (none)
- ssl_ciphers
- This option can be used to select which SSL ciphers vsftpd will allow forencrypted SSL connections. See theciphersman page for further details. Note that restricting ciphers can be a usefulsecurity precaution as it prevents malicious remote parties forcing a cipherwhich they have found problems with.
Default: DES-CBC3-SHA
BOOLEAN OPTIONS
Below is a list of boolean options. The value for a boolean option may be settoYESorNO.
- async_abor_enable
- When enabled, a special FTP command known as "async ABOR" will be enabled.Only ill advised FTP clients will use this feature. Additionally, this featureis awkward to handle, so it is disabled by default. Unfortunately, some FTPclients will hang when cancelling a transfer unless this feature is available,so you may wish to enable it.
Default: NO
- background
- When enabled, and vsftpd is started in "listen" mode, vsftpd will backgroundthe listener process. i.e. control will immediately be returned to the shellwhich launched vsftpd.
Default: NO
- check_shell
- Note! This option only has an effect for non-PAM builds of vsftpd. If disabled,vsftpd will not check /etc/shells for a valid user shell for local logins.
Default: YES
- chroot_list_enable
- If activated, you may provide a list of local users who are placed in achroot() jail in their home directory upon login. The meaning is slightlydifferent if chroot_local_user is set to YES. In this case, the list becomesa list of users which are NOT to be placed in a chroot() jail.By default, the file containing this list is/etc/vsftpd.chroot_list, but you may override this with thechroot_list_filesetting.
Default: NO
- delete_failed_uploads
- If true, any failed upload files are deleted. (Added in v2.0.7).
Default: NO
- dirlist_enable
- If set to NO, all directory list commands will give permission denied.
Default: YES
- dirmessage_enable
- If enabled, users of the FTP server can be shown messages when they firstenter a new directory. By default, a directory is scanned for thefile .message, but that may be overridden with the configuration settingmessage_file.
Default: NO (but the sample config file enables it)
- dual_log_enable
- If enabled, two log files are generated in parallel, going by default to/var/log/xferlogand/var/log/vsftpd.log.The former is a wu-ftpd style transfer log, parseable by standard tools. Thelatter is vsftpd's own style log.
Default: NO
- force_dot_files
- If activated, files and directories starting with . will be shown in directorylistings even if the "a" flag was not used by the client. This overrideexcludes the "." and ".." entries.
Default: NO
- force_local_data_ssl
- Only applies ifssl_enableis activated. If activated, all non-anonymous logins are forced to use a secureSSL connection in order to send and receive data on data connections.
Default: YES
- force_local_logins_ssl
- Only applies ifssl_enableis activated. If activated, all non-anonymous logins are forced to use a secureSSL connection in order to send the password.
Default: YES
- guest_enable
- If enabled, all non-anonymous logins are classed as "guest" logins. A guestlogin is remapped to the user specified in theguest_usernamesetting.
Default: NO
- hide_ids
- If enabled, all user and group information in directory listings will bedisplayed as "ftp".
Default: NO
- lock_upload_files
- When enabled, all uploads proceed with a write lock on the upload file. Alldownloads proceed with a shared read lock on the download file. WARNING!Before enabling this, be aware that malicious readers could starve a writerwanting to e.g. append a file.
Default: YES
- log_ftp_protocol
- When enabled, all FTP requests and responses are logged, providing the optionxferlog_std_format is not enabled. Useful for debugging.
Default: NO
- mdtm_write
- When enabled, this setting will allow MDTM to set file modification times(subject to the usual access checks).
Default: YES
- no_log_lock
- When enabled, this prevents vsftpd from taking a file lock when writing to logfiles. This option should generally not be enabled. It exists to workaroundoperating system bugs such as the Solaris / Veritas filesystem combinationwhich has been observed to sometimes exhibit hangs trying to lock log files.
Default: NO
- one_process_model
- If you have a Linux 2.4 kernel, it is possible to use a different securitymodel which only uses one process per connection. It is a less pure securitymodel, but gains you performance. You really don't want to enable this unlessyou know what you are doing, and your site supports huge numbers ofsimultaneously connected users.
Default: NO
- passwd_chroot_enable
- If enabled, along withchroot_local_user, then a chroot() jail location may be specified on a per-user basis. Eachuser's jail is derived from their home directory string in /etc/passwd. Theoccurrence of /./ in the home directory string denotes that the jail is at thatparticular location in the path.
Default: NO
- run_as_launching_user
- Set to YES if you want vsftpd to run as the user which launched vsftpd. This isuseful where root access is not available. MASSIVE WARNING! Do NOT enable thisoption unless you totally know what you are doing, as naive use of this optioncan create massive security problems. Specifically, vsftpd does not / cannotuse chroot technology to restrict file access when this option is set (even iflaunched by root). A poor substitute could be to use adeny_filesetting such as {/*,*..*}, but the reliability of this cannot compare tochroot, and should not be relied on.If using this option, many restrictions on other optionsapply. For example, options requiring privilege such as non-anonymous logins,upload ownership changing, connecting from port 20 and listen ports less than1024 are not expected to work. Other options may be impacted.
Default: NO
- session_support
- This controls whether vsftpd attempts to maintain sessions for logins. Ifvsftpd is maintaining sessions, it will try and update utmp and wtmp. Itwill also open a pam_session if using PAM to authenticate, and only closethis upon logout. You may wish to disable this if you do not need sessionlogging, and you wish to give vsftpd more opportunity to run with lessprocesses and / or less privilege. NOTE - utmp and wtmp support is onlyprovided with PAM enabled builds.
Default: NO
- setproctitle_enable
- If enabled, vsftpd will try and show session status information in the systemprocess listing. In other words, the reported name of the process will changeto reflect what a vsftpd session is doing (idle, downloading etc). Youprobably want to leave this off for security purposes.
Default: NO
- syslog_enable
- If enabled, then any log output which would have gone to /var/log/vsftpd.loggoes to the system log instead. Logging is done under the FTPD facility.
Default: NO
- tcp_wrappers
- If enabled, and vsftpd was compiled with tcp_wrappers support, incomingconnections will be fed through tcp_wrappers access control. Furthermore,there is a mechanism for per-IP based configuration. If tcp_wrappers setsthe VSFTPD_LOAD_CONF environment variable, then the vsftpd session will tryand load the vsftpd configuration file specified in this variable.
Default: NO
- text_userdb_names
- By default, numeric IDs are shown in the user and group fields of directorylistings. You can get textual names by enabling this parameter. It is offby default for performance reasons.
Default: NO
- tilde_user_enable
- If enabled, vsftpd will try and resolve pathnames such as ~chris/pics, i.e. atilde followed by a username. Note that vsftpd will always resolve thepathnames ~ and ~/something (in this case the ~ resolves to the initiallogin directory). Note that ~user paths will only resolve if the file/etc/passwdmay be found within the _current_ chroot() jail.
Default: NO
- use_localtime
- If enabled, vsftpd will display directory listings with the time in yourlocal time zone. The default is to display GMT. The times returned by theMDTM FTP command are also affected by this option.
Default: NO
- use_sendfile
- An internal setting used for testing the relative benefit of using thesendfile() system call on your platform.
Default: YES
- userlist_deny
- This option is examined ifuserlist_enableis activated. If you set this setting to NO, then users will be denied loginunless they are explicitly listed in the file specified byuserlist_file.When login is denied, the denial is issued before the user is asked for apassword.
Default: YES
- userlist_enable
- If enabled, vsftpd will load a list of usernames, from the filename given byuserlist_file.If a user tries to log in using a name in this file, they will be deniedbefore they are asked for a password. This may be useful in preventingcleartext passwords being transmitted. See alsouserlist_deny.
Default: NO
- virtual_use_local_privs
- If enabled, virtual users will use the same privileges as local users. Bydefault, virtual users will use the same privileges as anonymous users, whichtends to be more restrictive (especially in terms of write access).
Default: NO
- xferlog_enable
- If enabled, a log file will be maintained detailling uploads and downloads.By default, this file will be placed at /var/log/vsftpd.log, but this locationmay be overridden using the configuration settingvsftpd_log_file.
Default: NO (but the sample config file enables it)
- xferlog_std_format
- If enabled, the transfer log file will be written in standard xferlog format,as used by wu-ftpd. This is useful because you can reuse existing transferstatistics generators. The default format is more readable, however. Thedefault location for this style of log file is /var/log/xferlog, but you maychange it with the settingxferlog_file.
Default: NO
NUMERIC OPTIONS
Below is a list of numeric options. A numeric option must be set to a nonnegative integer. Octal numbers are supported, for convenience of the umaskoptions. To specify an octal number, use 0 as the first digit of the number.
- delay_failed_login
- The number of seconds to pause prior to reporting a failed login.
Default: 1
- delay_successful_login
- The number of seconds to pause prior to allowing a successful login.
Default: 0
- file_open_mode
- The permissions with which uploaded files are created. Umasks are appliedon top of this value. You may wish to change to 0777 if you want uploadedfiles to be executable.
Default: 0666
- max_login_fails
- After this many login failures, the session is killed.
Default: 3
- trans_chunk_size
- You probably don't want to change this, but try setting it to something like8192 for a much smoother bandwidth limiter.
Default: 0 (let vsftpd pick a sensible setting)
STRING OPTIONS
Below is a list of string options.
- banner_file
- This option is the name of a file containing text to display when someoneconnects to the server. If set, it overrides the banner string provided bytheftpd_banneroption.
Default: (none)
- chown_username
- This is the name of the user who is given ownership of anonymously uploadedfiles. This option is only relevant if another option,chown_uploads,is set.
Default: root
- chroot_list_file
- The option is the name of a file containing a list of local users whichwill be placed in a chroot() jail in their home directory. This option isonly relevant if the optionchroot_list_enableis enabled. If the optionchroot_local_useris enabled, then the list file becomes a list of users to NOT place in achroot() jail.
Default: /etc/vsftpd.chroot_list
- cmds_allowed
- This options specifies a comma separated list of allowed FTP commands (postlogin. USER, PASS and QUIT and others are always allowed pre-login). Othercommands are rejected. This is a powerful method of really locking down anFTP server. Example: cmds_allowed=PASV,RETR,QUIT
Default: (none)
- cmds_denied
- This options specifies a comma separated list of denied FTP commands (postlogin. USER, PASS, QUIT and others are always allowed pre-login). If a commandappears on both this andcmds_allowedthen the denial takes precedence. (Added in v2.1.0).
Default: (none)
- ftpd_banner
- This string option allows you to override the greeting banner displayedby vsftpd when a connection first comes in.
Default: (none - default vsftpd banner is displayed)
- guest_username
- See the boolean settingguest_enablefor a description of what constitutes a guest login. This setting is thereal username which guest users are mapped to.
Default: ftp
- local_root
- This option represents a directory which vsftpd will try to change intoafter a local (i.e. non-anonymous) login. Failure is silently ignored.
Default: (none)
- message_file
- This option is the name of the file we look for when a new directory isentered. The contents are displayed to the remote user. This option isonly relevant if the optiondirmessage_enableis enabled.
Default: .message
- nopriv_user
- This is the name of the user that is used by vsftpd when it wants to betotally unprivileged. Note that this should be a dedicated user, ratherthan nobody. The user nobody tends to be used for rather a lot of importantthings on most machines.
Default: nobody
- pam_service_name
- This string is the name of the PAM service vsftpd will use.
Default: ftp
- secure_chroot_dir
- This option should be the name of a directory which is empty. Also, thedirectory should not be writable by the ftp user. This directory is usedas a secure chroot() jail at times vsftpd does not require filesystem access.
Default: /usr/share/empty
- user_config_dir
- This powerful option allows the override of any config option specified inthe manual page, on a per-user basis. Usage is simple, and is best illustratedwith an example. If you setuser_config_dirto be/etc/vsftpd_user_confand then log on as the user "chris", then vsftpd will apply the settings inthe file/etc/vsftpd_user_conf/chrisfor the duration of the session. The format of this file is as detailed inthis manual page! PLEASE NOTE that not all settings are effective on aper-user basis. For example, many settings only prior to the user's sessionbeing started. Examples of settings which will not affect any behviour ona per-user basis include listen_address, banner_file, max_per_ip, max_clients,xferlog_file, etc.
Default: (none)
- user_sub_token
- This option is useful is conjunction with virtual users. It is used toautomatically generate a home directory for each virtual user, based on atemplate. For example, if the home directory of the real user specified viaguest_usernameis/home/virtual/$USER,anduser_sub_tokenis set to$USER,then when virtual user fred logs in, he will end up (usually chroot()'ed) inthe directory/home/virtual/fred.This option also takes affect iflocal_rootcontainsuser_sub_token.
Default: (none)
- userlist_file
- This option is the name of the file loaded when theuserlist_enableoption is active.
Default: /etc/vsftpd.user_list
- vsftpd_log_file
- This option is the name of the file to which we write the vsftpd stylelog file. This log is only written if the optionxferlog_enableis set, andxferlog_std_formatis NOT set. Alternatively, it is written if you have set the optiondual_log_enable.One further complication - if you have setsyslog_enable,then this file is not written and output is sent to the system log instead.
Default: /var/log/vsftpd.log
- xferlog_file
- This option is the name of the file to which we write the wu-ftpd styletransfer log. The transfer log is only written if the optionxferlog_enableis set, along withxferlog_std_format.Alternatively, it is written if you have set the optiondual_log_enable.
Default: /var/log/xferlog
<参考ページ>
https://security.appspot.com/vsftpd.html