csmailgate & csmail
holwu


csmailgate
postfix:
virutal:
/usr/local/etc/postfix/virtual
設定各機器的root mail要寄給那些TA
/usr/local/mailman/data/virtual-mailman
mailman的設定,之後再交給alias處理
csmailgate
postfix:
alias:
nis:mail.aliases
先從nis抓aliases的資料(ex: help -> cs-ta-eval)
/etc/aliases
系統預設的aliases map
/usr/local/mailman/data/aliases
mailman的設定,把lists交給
/usr/local/mailman/mail/mailman post <list name>
csmailgate
mailman
收到後會先放進qfiles/in
Queue/IncomingRunner.py會從qfiles/in中撈信
在Defaults.py中有設定GLOBAL_PIPELINE
Queue/IncomingRunner.py會依序執行其中的Handlers
csmailgate
mailman

csmailgate
mailman
執行到ToOutgoing會把信件放到qfiles/out
Queue/OutgoingRunner.py會從qfiles/out撈信並寄出去會在post、smtp寫log
csmailgate
mailman -- cscc_scripts
rm_qfiles.py
syncML.sh
set_name.py
清理qfiles,非必要時不會用
透過nis netgroup同步mailman list
透過ldap幫mailman上的使用者加上名字
csmailgate
~user/.forward
permission must be 600
pipe to command
email address
"|/usr/local/bin/procmail"
allencat850502@gmail.com
path(mailbox)
/holwu, /dev/null
# 註解
csmailgate
mail-forward-wizard
Disable 信箱

csmailgate
mail-forward-wizard
Enable 信箱

csmailgate
mail-forward-wizard
Enable 信箱 -- Demo

csmailgate
mail quota
linux: quota -s <username>
bsd: quota -h <username>
mailbox quota 爆掉
檢查~/.forward
有沒有forward出去?
有沒有使用procmail?
沒有則設定forward給其他email
procmail檢查完預設放入mailbox
csmailgate
procmail - procmailrc format
:0 <flag>
* <regex>
<action>
csmailgate
procmail - procmailrc flag
c: 將郵件複製一份
H: 只檢查header(預設)
B: 只檢查body
csmailgate
procmail - procmailrc action
檔案
資料夾
filename ($MAILDIR/filename)
dir ($MAILDIR/dir/)
! email@address
程式
|command
csmailgate
procmailrc

csmailgate
maildrop
system: /usr/local/etc/maildroprc
user: ~/.mailfilter
csmailgate
maildrop -- pattern
/regex/[:option]
option
h: 只檢查header(預設)
b: 只檢查body
w: 檢查header跟body
D: 區分大小寫(預設不區分大小寫)
csmailgate
maildrop -- 指令
to
exit 結束判斷
to filename 存到檔案
to dir 存到資料夾
to "| command" pipe給程式
cc "! mail@address" 把信寄給另一個email
xfilter "command" 修改信件內容
log "string" 寫log
csmailgate
maildroprc


csmail
postfix
使用dovecot做SASL認證
強制使用TLS
除了root外做masquerade
user@abc.cs.nctu.edu.tw -> user@cs.nctu.edu.tw
csmail
postfix
smtpd_client_restrictions
permit_mynetworks, permit_sasl_authenticated
smtpd_recipient_restrictions
check_client_access pcre:/usr/local/etc/postfix/allow_unauth, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
csmail
postfix
開啟smtps讓smtp被擋時還可以使用
開啟7788讓smtp&smtps都被擋時還可以用(csmail3)
csmail
dovecot
開放imap, imaps, pop3, pop3s
強制SSL
透過NFS把netapp4:/vol/mail mount起來
使用fcntl做lock,且timeout為300 sec
mail_location = mbox:~/:INBOX=/var/mail/%u
csmail
dovecot
csmail在讀信時會在netapp4上建立lock file
讀完信會刪掉lock file
若連線中斷,lock file不會刪除
需要登入netapp4手動刪除
只有mail組長、AllTa、PhdTa知道密碼
csmail
dovecot -- netapp4 lock file solve
priv set advanced
lock status -f
lock break -p NLM -h csmailN.cs.nctu.edu.tw
lock status -f
priv set
csmailgate & csmail
By allenwhale
csmailgate & csmail
- 557