====== 71 vsftpd ======
簡単なFTP Server
===== インストール =====
# yum install vsftpd
===== 設定ファイル修正 =====
# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
↓ anonymousユーザ(匿名ユーザ)のログイン禁止
anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
↓ アスキーモードでのアップロード・ダウンロードを許可
ascii_upload_enable=YES
ascii_download_enable=YES
#ftpd_banner=Welcome to blah FTP service.
↓ コメントアウトを外す。ログイン時ソフト名とバージョンが表示されないよう。
ftpd_banner=Welcome to blah FTP service.
#chroot_local_user=YES
#chroot_list_enable=YES
↓ デフォルトでホームディレクトリより上層へのアクセスを禁止する
↓ ホームディレクトリより上層へのアクセスを許可するユーザのリストの有効化
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
↓ ホームディレクトリより上層へのアクセスを許可するユーザのリスト
#chroot_list_file=/etc/vsftpd/chroot_list
#ls_recurse_enable=YES
↓ ディレクトリごと削除できるようにする
ls_recurse_enable=YES
以下を最下行へ追加
use_localtime=YES ← タイムスタンプ時間を日本時間にする
pasv_addr_resolve=YES ← PASVモード接続先IPアドレスをホスト名から取得する
pasv_address=centossrv.dip.jp ← PASVモード接続先IPアドレスが牽けるホスト名※
pasv_min_port=60010 ← PASVモード接続時の最小ポート番号
pasv_max_port=60040 ← PASVモード接続時の最大ポート番号
ssl_enable=YES ← SSLの有効化
rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem ← サーバー証明書を指定
force_local_logins_ssl=NO ← ログイン時にSSL接続を強制しない※暗号化しない接続もできるようにする場合のみ
force_local_data_ssl=NO ← データ転送時にSSL接続を強制しない※暗号化しない接続もできるようにする場合のみ
===== サーバー証明書作成 =====
# cd /etc/pki/tls/certs/
# make vsftpd.pem
===== ホームディレクトリより上層へのアクセスを許可するユーザの登録 =====
# echo centos >> /etc/vsftpd/chroot_list
===== FTPサーバーへのアクセスを禁止するユーザの登録 =====
# echo centos >> /etc/vsftpd/ftpusers
===== hosts.allow編集 =====
# vi /etc/hosts.allow
------ 追加 ------
vsftpd : .jp : allow
ALL : ALL : deny
===== iptablesでパッシブモードのポート開放 =====
# vi /etc/sysconfig/iptables
------------ 追加 ---------------
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 60010:60040 -j ACCEPT
# /etc/init.d/iptables restart
===== vsftpd自動起動設定 =====
# chkconfig vsftpd on
===== 起動 =====
# service vsftpd start
====== PASVモードと、ACTIVEモードの違いについて ======
[[http://ameblo.jp/itboy/entry-10249857007.html]]
[[http://www.nina.jp/server/basic/ftp.html]]
[[http://y-router.com/yamaha06/ftp02.html]]
アクティブモードは、ファイアウォールとNATとの相性が悪い
===== 削除ログを出力 =====
log_ftp_protocol=YES
dual_log_enable=YES
削除ログ
# tail vsftpd.log
Fri Sep 6 03:20:47 2022 [pid 841836] [hoge@hogehoge.com] OK UPLOAD: Client "XXX.XXX.XXX.XXX", "/test.txt", 5 bytes, 0.13Kbyte/sec
Fri Sep 6 03:21:51 2022 [pid 841836] [hoge@hogehoge.com] FTP command: Client "XXX.XXX.XXX.XXX", "DELE /test.txt"
{{tag>vsftp ftp}}