平台是 Linux + vsftpd 3
主要用途是公司部門內同事分享檔案用,所以需要有個共用資料夾讓大家能共同存取。
基本的設定就略過,這邊主要將分享共用資料夾的方法記錄下來。
首先先建立一個群組用來分享檔案
1 |
; html-script: false ]# groupadd ftpshare |
然後建立分享用的資料夾
1 |
; html-script: false ]# mkdir /home/share |
將權限設定好, 除了給群組完整的權限以外, 還要加上sticky bit, 讓ftp新增或上傳的檔案有相同的群組權限
1 2 3 |
; html-script: false ] # chgrp ftpshare /home/share # chmod g=rwxs /home/ftpshare |
接著是修改 vsftpd.conf, 加入 umask 的設定
1 2 |
; html-script: false ] local_umask=007 |
以上準備工作就算完成了, 下面針對每個要存取共享資料的帳號做設定
先是將帳號加進群組裡, 假設帳號是 peter
1 2 |
; html-script: false ] # useradd -G ftpshare peter |
然後在家目錄內增加共享資料夾
1 2 3 |
; html-script: false ] # mkdir /home/peter/share # mount --bind /home/share/ /home/peter/share |
以上, 所有的使用者就可以共享一個資料夾, 也都可以任意刪除檔案
如果希望使用者只能刪除或修改自己上傳的東西也可以
只要將 vsftpd.conf 裡的 umask 改成 027 即可