読者です 読者をやめる 読者になる 読者になる

色々でべろっぷ

WordPress、サーバー構築、プログラム等のメモ

FTPサーバー設定

vsftpdをインストール
yum -y install vsftpd

vsftpd開始
service vsftpd start

匿名FTPサーバーで公開するデータは/var/ftp/pub配下に配置する
適当なファイルを/var/ftp/pubに作成 例)test,txt

以下はWindouwsのコマンドプロントで行う
ftp 123.456.789.000 1)サーバーのIPアドレス
220 (vsFTPd 2.2.2)
ユーザー (shina-ken.net:(none)): anonymous 2)匿名でログイン
hoge.net に接続しました。
220 (vsFTPd 2.2.2)
ユーザー (hoge.net:(none)): anonymous
331 Please specify the password.
パスワード: 3)メールアドレス入力
230 Login successful.
ftp> dir 4)ファイル一覧取得
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.

  • rw-r?r? 1 0 0 5 Feb 10 12:26 test.txt

226 Directory send OK.
ftp: 69 バイトが受信されました 0.01秒 4.60KB/秒。
ftp> quit 5)終了

正常に動いてること確認
※anonymousを一般ユーザーでも可

設定ファイルを編集
vi /etc/vsftpd/vsftpd.conf

匿名アクセス禁止
anonymous_enable=YES

anonymous_enable=NO

ユーザーにアップロードや削除の権限を与えない
write_enable=YES

write_enable=NO

ファイルのパーミッションが644になってしまうので、グループ書き込み可の664に
local_umask=022

local_umask=002

アスキーモード有効
#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_list_enable=YES
#chroot_list_file=/etc/vsftpd/chroot_list

chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

サブフォルダを含む一括アップロード・ダウンロードを許可
#ls_recurse_enable=YES

ls_recurse_enable=YES

ファイルの最後に設定を追加
/etc/vsftpd/user_listのユーザーだけを許可
userlist_deny=NO

タイムスタンプ時間をローカル時間にする
use_localtime=YES

ユーザーの初期アクセスディレクト
ここに書いたディレクトリが最初に開く。
local_rootを書かないとホームディレクト
local_root=/ftp (例

ユーザのホームディレクトリより、上位のディレクトリへの移動を不許可に
chroot_local_user=YES

スタンドアロンモード時の最大同時接続数
max_clients=10

:wq

FTP専用ユーザー作成
/sbin/nologinを指定するとSSHなどでログインすることができなくなる

sudo adduser -s /sbin/nologin ftponly
sudo passwd ftponly

ftpディレクトリ作成
mkdir /ftp (例
chown ftponly /ftp
chmod 777 /ftp
vi /ftp/test.txt テストファイル作成
FTPアクセスを許可するユーザを設定
ftponlyを追加
sudo vi /etc/vsftpd/user_list

ホームディレクトリより上層にアクセス出来るユーザを設定
sudo vi /etc/vsftpd/chroot_list
空のファイルでok

vsftpd再起動
service vsftpd restart