天天看點

Ubuntu 7.04下vsftpd 配置

Ubuntu 7.04下vsftpd 配置

 下載下傳安裝vsftpd

Ubuntu 7.04下vsftpd 配置

sudo apt-get install vsftpd

由于要按照虛拟使用者模式登陸,安裝db4.2-util包

Ubuntu 7.04下vsftpd 配置

sudo apt-get install db4 . 2 -util

建立一個login檔案,裡面包含虛拟使用者資訊,比如

Ubuntu 7.04下vsftpd 配置

vi login

Ubuntu 7.04下vsftpd 配置
Ubuntu 7.04下vsftpd 配置

login file

Ubuntu 7.04下vsftpd 配置

------------------------------------------

Ubuntu 7.04下vsftpd 配置

test1              使用者名

Ubuntu 7.04下vsftpd 配置

passwd1       密碼

Ubuntu 7.04下vsftpd 配置

test2              使用者名

Ubuntu 7.04下vsftpd 配置

passwd2        密碼

Ubuntu 7.04下vsftpd 配置

-------------------------------------------

 建立資料庫檔案

Ubuntu 7.04下vsftpd 配置

sudo db4 . 2_load -T -t hash -f login  / etc / vsftpd / vsftpd_login . db

更改資料庫檔案的權限

Ubuntu 7.04下vsftpd 配置

sudo chmod  600   / etc / vsftpd_login . db

生成新的PAM檔案

建立/etc/pam.d/vsftpd.vu 内容如下:

Ubuntu 7.04下vsftpd 配置

auth required  / lib / security / pam_userdb . so db =/ etc / vsftpd / vsftpd_login

Ubuntu 7.04下vsftpd 配置

account required  / lib / security / pam_userdb . so db =/ etc / vsftpd / vsftpd_login

為虛拟使用者建立本地系統使用者

Ubuntu 7.04下vsftpd 配置

sudo useradd virtual -d  / home / ftp

Ubuntu 7.04下vsftpd 配置

sudo chown virtual . virtual  / home / ftp

更改/etc/vsftpd.conf

Ubuntu 7.04下vsftpd 配置

listen = YES

Ubuntu 7.04下vsftpd 配置

anonymous_enable = NO

Ubuntu 7.04下vsftpd 配置

local_enable = YES

Ubuntu 7.04下vsftpd 配置

write_enable = NO

Ubuntu 7.04下vsftpd 配置

anon_upload_enable = NO

Ubuntu 7.04下vsftpd 配置

anon_mkdir_write_enable = NO

Ubuntu 7.04下vsftpd 配置

dirmessage_enable = YES

Ubuntu 7.04下vsftpd 配置

xferlog_enable = YES

Ubuntu 7.04下vsftpd 配置

connect_from_port_20 = YES

Ubuntu 7.04下vsftpd 配置

xferlog_file =/ var / log / vsftpd . log

Ubuntu 7.04下vsftpd 配置

xferlog_std_format = YES

Ubuntu 7.04下vsftpd 配置

chroot_local_user = YES

Ubuntu 7.04下vsftpd 配置

secure_chroot_dir =/ var / run / vsftpd

Ubuntu 7.04下vsftpd 配置

pam_service_name = vsftpd

Ubuntu 7.04下vsftpd 配置

rsa_cert_file =/ etc / ssl / certs / ssl-cert-snakeoil . pem

Ubuntu 7.04下vsftpd 配置

rsa_private_key_file =/ etc / ssl / private / ssl-cert-snakeoil . key

Ubuntu 7.04下vsftpd 配置
Ubuntu 7.04下vsftpd 配置

guest_enable = YES

Ubuntu 7.04下vsftpd 配置

guest_username = virtual

Ubuntu 7.04下vsftpd 配置

user_config_dir =/ etc / vsftpd / vsftpd_user_conf   這行是為了單獨設定使用者權限準備的

Ubuntu 7.04下vsftpd 配置

pam_service_name = vsftpd . vu

Ubuntu 7.04下vsftpd 配置

單獨設定使用者權限

Ubuntu 7.04下vsftpd 配置

sudo mkdir  / etc / vsftpd / vsftpd_user_conf

Ubuntu 7.04下vsftpd 配置

cd  / etc / vsftpd / vsftpd_user_conf

Ubuntu 7.04下vsftpd 配置

sudo touch test1 test2

 test1 隻有下載下傳權限,cat /etc/vsftpd/vsftpd_user_conf/test1

Ubuntu 7.04下vsftpd 配置

local_root=/home/ftp/gct

test2 有upload權限,cat /etc/vsftpd/vsftpd_user_conf/test2

Ubuntu 7.04下vsftpd 配置

anon_world_readable_only=NO

   anon_upload_enable=YES

   anon_mkdir_write_enable=YES

   anon_other_write_enable=YES

   anon_umask=022

   write_enable=YES

   local_root=/home/ftp/gct

注意anon_umask=022,它保證你upload後的檔案權限都是 rw-r-r。

确認檔案夾權限:

drwxrwxr-x 3 virtual virtual  72 2007-08-08 01:44 ftp

drwxr-xr-x 2 virtual virtual 280 2007-08-14 00:50 gct

onwer群組都是virtual。