庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>操作系统>FreeBSD>应用技术>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

FreeBSD procmail

 作者:本站收集   日期:2005-3-13
字号选择〖 〗/ 双击滚屏 单击停止   

◎官方網站: http://www.procmail.org/ ◎敘述 基本上來說 procmail 可以和個人 .forword 轉信檔案結合. 不過若是以系統管理者安裝的話,可以直接結合 mailer 送信程式. 當procmail啟動時,首先會先設定一些環境變數作為預設的變數. 並且從stdin(標準輸入) 讀取郵件訊息,從表頭中區分郵件主體. 此時,若沒有執行其他的命令列參數,procmail將會讀取家目錄下的 .procmailrc 檔案 依據這個檔案進行處理,郵件訊息將會分散到右邊的資料夾. 如果找不到rc檔案,或是rc檔案處理失敗, procmail將會把信件存到系統原先預設的郵件位置. 如果rc檔案不存在 或是沒有附加上 -p 參數執行, procmail 將會優先讀取 家目錄中的 .procmailrc 檔案. 此檔案用來解釋 /usr/local/etc/procmailrc 命令.(如果此檔案存在的話..= =") 所以當建立 /usr/local/etc/procmailrc 時,請務必留心. 如果情況允許,請用root權限進行處理. 若透過 suid root 或是以root權限執行,procmail可以視為郵件遞送媒介. procmail也可以視為一個普通的郵件過濾器. procmail也可以作為用來專門解決郵件過濾. 例如:先前版本被用來鑲入sendmail規則. 關於rc檔案的格式,請參閱 procmailrc(5) 更進一步的資料,請參閱 procmailsc(5) 相關rc檔案的範例檔,請參閱 procmailex(5) ◎安裝 ◎語法 procmail [-ptoY] [-f fromwhom] [parameter=value | rcfile] ... procmail [-toY] [-f fromwhom] [-a argument] ... -d recipient ... procmail [-ptY] -m [parameter=value] ... rcfile [argument] ... procmail [-toY] [-a argument] -z procmail -v ◎執行參數 -v 顯示版本資訊,包含編譯時間,設定檔.. -p 保留任何的舊環境變數.通常procmail在啟動時會清除環境變數. (except for the value of TZ) 一般來說,procmail會蓋過所有已經存在的環境變數. 也就是說他會*快樂的*用自己定義的變數,蓋過任何先前已經定義的環境變數. 至於有哪些環境變數會被預先設置 請參閱 procmailrc(5) 若 -p-m 參數被定義, 那麼會被預先設定 LOGNAME, HOME, SHELL, ORGMAIL 和 MAILDIR. -t 當procmail無法遞送郵件時不會被退信而是把信件放到郵件暫存區稍後再試. -f fromwhom 讓procmail重建郵件的"From" ,讓fromwhom做為郵件的寄發者. 若fromwhom包含-符號,則procmail只是單純的變更From部分的修改時間. (若From部分不存在,則會產生一個新的) -o 簡單的覆蓋假造的"From"部分,而非允許每一個人都可以產生"From"部分. -Y 呈現傳統的Berkeley郵件信箱格式,忽略Content-Length部分. -a argument 設定變數1($1)的值為argument.用來傳遞meta訊息. 主要是用來傳遞針對sendmail mailer規則中關於$@x 訊息. (泡泡:$@為the host,x則為full-name) -d recipient 明確的遞送模式,遞送程式以本機的使用者為遞送收件者 -m 將procmail視為單純的郵件過濾器.以此模式執行必須先行定義rc檔案. 若rc完整檔案路徑為 /usr/local/etc/procmailrcs/ 開始, 則procmail將會具有此檔案的擁有者身分. -z 開啟LMTP模式(Local Mail Transfer Protocol) ◎說明 任何參數包含 = 將會被視為指定環境變數. 其餘參數將會被認定為rc檔案路徑 (若非使用完整路徑或用./表示目前資料夾,其餘都是以家目錄為相對路徑) 除非加上-m參數,若加上此參數情況則以目前資料夾做為相對路徑. 若沒有定義rc檔案,procmail將會讀取家目錄下的.procmailrc 檔案. 再不然的話,則會以命令列定義的變數執行. ◎範例:
  雖然 man page 說您若不是對 sendmail.cf 語法非常熟悉的管理者
  ,請跳過這一部份 .. 不過泡泡還是有加註一些說明,希望您能夠大概了解.
  若真有興趣去翻翻 Eric Allman 寫的 sendmail 書籍 O'REILLY 出版.
當procmail要與sendmail規則相結合時,常會用到-m參數. 為了達到這個目的,在sendmail.cf檔案中額外建立procmail的mailer是非常方便的. 看起來可能會像是這個樣子: Mprocmail, P=/usr/local/bin/procmail, F=mSDFMhun, S=11, R=21, A=procmail -m $h $g $u
   泡泡說明:
   M 設定義郵件遞送程式(mail delivery agent)
   P 設定程式路徑
   F 設定程式參數
   S 定義採用哪一個規則(rule set)來改寫郵件寄件者的email位址.
   R 定義採用哪一個規則(rule set)來改寫郵件收件者的email位址.
   A 設定程式於命令列執行時採用的參數
可以讓您用類似以下的規則來進行郵件過濾: R$*<@some.where>$* $#procmail $@/etc/procmailrcs/some.rc $:$1@some.where.procmail$2 R$*<@$*.procmail>$* $1<@$2>$3 Already filtered, map back
   泡泡說明:   
   符合 任意字串含空字元($*)<@some.where>任意字串含空字串($*)  則
   郵件遞送程式($#)為procmail
   來源host($@)為/etc/procmailrcs/some.rc
   使用者($:)為$1@some.where.procmail$2

   在符合第一行規則(R)後 進行第二行規則比對.

   符合 任意字串含空字元($*)<@任意字串含空字元($*).procmail>任意字串含空字元$*
   化簡為 $1<@$2>$3
   Already filtered, map back只是單純的註解.

   第一行定義 mail delivery agent (郵件遞送程式), host 和 user ;
   第二行把email address進行簡化.
rc檔案的範例: SENDER = "<$1>" # fix for empty sender addresses SHIFT = 1 # remove it from $@ :0 # 主題包含junk的信件 送往 /dev/null * ^Subject:.*junk /dev/null :0 w # 放行其他信件 ! -oi -f "$SENDER" "$@" ◎小結: 結合sendmail後,剩下來的就是編輯過濾方式,就可以完成相關的 procmail 設定. ◎相關檔案: /usr/local/etc/procmailrc 基本全域性的rc設定檔案 /usr/local/etc/procmailrcs/ rc檔案的存放資料夾 $HOME/.procmailrc 個人的procmail設定檔 ◎注意: 由於 /usr/local/etc/procmailrcs/ 資料夾非常特殊, 若一般使用者能夠在此使用chown權限,那麼就會取得root或是其他使用者的權限. 所以最低限度,請務必讓這個資料夾只能夠讓root執行.
   泡泡說明:
   若使用者test新增一個檔案內容為 rm -rf / 並且以test帳號身分執行該檔案
   那麼該使用者就可以編輯那個檔案並且取得以root執行的權限.
   並刪除所有磁區
◎作者: Stephen R. van den Berg <srb@cuci.nl> Philip A. Guenther <guenther@sendmail.com> ◎資料來源: procmail(1)
安裝說明設定檔說明執行procmail泡泡的設定檔
上一篇:FreeBSD sendmail升级    下一篇:FreeBSD openwebmail服务  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-3-13
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿