ubuntu vsftp 安裝配置
一、安裝 1. sudo apt-get install vsftpd 2. sudo apt-get install db4.8-util 用於創建虛擬用戶
二、配置 1. 使用虛擬用戶的時候,必須創建一個係統用戶或者用現有的用戶(主要是創建目錄和設置目錄的權限用) sudo useradd vsftpd -d /home/vsftpd -s /bin/false
說明: -d /home/vsftpd 指定這個用戶的目錄 -s /bin/false 這個用戶不能登錄係統(創建用戶時默認是可以登錄係統,可以手動修改/etc/passwd 中對應用戶的最後一個字段實現) 例如: akm:x:1000:1000:fanchangjie,,,:/home/fanchangjie:/bin/bash sshd:x:113:65534::/var/run/sshd:/usr/sbin/nologin mysql:x:114:123:MySQL Server,,,:/nonexistent:/bin/false
ftp:x:1002:1002::/home/work/:/bin/false
2. 創建虛擬用戶
touch loguser.txt
vim loguser.txt
奇數行是賬號,偶數行是密碼
例如:
ftp01
passwd01
ftp02
passwd02
保存退出後生成數據庫
sudo db4.8_load -T -t hash -f loguser.txt /etc/vsftpd_login.db
會在/etc/目錄下生成一個vsftpd_login.db的文件,設置文件的權限
sudo chmod 600 /etc/vsftpd_login.db
3. 配置PAM文件
打開/etc/pam.d/vsftpd 有些版本是/etc/pam.d/vsftpd.vu
將原有的內容全部注釋掉,輸入如下兩行:
auth required pam_userdb.so db=/etc/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd_login
保存退出
4. 編輯/etc/vsftpd.conf 至少有如下配置項
listen=YES #YES表示服務器以standalong模式運行,NO表示使用xinetd模型運行,xinetd模式需要安裝xinetd及做對應配置 standalong模式的服務管理方式是sudo service vsftpd start/stop/restart xinetd的方式是sudo /etc/init.d/xinetd start/restart/stop
anonymous_enable=NO #是否允許匿名登錄,NO表示不允許
dirmessage_enable=YES #YES表示進入目錄時顯示此目錄下有message_file選項指定文本文件(默認文件名是.message)的內容
xferlog_enable=YES #開啟上傳/下載日誌,默認日誌文件是/var/log/vsftpd.log
xferlog_file=/var/log/vsftpd.log #修改默認的日誌文件
xferlog_std_format=YES #日誌使用標準xferlog格式
chroot_local_users=YES #控製用戶是否能離開登錄後的目錄,若為NO則記錄在chroot_list_file選項所指定的文件(默認是/etc/vsftpd.chroot_list)中的用戶將在登錄後不能離開當前目錄。
guest_enable=YES
guest_username=vsftpd #係統真實用戶
user_config_dir=/etc/vsftpd_user_conf #虛擬用戶目錄和權限配置文件
pam_service_name=vsftpd #虛擬用戶配置文件
local_enable=YES #接收本地用戶
5. 虛擬用戶權限的配置
write_enable=YES anonworldreadable_only=NO anonuploadenable=YES anonmkdirwrite_enable=YES anonotherwrite_enable=YES localroot=/home/work/jenkinshome/jobs
重啟服務器需要先stop再start restart命令有時不起效果
sudo service vsftpd stop
sudo service vsftpd start
更多的配置參見:
1. https://wiki.ubuntu.org.cn/Vsftpd
最後更新:2017-04-03 21:30:11