===== vsftpdでバーチャルユーザを設定 ===== DBファイルへの返還にはBerkeley DBのdb_loadを利用するので以下のパッケージをインストールしておく # yum install -y db4-utils vsftpd.confを修正してバーチャルユーザを有効にする。 ※バーチャルユーザとUNIXユーザを混合して利用する設定には出来ないようである。 # vi /etc/vsftpd/vsftpd.conf 以下追加 user_config_dir=/etc/vsftpd/vsftpd_user_conf/ guest_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=yes anon_world_readable_only=NO anon_umask=022 virtual_use_local_privs=YES pam_service_name=vsftpd2 ユーザ毎の設定ファイルを保存するディレクトリを作成。パスはvsftpd.confのuser_config_dirで指定したところになる # mkdir /etc/vsftpd/vsftpd_user_conf/ バーチャルユーザのリストを作成 # vi /etc/vsftpd/vsftpd_vuser_list ユーザID1 ユーザID1パスワード ユーザID2 ユーザID2パスワード バーチャルユーザのリストをDB化する # db_load -T -t hash -f /etc/vsftpd/vsftpd_vuser_list /etc/vsftpd/vsftpd_login.db # chmod 600 /etc/vsftpd/vsftpd_login.db ユーザ毎の設定ファイルを作成 # vi /etc/vsftpd/vsftpd_user_conf/ユーザID1 guest_username=renbird # マッピングするUNIXユーザ local_root=/home/renbird/miyako # ドキュメントルート 認証方法を変更する。そのままvsftpdを利用してもいいのだが、なんとなく新規で作成しておくw # cp -p /etc/pam.d/vsftpd /etc/pam.d/vsftpd2 # vi /etc/pam.d/vsftpd2 以下の2行を追加 auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login サービスの再起動 # service vsftpd restart