【tech】vsftpdのログインディレクトリを変更するメモ




CentOS7にVSFTPDをインストールしてFTPサーバを構築しています。
FTP用のディレクトリをつくって、各ユーザがFTPアクセスしてきたとき、指定のFTP用ディレクトリにアクセスされるようにする設定をメモしています。

目的


・ユーザ「testuser」のFTP接続時のホームディレクトリを
 /ws/ftp/testuser
 へ変更したい。

前提


ホストOS:CentOS7
FTP:vsftpd
ユーザ:testuser

・FTPの設定が済んでいる →FTP接続参照
・FTP用ユーザ作成が済んでいる
・FTP用ユーザがchrootの対象外である
 (homeディレクトリより上の階層に行く事ができる)


・vsftpdの設定ファイルがあるディレクトリに移動
cd /etc/vsftpd/

・配下のファイルを確認
ls

・ユーザのデフォルトディレクトリ指定用の設定ファイルを
 配置する為のディレクトリを作成する
mkdir vsftpd_user_conf

・vsftpdの設定ファイルにディレクトリを追記
vi vsftpd.conf
→下記のディレクティブを追記


user_config_dir=/etc/vsftpd/vsftpd_user_conf




・作成したディレクトリを確認
ls
→vsftpd_user_confがある事を確認

ユーザ毎のホームディレクトリを設定


・ディレクトリの移動
cd vsftpd_user_conf

・ユーザ毎のホームディレクトリファイルを作成
vi testuser
→下記のディレクティブを追記


local_root=/ws/ftp/testuser




・vsftpdを再起動
systemctl restart vsftpd

・FTP接続して確認する
ftp 192.168.56.150

testuser
testuserPW

pwd
>/workspace/ftp/testuser
これで成功!



うまくいかないときは


vsftpdのアクセス制御はややこしいので一つずつ確認していく。

・ftpusersファイル(FTPサーバへのアクセス制限ファイル)
ここに記載されているユーザはFTPサーバへアクセスできません。

・user_listファイル(FTPサーバへのアクセス制限ファイル)
vsftpd.confの設定により、振る舞いが変わります。
-user_listファイルを「許可リスト」として使用する場合
 -userlist_enable=YES (ユーザリストを使用する=YES)
 -userlist_deny=NO (ユーザリストを「拒否リスト」にする=NO)
            ※拒否リストにしない → 許可リストとして使用する

-user_listファイルを「拒否リスト」として使用する場合
 -userlist_enable=YES (ユーザリストを使用する=YES)
 -userlist_deny=YES (ユーザリストを「拒否リスト」にする=YES)

・chroot_listファイル(上位ディレクトリへのアクセス制限ファイル)
ここに記載されているユーザのみがホームディレクトリより
上位ディレクトリに移動できるようになります。
rootも記載する必要がありそうです(要調査)




さいごに私が使っているPC(のメモリが8GBの物)です!
私は今このPCのメモリを現在では32GBにアップグレードして使っています!笑
安くなりましたよねメモリ。SSDも安くなってるので買い換えたいです!笑

下のRedmineとZabbixの本は kindle unlimitedで無料で読めますのでお勧めです!(30日無料期間に読んで解約もアリだと思います。笑)



投稿者:

mame

都内20代前半ITエンジニア 見た目は女性、性格は男・・・ 品のある女性になりたいT_T 既婚子持ち 趣味の:IT、DIY、投資 などについてのメモblog

「【tech】vsftpdのログインディレクトリを変更するメモ」への1件のフィードバック

  1. local_root=/ws/ftp/testuser
    としていますが、
    pwdの結果が
    >/workspace/ftp/testuser
    となっています 

    /workspaceディレクトリとはどこのことでしょうか

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です