小弟是Linux新手,由於有使用者提出希望可以禁止下載但可以上傳的功能,所以架設了一台vsftp,在參照了網路上的設定方式後,是可以正常上傳下載,但是當我想關閉下載功能時,卻一直無法成功,可以請前輩們幫忙看一下是那段設定出問題嗎? vsftpd.conf檔的設定如下
anonymous_enable=NO
local_enable=YES
write_enable=YES
download_enable=NO <<<看網路上寫說下這指令即可禁止下載,但加入後使用者還是可下載
local_umask=022
dirmessage_enable=YES
userlist_enable=YES
connect_from_port_20=YES
#Log相關
xferlog_enable=YES
xferlog_std_format=YES
#chroot相關
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
tcp_wrappers=YES
請問一下
改完有重新啟動vsftpd了嗎?
systemctl restart vsftpd
建議您VSFTPD不要用了!請參考一下OWNCLOUD 或 NEXTCLOUD.
其實我之前也有遇過類似的問題。
主要的原因是因為其權限設定有多元化。
看似這邊鎖住了。但其實在其它地方又打開了。
所以導致權限沒作用。
比較常見的是,用了本地化登入。基本來說,本地化登入一般的權限是最大不會被鎖定。
但可以將其調整為不能本地化登入。
我其實後來是採用「虛擬帳號」的方式來處理。
當然了,原本的用意是為了讓不同的人使用同一主機身份。
才去研究這些的。
但後來發現,這樣子做可以很好的處理權限問題。
畢竟它的最終解釋是依 user_config_dir 這個設定值內的權限做最終解釋。
也就是說,就算你在 vsftpd.conf 設定權限打開了。也可以在USER內做調整處理。
我後期都是這樣做的。
### 下三行限制USER 無法離開 HOME
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list 建立一個空檔案 如果裡面有帳號就能出HOME目錄
使用cmds_allowed 不允許下在OR上傳
cmds_allowed=FEAT,REST,CWD,LIST,MDTM,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST
RESR 刪掉 是無法下載
STOR 刪掉 是無法上傳