使用yum 安裝vsftp
yum install vsftpd pam pam-* db4 db4-*
創建一個保存用戶及密碼的文件
cd /etc/vsftpd/
touch vuser_passwd.txt
添加用戶(奇行用戶,偶行密碼)
vim vuser_passwd.txt
tom
DSfaoewLD3
ken
GetpOIIofd324DLJhg
將文本內的帳號及密碼添加到db4的數據庫文件內
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
將vsftpd原內容全部注釋掉,并添加如下:
sed -ir 's/^/#/g' /etc/pam.d/vsftpd
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
創建一個vsftpd服務的用戶vsftpd,你也可以使用-d來指定他的家目錄
useradd -d /home/vsftpd -s /sbin/nologin vsftpd
更改 vsftpd的配置文件,先備份一下vsftpd.conf
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
配置如下:
#不允許匿名訪問
anonymous_enable=NO
#設定本地用戶可以訪問。注意:主要是為虛擬宿主用戶,如果該項目設定為NO那么所有虛擬用戶將無法訪問
local_enable=YES
#允許寫操作
write_enable=YES
#創建或上傳后文件的權限掩碼
local_umask=022
#禁止匿名用戶上傳
anon_upload_enable=NO
#禁止匿名用戶創建目錄
anon_mkdir_write_enable=NO
#進入目錄時可以顯示一些設定的信息,可以通過message_file=.message來設置
dirmessage_enable=YES
#開啟日志
xferlog_enable=YES
#主動連接的端口號
connect_from_port_20=YES
#設定禁止上傳文件更改宿主
chown_uploads=NO
#日志路徑,記得自己創建一下并且對這個文件進行chown vsftpd.vsftpd /var/log/vsftpd.log
xferlog_file=/var/log/vsftpd.log
#就是格式話日志格式的,你懂得。使用wu ftp軟件時設置yes就行
xferlog_std_format=YES
#因為我們把vsftpd的shell設置為nobody 了,所以 這個地方寫vsftpd就可以啦!當然或者可以寫成系統內的nobody
nopriv_user=vsftpd
#設定支持異步傳輸功能
async_abor_enable=YES
#設定支持ASCII模式的上傳
ascii_upload_enable=YES
#設定支持ASCII模式的上傳
ascii_download_enable=YES
#登陸歡迎語
ftpd_banner=Welcome to dongnan FTP service.
#限定在自己的目錄內,不讓他出去,就比如如果設置成NO,那么當你登陸到ftp的時候,可以訪問服務器的其他一些有權限目錄。設置為YES后即,鎖定你的目錄了
chroot_list_enable=YES
#待會要把用戶寫到這個里面,寫到這里的用戶乖乖的呆在家目錄下吧
chroot_list_file=/etc/vsftpd/chroot_list
#以standalone方式來啟動
listen=YES
#/etc/pam.d/下的vsftpd文件
pam_service_name=vsftpd
#在/etc/vsftpd/user_list中的用戶將不得使用FTP
userlist_enable=YES
#支援 TCP Wrappers 的防火墻機制
tcp_wrappers=YES
#啟用虛擬用戶功能
guest_enable=YES
guest_username=vsftpd
#虛擬用戶的權限符合他們的宿主用戶
virtual_use_local_privs=YES
#虛擬用戶個人vsftpd的配置文件存放路徑。vsftpd_config是文件夾啊。注意:配置文件名必須和虛擬用戶名相同
user_config_dir=/etc/vsftpd/vuser_conf
#設置被動模式
pasv_enable=yes
#被動模式數據傳輸端口范圍
pasv_min_port=8888
pasv_max_port=8899
創建保存虛擬用戶配置文件的目錄
mkdir /etc/vsftpd/vuser_conf/
創建vsftp日志文件
touch /var/log/vsftpd.log
chmod 600 /var/log/vsftpd.log
chown vsftpd.vsftpd /var/log/vsftpd.log
創建要將哪些用戶固定在家目錄的配置文件
touch /etc/vsftpd/chroot_list
echo -e "vsftpd\ntom\nken" > /etc/vsftpd/chroot_list
將需要固定用戶目錄的用戶名字寫進去即可
cd /etc/vsftpd/vuser_conf/
cat > tom << EOF #起用虛擬用戶,centos下yes必須為小寫字母
local_root=/home/ftp/tom
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
注:行末不能有空格
啟動vsftpd
總結
以上所述是小編給大家介紹的centos 6 安裝vsftpd與PAM虛擬用戶的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!