Top > Linux > vsftpd


vsftpd インストール

Fedora標準では、

$ yum -y install vsftpd

でインストール

vsftpd.conf の設定

編集ファイル
$ su
パスワード入力 : 
# emacs /etc/vsftpd/vsftpd.conf
初期設定
共通設定
anonymous_enable=NO                      (匿名ユーザのログイン禁止)
write_enable=YES                         (書込みを許可)
ftpd_banner=Welcome to blah FTP service. (FTPログイン時に出力される)
ls_recurse_enable=YES                    (ディレクトリ毎削除できるようにする)
Log出力設定
xferlog_enable=YES                       (/var/log/vsftpd.log にLogを記録)
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO
文字コード
ascii_upload_enable=YES                  (アスキーモードでのアップロード許可)
ascii_download_enable=YES                (アスキーモードでのダウンロード許可)
chroot設定
chroot_local_user=YES                    (Default で、ホームディレクトリより上層へのアクセス禁止)
chroot_list_enable=YES                   (アクセス許可するユーザのリスト有効)
chroot_list_file=/etc/vsftpd/chroot_list (ユーザのリストファイル)
ホームディレクトリより上層へアクセスできるユーザを登録
# touch /etc/vsftpd/chroot_list
# echo foo >> /etc/vsftpd/chroot_list

セキュリティーを高める

hosts.allow の編集

vsftpd のサービスを使用できるIPアドレスを指定する

ファイルを編集
$ su
パスワード入力:
# emacs /etc/hosts.allow
追記内容
  0
  1
vsftpd : 192.168. 127.   ## Local IP address
vsftpd : xxx.xxx.xxx.xxx ## アクセスを許可するIPアドレスを指定

使用するポートを変更

vsftpd.confの追記
connect_from_port_20=NO            (Defaultのポート20番を使用しない)
listen=YES
listen_port=xxxx                   (代わりに使用するポートを指定)
PASVモードを有効化
pasv_enalbe=YES
pasv_addr_resolve=YES
pasv_address=xxx.xxx.xxx.xxx       (サーバのグローバルIPアドレス or ドメイン名を指定)
pasv_min_port=xxxx                 (PASVモードで使用するポート番号指定)
pasv_max_port=xxxx

ファイヤーウォール設定

上記で設定した

listen_port=xxxx
pasv_min_port=xxxx ~ pasv_max_port

を許可する。通常は、20と21番のポートを使用する。 外部からのアクセスを許可する場合、ルーター等の設定もお忘れなく。

サービスの起動

$ su
パスワード入力:
# /etc/rc.d/init.d/vsftpd start
vsftpd 用の vsftpd を起動中                       [ OK ]
# chkconfig vsftpd on
# chkconfig --list vsftpd
vsftpd      0:off  1:off  2:on   3:on   4:on   5:on   6off

設定例

  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO
 
# Uncomment this to allow local users to log in.
local_enable=YES
 
# Uncomment this to enable any form of FTP write command.
write_enable=YES
 
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
 
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
 
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=NO
 
# Activate logging of uploads/downloads.
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO
 
ascii_upload_enable=NO
ascii_download_enable=NO
 
# You may fully customise the login banner string:
ftpd_banner=Welcome to blah FTP service.
 
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=YES
 
listen=YES
listen_port=444
pasv_enable=YES
pasv_addr_resolve=YES
pasv_address=programing.dip.jp
pasv_min_port=443     # PASVポート指定を1つにする場合、
pasv_max_port=443     # listen のポート -1 のポートを指定する

リロード   凍結解除 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Fri, 13 May 2011 00:17:21 JST (2626d)