Courier-Imap

Courier IMAP:只讀郵箱?

  • June 29, 2016

是否可以將特定郵箱(Maildir)設為只讀?所以使用者只能閱讀、轉發和搜尋郵件,但不能刪除它們?

提前致謝

您可以使用 輕鬆做到這一點ACLs,特別是使用命令maildiracl

找出要放置的正確 ACL 並非易事,找出需要更改 ACL 的文件夾也並非易事。沒有放置正確的 ACL 會在某些郵件客戶端(如 roundcube)上顯示出奇怪的行為,例如,您可能會刪除一條消息,該消息似乎已經消失了,但是如果您瀏覽到另一個文件夾(例如,已發送)並返回收件箱消息再次出現。所以收件箱仍然是只讀的,但我們不希望這種消失/重新出現的混亂。

我最終認為正確的做法是:

  1. lrasiw在 INBOX 上設置 ACL
  2. lrasiw在已發送文件夾上設置 ACL
  3. 將 lra 的 ACL 設置為 Trash 文件夾

我已經把它放在一個腳本中,你可能會發現它很有用:

root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # cat readonly.single
if [ "$#" -ne 1 ]
then
   echo "usage : $0 boite@domain.com"
   exit 1
fi

email="$1"
inbox="${1%@*}"
dst="/var/vmail/domain/$inbox"

set -x
maildiracl -set "$dst" "INBOX" owner lrasiw
maildiracl -set "$dst" "INBOX.Sent" owner lrasiw
maildiracl -set "$dst" "INBOX.Trash" owner lra
root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # cat fullaccess.single
if [ "$#" -ne 1 ]
then
   echo "usage : $0 boite@domain.com"
   exit 1
fi

email="$1"
inbox="${1%@*}"
dst="/var/vmail/domain/$inbox"

set -x
maildiracl -set "$dst" "INBOX" owner aceilrstwx
maildiracl -set "$dst" "INBOX.Sent" owner aceilrstwx
maildiracl -set "$dst" "INBOX.Trash" owner aceilrstwx
root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # 

引用自:https://serverfault.com/questions/373909