廣告

2025 年 1 月
 12345
6789101112
13141516171819
20212223242526
2728293031  

彙整

電腦打版-自製空軍41作戰隊隊徽(臂章)

這是台明學生用品社 tm.infinity.idv.tw 自行打版使用電腦繡製作而成的臂章(背部可上魔鬼沾),若喜愛收集空軍相關物品的收藏家請勿錯過。

 IMG_0678

 IMG_0679

 IMG_0681

 IMG_0682

 IMG_0683

日本來的禮物-國民品牌服飾與影城專屬吊飾、泡麵

是的,您沒看錯標題,泡麵也可以很特別…

這是朋有去日本買給我的禮物,先來看看UNIQLO的 變態紫色襯衫 與 蜘蛛人吊飾 吧,今年的流行元素–格子衫
(迷之音:這不是之前就流行過了嗎?)
是阿,想看看現在年輕人把褲子改的窄窄的,10多年前我們不也流行過,現在看起來還真不好看,穿起來好看的真的不多,要瘦高腿長的才會好看,偏偏台灣的都屬腿短型,不合適也…
(迷之音:原來是阿北(阿伯)來的…)
靠~~北~~邊走路…

IMG_0658 

 

變態紫色稱衫,因為阿北…不不不,是哥哥長的帥,穿啥都好看 XD
(迷之音:與曹操齊名!)
怎?
(迷之音:臉皮真厚!)
………
IMG_0649

 

L號太大了,看看價格折合台幣約幾百塊吧,聽說後來來台灣開的店賣1千多塊。
(迷之音:明明就很緊繃…)
………

IMG_0650

IMG_0651

 IMG_0652

 

史努比與蜘蛛人泡麵,份量適合減肥的人吃…
(迷之音:剛剛好適合阿北)

IMG_0653 

IMG_0654

 IMG_0655

IMG_0656 

 

捨不得吃呢,擺著當裝飾吧~~
(迷之音:過期前肯定被吃…)
您真了解我!

IMG_0657

SamSung(三爽) i9000配中華電信優惠密辛

最近看中了三爽 i9000,朋友對於泡菜很感冒,對我說不要買韓國貨,但是人家產品設計很成功,堪稱現在的Android機王一點也不為過………對於科技產品我是沒啥民族意識,只道東西好用否?

我的門號是中華電信,但是中華電信並沒有與 三爽 i9000 有綁約活動,那坊間為何通訊行卻可以做綁約的活動,原來是用iPhone綁約的活動,幫你申請iPhone 4,然後再用i9000跟你換iPhone4,iPhone 4 16g空機價約26000,但i9000 8G約19000,這中間價差就是通訊行願意做的原因………………

有些人想說自己辦 iPhone 4 然後賣掉再買空機 i9000,不過前題是也要賣的出去…

好大的Iphone!

好大的Iphone!

http://mag.udn.com/mag/digital/storypage.jsp?f_MAIN_ID=319&f_SUB_ID=2940&f_ART_ID=281563

使用Mailscanner 的 Archive Mail 備份郵件

最近MAIL常出現主旨為 : Problem Messages

內容為:

Archive:
Number of messages: 5
Tries Message Last Tried
===== ======= ==========
6 3553C24D80D2.A0925 Sat Oct 30 04:57:38 2010
6 10ED024D80EC.AC79E Sat Oct 30 04:56:25 2010
6 2FF5D24D80D7.AD62C Sat Oct 30 04:53:05 2010
6 DC7FD24D80BD.AC95D Sat Oct 30 04:43:07 2010
6 73A4D24D80C2.A16DF Sat Oct 30 04:42:41 2010

找著找著找到了Mailscanner 的 Archive 用法

文章出處:http://i-yow.blogspot.com/2009/07/archive-mailby-mailscanner.html

=====================================================

邪惡的Archive Mail備份郵件(By MailScanner)
MailScanner有一個邪惡又好用的功能:『Archive Mail』
這個比Forward還要厲害的功能,當你想要存留(備份)用戶收、發的信件時,用這就就對了~

1.啟動Archive功能
vim /etc/MailScanner/MailScanner.conf
Archive Mail = /etc/MailScanner/archive.rule

2.編輯Archive規則
vim /etc/MailScanner/archive.rule
基本規則如下:
FromOrTo: User@mail.com* yes forward Admin@mail.com.tw
(收件者或寄件者) (關鍵字,可配合萬用字元) (yes,啟用規則) (forward,動作) (Forward的目標)

※Archive Mail不但可以過濾到本機網域的帳號,也可以以外部帳號作為關鍵字,只要有經過MailScanner掃描的都可以做處理。
※以上只是簡單的例子,Archive Mail還有許多變化跟應用

======================================================

Windows系統日誌管理

今日公司有台SERVER被入侵,修改了帳號密碼,應該也有植入木馬程式………還好前陣子把環境移植到 VM ESXi Server環境,對系統做了備份,故今日很快的恢復系統運作,但對於被入侵的Server,看不出端倪,因為系統日誌檔被刪除了,但對外防火牆的記錄看不出有任何對該台Server異常連線的記錄,故有點擔心是由內部引起的………

已請管理的同事對該台Server做了一些安全上的設定:
1.找時間關閉Guest,要連線請都使用帳號密碼連線(無AD就將使用者本機帳號密碼也建立一份在SERVER上),分享目錄請把Everyone權限拿掉,改特定帳號密碼。
2.關閉奇怪的帳號 kurt$ , 這帳號既然有本機Admin權限。怎麼來的也不清楚,只知道是廠商裝完系統後出現的帳號。

找了一下怎麼備份日誌檔,雖然並不能百分百記錄到駭客入侵前所有記錄,但多一份備份就多一份機會找出問題點,當然希望以後是用不到才是。

=======================================

文章出處:http://forum.slime.com.tw/thread65618.html

日誌對於系統安全的作用是顯而易見的,無論是網路管理員還是黑客都非常重視日誌,一個有經驗的管理員往往能夠迅速通過日誌瞭解到系統的安全效能,而一個聰明的黑客往往會在入侵成功 後迅速清除掉對自己不利的日誌。下面我們就來討論一下日誌的安全和新增問題。
一:概述:
Windows 2000的系統日誌文件有應用程式日誌,安全日誌、系統日誌、DNS伺服器日誌等等,應用程式日誌、安全日誌、系統日誌、DNS日誌預設位置:%systemroot%\system32\config,預設文件大小512KB。
安全日誌文件:%systemroot%\system32\config\SecEvent.EVT
系統日誌文件:%systemroot%\system32\config\SysEvent.EVT
應用程式日誌文件:%systemroot%\system32\config\AppEvent.EVT
這些LOG文件在註冊表中的:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog有的管理員很可能將這些日誌重定位。其中EVENTLOG下面有很多的子表,裡面可查到以上日誌的定位目錄。
二:作為網路管理員:
1.日誌的安全配置:
預設的條件下,日誌的大小為512KB大小,如果超出則會報錯,並且不會再記錄任何日誌。所以首要工作是更改預設大小,具體方法:註冊表中HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog對應的每個日誌如系統,安全,應用程式等均有一個maxsize子鍵,修改即可。
下面給出一個來自微軟站點的一個指令碼,利用VMI來設定日誌最大25MB,並允許日誌自行覆蓋14天前的日誌:
該指令碼利用的是WMI對像, WMI(Windows Management Instrumentation)技術是微軟提供的Windows下的系統系統管理工具。通過該工具可以在本機或者管理客戶端系統中幾乎一切的信息。很多專業的網路系統管理工具都是關於WMI開發的。該工具在Win2000以及WinNT下是標準工具,在Win9X下是擴展安裝選項。所以以下的程式碼在2000以上均可執行成功。
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Security)}!\\" & _
strComputer & "\root\cimv2") \’獲得VMI對像
Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile")
For each objLogfile in colLogFiles
strLogFileName = objLogfile.Name
Set wmiSWbemObject = GetObject _
("winmgmts:{impersonationLevel=Impersonate}!\\.\root\cimv2:" _
& "Win32_NTEventlogFile.Name=\’" & strLogFileName & "\’")
wmiSWbemObject.MaxFileSize = 2500000000
wmiSWbemObject.OverwriteOutdated = 14
wmiSWbemObject.Put_
Next
將上述指令碼用記事本儲存碟為vbs為後面的即可使用。
另外需要說明的是程式碼中的strComputer="."在Windows指令碼中的含義相當於localhost,如果要在遠端主機上執行程式碼,只需要把"."改動為主機名,當然首先得擁有對方主機的管理員權限並建立IPC連接.本文中的程式碼所出現的strComputer均可作如此改動。
2. 日誌的查詢與制作備份:
一個優秀的管理員是應該養成制作備份日誌的習慣,如果有條件的話還應該把日誌轉存到制作備份電腦上或直接轉儲到列印機上,在這裡推薦微軟的resourceKit工具箱中的dumpel.exe,他的常用方法:
dumpel -f filename -s \\server -l log
-f filename 輸出日誌的位置和檔案名
-s \\server 輸出遠端電腦日誌
-l log log 可選的為system,security,application,可能還有別的如DNS等.
如要把目標伺服器server上的系統日誌轉存為backupsystem.log可以用以下格式:
dumpel \\server -l system -f backupsystem.log
再利用計劃工作可以實現定期制作備份系統日誌。
另外利用指令碼編程的VMI對象也可以輕而易舉的實現日誌制作備份:
下面給出制作備份application日誌的程式碼:
backuplog.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2") \’獲得 VMI對像
Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName=\’Application\’") \’獲取日誌對像中的應用程式日誌
For Each objLogfile in colLogFiles
errBackupLog = objLogFile.BackupEventLog("f:\application.evt") \’將日誌制作備份為f:\application.evt
If errBackupLog <> 0 Then
Wscript.Echo "The Application event log could not be backed up."
else Wscript.Echo "success backup log"
End If
Next
程序說明:如果制作備份成功將視窗提示:"success backup log" 否則提示:"The Application event log could not be backed up",此處制作備份的日誌為application 制作備份位置為f:\application.evt,可以自行修改,此處制作備份的格式為evt的原始格式,用記事本開啟則為亂碼,這一點他不如dumpel用得方便。
三:作為黑客
1、日至清除
一個入侵系統成功後的黑客第一件事便是清除日誌,如果以圖形界面遠端控制對方機器或是從終端登入進入,刪除日誌不是一件困難的事,由於日誌雖然也是作為一種服務執行,但不同於http,ftp這樣的服務,可以在指令行下先停止,再刪除,在m指令行下用net stop eventlog是不能停止的,所以有人認為在指令行下刪除日誌是很困難的,實際上不是這樣,下面介紹幾種方法:
(1)借助第三方工具:如小榕的elsave.exe遠端清除system,applicaton,security的軟體,使用方法很簡單,首先利用獲得的管理員帳號與對方建立ipc會話,net use \\ip pass /user: user
然後指令行下:elsave -s \\ip -l application -C,這樣就刪除了安全日誌。
其實利用這個軟體還可以進行制作備份日誌,只要加一個參數 -f filename就可以了,在此不再詳述。
(2)利用指令碼編程中的VMI,也可以實現刪除日誌,首先獲得object對象,然後利用其clearEventLog()方法刪除日誌。來源碼:
cleanevent.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2")
dim mylogs(3)
mylogs(1)="application"
mylogs(2)="system"
mylogs(3)="security"
for Each logs in mylogs
Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName=\’"&logs&"\’")
For Each objLogfile in colLogFiles
objLogFile.ClearEventLog()
Next
next
在上面的程式碼中,建立一個陣列,為application,security,system如果還有其他日誌也可以加入陣列。
然後用一個for 循環,刪除陣列中的每一個元素,即各個日誌.
2、新增日誌:
刪除日誌後,任何一個有頭腦的管理員面對空空的日誌,馬上就會反應過來被入侵了,所以一個聰明的黑客的學會如何偽造日誌:
(1)利用指令碼編程中的eventlog方法是創造日誌變得非常簡單;下面看一個程式碼
createlog.vbs
set ws=wscript.createobject("Wscript.shell")
ws.logevent 0 ,"write log success" \’新增一個成功執行日誌
這個程式碼很容易閱讀,首先獲得wscript的一個shell對象,然後利用shell對象的logevent方法
logevent的用法:logevent eventtype,"description" [,remote system]
eventtype 為日誌類型,可以使用的如下:0 代表成功執行;1 執行出錯;2 警告;4 信息;8 成功審計;16 故障審計
所以上面程式碼中,把0改為1,2,4,8,16均可,引號下的為日誌描述。
這種方法寫的日誌有一個缺點,只能寫到應用程式日誌,而且日至來源只能為wsh,即Windows scripting host,所以不能起太多的隱蔽作用。
(2)微軟為了方便系統管理員和程序員,在xp下有個新的指令行工具,eventcreate.exe,利用它,新增日誌更加簡單。
eventcreate -s server -l logname -u username -p password -so source -t eventtype -id id -d description
含義:-s 為遠端主機新增日誌: -u 遠端主機的用戶名 -p 遠端主機的用戶密碼
-l 日誌;可以新增system和application 不能新增security日誌,
-so 日誌來源,可以是任何日誌 -t 日誌類型 如information信息,error錯誤,warning 警告,
-d 日誌描述,可以是任意語句 -id 自主日誌為1-1000之內
例如,我們要本機新增一個系統日誌,日至來源為admin,日誌類型是警告,描述為"this is a test",事件ID為500
可以用如下參數
eventcreate -l system -so administrator -t warning -d "this is a test" -id 500
這個工具不能新增安全日誌。至於如何新增安全日誌,希望大家能夠找到一個好方法!

=================================================================

另一篇使用Script自動備份維護LOG檔

文章出處:http://jiemelody.blog.51cto.com/405459/331906

前言:
在管理windows平台的服務器時,常常在系統發生問題或是服務器上運行的服務發生異常時,我們第一個一定是先打開"事件檢查器" 來查看Eventlog,查看是不是有異常的訊息產生,但是windows的log產生默認下是不會以日期來自動備份的,往往要找一個問題都要在一堆 log裡翻呀找呀,好不方便,如果能夠每天在午夜12點59分整以全文字檔備份每天的eventlog,那我們就可以在問題發生時,把我們要查找的 eventlog以照日期調閱出來,方便又快速~以下小弟我就寫了一個很小但又方便的dos scripts提供給大家參考囉!
一.實作:
首先scripts的組成有以下三個檔案
1.Dump_eventlog.cmd  –>這支Scripts是把eventlog Dump出來共以全文字檔 txt來存檔
2.dumpel.exe –>這是一支工具程式,因為如果用windows內建的匯出eventlog功能,匯出來的後綴檔名是.evt,以文字編程工具打開來會是亂碼,一定要用windows的事件檢查器打來看才行,那就太煩人了,所以我們用這支程式加上上一支 scripts就可以匯出後綴檔名為.txt的log檔,要查看就方便多了!
3.del_eventlog.vbs –>這支是用wsh編程編寫的scripts,功用是清空系統的eventlog記錄,有人要問了,我們不是要備份log嗎為什麼需要這支來刪除呀!
還記得剛才說的嗎?我們是要備份每天的系統Log檔,所以用排程排定在每天的午夜12:59備份系統Log後,就利用這支scripts清空系統裡舊的 log,那樣我們每天備份的eventlog就會是完完整整的一整天,而不是好幾天混雜在一起的log備份!
二.代碼說明
接下來我就要解說代源的寫法囉
1.Dump_eventlog.cmd 
———————————- 源代碼 ————————————————————
@echo Off
mkdir %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%
@echo ******* start Backup Eventlog ******
dumpel -s 127.0.0.1 -l system -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/system.log
dumpel -s 127.0.0.1 -l application -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/application.log
dumpel -s 127.0.0.1 -l security -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/security.log
@echo ******* Finish Backup Eventlog ******
star /min del_eventlog.vbs
———————————————————————————————————
說明:
代碼不含上下二條虛線喔!第二行是我們要建立一個以日期為名稱的資料夾
因為windows的date抓取的日期變數會是2005/02/23 星期三"這樣的文字,其內的斜線(/)或減號(-)都是用做命令列的選項符號,這樣的組合可能會造成錯誤。
在此最簡單的方法便是用環境變數的擴充功能了,用%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%,我們就可以抓取以 2006-10-20這種格式的日期,4~6行則是利用dumpel 這支程式把 security 、application 、system 三項log記錄匯出來以txt檔備份到以當天日期命名的資料夾裡,ip我是用本機,請依照自己的需要改成你自己主機的ip,star /min del_eventlog.vbs這行則是在備份完之後清空系統的log記錄,原因,前面我們己經說過了!把上面的源碼copy並存成.bat或.cmd 的檔名就可以了!
2.del_eventlog.vbs
————————————-源代碼 ———————————————————–
‘刪除Evenlog
strComputer= "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2")
dim mylogs(3)
mylogs(1)="application"
mylogs(2)="system"
mylogs(3)="security"
for Each logs in mylogs
Set colLogFiles=objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName=’"&logs&"’")
For Each objLogfile in colLogFiles
objLogFile.ClearEventLog()
Next
Next
———————————————————————————————————
說明:
代碼不包含上下二條虛線喔!這支是清空系統eventlog的wsh編程 scripts,這裡就不多做介紹了,有興趣可以到微軟的腳本範例網站看看,上面有對wsh的做很多的介紹也有範例檔可下來研究!
http://www.microsoft.com/china/technet/community/scriptcenter/default.mspx
以上三支scripts我有提供我寫好的碼代碼在附件裡,大家可以玩看看,歡迎修改,
eventlog的備份也許有些人覺得沒什麼重要,但以筆者我,在管理大量主機時,尤其我又是管理線上遊戲服務器,對於系統異常狀況的掌控就是非常重要的了~

Large Mailbox threshold 40MB之Syslog警訊

發現Syslog只要信箱超過40MB都會出現警訊:

Large Mailbox threshold: 40MB (41943040 bytes)
  Warning: Large mailbox: teresa.wu (1151343331)
  Warning: Large mailbox: karen.wang (489717393)

GOOGLE了一下知道怎麼改這個設定:

在 [root@mail ~]# vi /usr/share/logwatch/default.conf/services/sendmail-largeboxes.conf中 <==CentOS 5.5內位置有變動

  # Mailbox size threshold

# can add units KB, MB, GB, TB

# can set to 0 to report spool files being created where they shouldn't

sendmail_largeboxes_size = 40MB

# 改為希望的大小就可以了。

 

文章出處:http://linuxdiary.blogspot.com/2008/10/logwatch.html

Winmail.dat -TNEF格式文件

今天看mail server log看到這樣的訊息:

Message C187524D806E.A9FB1 has had TNEF winmail.dat removed : 1 Time(s)

再查MAILLOG看到:

Oct 27 12:14:35 mail MailScanner[28827]: New Batch: Scanning 1 messages, 50620 bytes
Oct 27 12:14:35 mail MailScanner[28827]: Expanding TNEF archive at /var/spool/MailScanner/incoming/28827/C187524D806E.A9FB1/winmail.dat
Oct 27 12:14:35 mail MailScanner[28827]: Message C187524D806E.A9FB1 has had TNEF winmail.dat removed
Oct 27 12:14:35 mail MailScanner[28827]: Virus and Content Scanning: Starting
Oct 27 12:14:36 mail MailScanner[28827]: Requeue: C187524D806E.A9FB1 to 5610124D80C9

然後GOOGLE一下:TNEF找到下面文章,文章出處:http://translate.google.com.tw/translate?hl=zh-TW&sl=zh-CN&u=http://moment.blog.51cto.com/1125796/330328&ei=HNfITMaCLIGivQPW7tiVCQ&sa=X&oi=translate&ct=result&resnum=9&ved=0CFUQ7gEwCA&prev=/search%3Fq%3DTNEF%26hl%3Dzh-TW%26sa%3DG%26biw%3D1280%26bih%3D905

Winmail.dat -TNEF格式文件

今天看到有個同事收到的郵件,裡邊有個奇怪的附件Winmail.dat不知道怎麼打開,信裡也沒別的有效內容了,沒辦法,只好動用法寶先用記事本強制打開發現含有IPM. Microsoft Mail.Note之類的信息。 再動用google才了解到,原來這是微軟的Email傳輸不確定封裝格式,直接用MS Office Outlook收取才能打開,如果用其它終端收取再用MS Office Outlook 也無法識別打開。 後來在網上找到了好幾個開這種附件的軟件,發現這個Winmail Opener最好用。 放在這裡,方便大家,下載地址: http://www.eolsoft.com/download/winmail_opener.exe

順便介紹一下相關知識:
TNEF
Exchange Server 2003 使用傳輸不確定封裝格式(TNEF) 將MAPI 郵件轉換為RFC 822 格式。 TNEF 以application/ms-tnef 類型的MIME 附件的形式出現在郵件中。 該附件的名稱為Winmail.dat。 它包含完整的郵件內容以及所有附加文件。 只有MAPI 客戶端(如Outlook)能夠對Winmail.dat 附件進行解碼。 非MAPI 客戶端無法對TNEF 進行解碼,並且可能將Winmail.dat 顯示為典型但無用的文件。
Note :
在以下幾種可能的Exchange 對Exchange 傳輸情形下,必須進行MAPI 到RFC 822 的轉換:
收件人在同一路由組中的Exchange 服務器上Exchange Server 2003 將MAPI 郵件轉換為Summary-TNEF (S/TNEF) 格式,這是一種特殊的傳輸不確定封裝格式(TNEF),沒有純文本部分,並且以八位的二進制格式傳送。 S/TNEF 郵件僅僅包含Winmail.dat。 Note :
收件人在另一個路由組中的Exchange 服務器上,並且Exchange 組織在純模式下工作Exchange Server 2003 將MAPI 郵件轉換為Summary-TNEF (S/TNEF) 格式,因為純模式下的Exchange 組織只能包含支持二進制MIME 的Exchange 2000 Server 服務器和Exchange Server 2003 服務器。
收件人在另一個路由組中的Exchange 服務器上,並且Exchange 組織在混合模式下工作在混合模式下,有可能將Exchange Server 5.5 的Internet 郵件服務用作SMTP 連接器,但是Internet 郵件服務不支持二進制MIME。 由於S/TNEF 的RFC 822 表示(由IMAIL 產生)是二進制MIME,因此Internet 郵件服務無法傳輸S/TNEF 郵件。 由於Exchange 分類程序無法預先檢測到郵件將採用什麼路由路徑,因此在混合模式下,分類程序不為本地路由組外部的服務器上的收件人進行郵件轉換,也就是不將郵件轉換為S/TNEF 。 為了在傳輸路徑中容納可能的Internet 郵件服務實例,Exchange 分類程序將郵件轉換為純文本部分以及舊版TNEF 格式附件。 舊版TNEF 格式是Internet 郵件服務能夠傳輸的七位MIME。
收件人是本地Exchange 組織之外的MAPI 收件人用戶和管理員可以為外部郵件環境中使用Outlook 的收件人啟用跨本地Exchange 組織邊界的TNEF 傳輸。 由於收件人不在本地Exchange 組織中,Exchange 分類程序無法確定郵件傳輸中涉及到的所有SMTP 主機是否都支持二進制MIME。 因此,Exchange 分類程序將郵件轉換為純文本部分以及舊版TNEF 格式的附件。

Note :
發送到公用文件夾中的MAPI 郵件發送到公用文件夾中的郵件始終以舊版TNEF 格式中繼。 本節後面提供了有關公用文件夾郵件處理的詳細信息。
通過SMTP 發送到展開服務器的MAPI 郵件如果郵件包含通訊組列表,並且明確指定的展開服務器不是本地服務器,郵件將以舊版TNEF 格式轉發到展開服務器(如果使用SMTP 傳輸郵件)。 在這種情況下,會將一個屬性放入郵件傳輸信封中通過XEXCH50 傳輸。 該屬性通知展開服務器最初通過Exchange 存儲驅動程序收到郵件的時間。 展開服務器上的分類程序展開通訊組列表後,必須分別對每個收件人應用有效的RFC 822 郵件格式。 分類程序使用Exchange 存儲驅動程序將郵件複製到Exchange 存儲中,IMAIL 再從Exchange 存儲中讀取TNEF 數據並用原始郵件的提交時間構建MAPI 郵件。 之後,SMTP 傳輸子系統便能夠從存儲中讀取符合收件人格式要求的RFC 822 格式MAPI 郵件。
可以通過添加以下註冊表項,控制發送郵件的TNEF 格式行為。 數字nn 代表此計算機的虛擬服務器實例。
位置HKey_Local_Machine\Software\Microsoft\Exchange\StoreDriver\Exchange\ nn \EnableTnef
值Disabled
類型REG_DWORD
數值數據0×0
描述如果值為0×0,則禁用TNEF,不使用TNEF 生成郵件。 如果值為0×1,則使用舊版TNEF 生成郵件,此時通常生成S/TNEF。 值為0×2 則沒有任何影響,因為這是默認行為。

Postfix 郵件格式由 mbox 轉 maildir – 解決mbox LOCK與alias群組重複收信問題

2010-10-27

mbox 與 maildir 優缺點比較:

===========================================================

mbox 與 maildir 之優缺點比較

這裡給出一個基本的特性對比,很容易就能清楚自己的程式應該選什麼存儲格式:

可靠性

優選是 maildir,因為 mbox 只有一個檔案,一旦出問題,所有郵件可能一併損毀。

更新效能

這裡主要指的是刪除/ 增加郵件的能力,無疑 maildir 完勝 mbox

搜尋速度

這點 mbox 因為是單檔案,搜尋能力要強於 maildir

並行存取能力

對於繁忙的郵件系統,多個 Process 同時存取同一封郵件是可能的事情,mbox 需要 flock() 的支援,而且如果某一個 Process 操作時間長,則其他所有 Process 都堵塞了。maildir 沒有這個問題。在 NFS 等網路檔案系統上,maildir 相對安全,mbox 則不能用於此類型環境

擴充能力

現下的郵箱容量已經不是十年前的 MB, 而是 GB,mbox 應付大容量已力不從心,無疑 maildir 是比較適合的。

檔案系統倚賴

maildir 較倚賴檔案系統的索引能力,用 ReiserFS 會比較快,對於超大型的 maildir,讀寫性能將受到考驗。相對而言 mbox 則不存在這個問題。

總合結論

使用 maildir 格式,安全可靠,大部分操作都快於 mbox。而且現今支援 maildir 的軟體越來越多。

===========================================================

 

2010-10-26

1.轉換信件後變成一封信一個檔案,因權限沒正確修改好,故手動修正了好一陣子 >_<

2.
/var/spool/maildir/帳號/cur <=看過的信如果還保留在SERVER上的信就存這
/var/spool/maildir/帳號/new <=新進的信還沒看過就存這
/var/spool/maildir/帳號/tmp <=收信件暫存區,收完信後才移到new

3.換了這個maildir格式後,感覺MAIL SERVER很順,以前收發都會卡,可能就是因為mbox的LOCK機制造成。

4.用maildir格式要是使用者人很多,且都有留幾天信在SERVER上的習慣,那要特別留意檔案數量與 Inode 數量,超過就無法在寫入磁碟。

[root@mail ~]# df -i
檔案系統              Inode    I已用  I可用 I已用% 掛載點
/dev/sda1            3840192   24549 3815643    1% /
/dev/sda6            98074624   10654 98063970    1% /var
/dev/sda3            2560864  117080 2443784    5% /usr
/dev/sda2            25624576   10116 25614460    1% /home
tmpfs                 221892       1  221891    1% /dev/shm

 

2010-10-25

Postfix 郵件格式由 mbox 轉 maildir ,maildir格式可避免mbox格式 LOCK鎖檔案造成 aliases 的群組人員重複收到信。

格式說明出處:http://www.creativecrap.com/story/software/mbox-to-maildir

========================================

mbox mail storage format

這是傳統的郵件格式,將所有的信件都存在一個檔案中,所以相對的會有很多的缺點,包含當檔案太大時存取的效率即變差,若郵件檔損毀則所有的信件都沒了,同時只能有一個 process 存取,第二個 process 須等第一個 unlock 之後,才能存取。優點應該是簡單,單一檔案搜尋時較快,大部份預設值都還是 mbox,備份時也方便,因為只有一個檔案。

maildir mail storage format

這就是比較新的格式,沒記錯的話早先是由 Qmail 開始使用。將每一封信件就單獨存成一個檔案。相對於 mbox 的缺點即 maildir 的優點,反過來搜尋速度就是 maildir 的缺點了。

========================================

以下是看旗標 Linux Mail Server 技術實務來測試轉換(因自架MAIL SERVER於VM中,故先行快照,避免有問題時可回復原狀)

停止 MTA 服務(Mailscanner)
[root@mail ~]# /etc/init.d/MailScanner stop
Shutting down MailScanner daemons:
         MailScanner:                                      [  確定  ]
         incoming postfix:                                 [  確定  ]
         outgoing postfix:                                 [  確定  ]

[root@mail ~]# /etc/init.d/dovecot stop
正在停止 Dovecot Imap:                                     [  確定  ]

建立 maildir 格式存放目錄:
[root@mail ~]# mkdir /var/spool/maildir

查看原先mbox存放目錄的擁有者
[root@mail ~]# ls -ld /var/spool/mail
drwxrwxr-x 2 root mail 4096  1月 27  2010 /var/spool/mail

建立 maildir 與 mbox 目錄一樣的擁有者權限
[root@mail ~]# chown root.mail /var/spool/maildir/

建立 maildir 目錄存取權限
[root@mail ~]# chmod 1777 /var/spool/maildir/

修改 vi /etc/postfix/main.cf
[root@mail ~]# vi /etc/postfix/main.cf
………
home_mailbox = Maildir/
mail_spool_directory = /var/spool/maildir/
mailbox_command = /usr/bin/procmail -a "$EXTENSION" DEFAULT=/var/spool/maildir/$USER/ MAILDIR=/var/spool/maildir/$USER/ <==指定收件路徑,不指定會送到mbox信箱
………

修改 vi /etc/dovecot.conf
[root@mail ~]# vi /etc/dovecot.conf
……
mail_location = maildir:/var/spool/maildir/%u (書上寫的是 default_mail_env = maildir:/var/spool/maildir/%u,不過裡面是寫我前面的樣式。)
……

將mbox轉maildir格式:

安裝perl-5* perl-TimeDate*
yum install perl-5* perl-TimeDate*

下載安裝 mb2md
[root@mail ~]# wget http://batleth.sapienti-sat.org/projects/mb2md/mb2md-3.20.pl.gz
[root@mail
~]# gzip -d mb2md-3.20.pl.gz
[root@mail ~]# chmod +x mb2md-3.20.pl
[root@mail ~]# mv mb2md-3.20.pl /usr/local/bin/mb2md

建立 mbox 轉 maildir 批次執行檔:
vim /usr/local/bin/allmb2md
==================================
#!/bin/sh

#設定原本mbox格式郵件目錄
MBOXDIR="/var/spool/mail"

#設定maildir格式目錄
MAILDIR="/var/spool/maildir"

cd $MBOXDIR

for user in *; do
  mkdir -p $MAILDIR/$user
  mb2md -s $MBOXDIR/$user -d $MAILDIR/$user/
  chmod -R 700 $MAILDIR/$user/
  chown $user.mailuser $MAILDIR/$user/   <==這邊若使用者名稱為 名.姓 Roger.Lin 則要使用 :號區隔群組  Roger.Lin:mailuser
done
===================================

給權限
[root@mail ~]# chmod +x /usr/local/bin/allmb2md

執行轉換
[root@mail ~]# allmb2md

POSTFIX MAILQ 指令集 – 管理MAIL Queue

 
文章出處:http://blog.yam.com/rei92/article/28165379
 
如果你要套用其中一筆 Queue 中的郵件,可以先用 mailq 或 postqueue 指令查詢出或篩選出你要重新排 Queue 的郵件 ID,並使用以下指令重新排 Queue:
#postsuper -r 7B8CE830BD

若要套用「所有」郵件,可以使用特殊的 ALL 關鍵字:
#postsuper -r ALL

最後再強制重送所有的信件
#postqueue -f

檢視剩下多少Queue
#postqueue -p

若還是不行的話… 那就考慮刪除掉吧XD

# 列出目前在 Mail Queue 中的信件
    mailq

# 刪除某一個佇列的郵件
   postsuper -d queue_id

# 刪除所有在 Queue 中的郵件
    postsuper -d ALL

# 刪除所有正在 deferred 佇列中的郵件 ( 刪除曾經發送失敗的信 )
    postsuper -d ALL deferred

# 刪除所有正在 deferred 佇列中的郵件 ( 可看出哪些信被刪除了 )
    find /var/spool/postfix/deferred -type f -exec rm -vf \{\} \;

# 刪掉「三天以前」無法發出的郵件
    find /var/spool/postfix/deferred -type f -mtime +3 -exec rm -f \{\} \;

# 列出目前所有無法發出的郵件
    find /var/spool/postfix/deferred -type f -exec ls -l –time-style=+%Y-%m-%d_%H:%M:%S {} \;

# 刪除超過 5 天的 "defer" 佇列中的退信紀錄
    find /var/spool/postfix/defer -type f -mtime +5 -exec rm -f \{\} \;

若你發現在MailQ裡面有相同的地址大量寄送垃圾信件時,可以透過下面的方式來擋掉…

# vi /etc/postfix/header_checks
# 加入要擋掉的來原信
/^From:.service\@kcg\.gov\.tw/ DISCARD Attack Mail

# postmap -q – regexp:/etc/postfix/header_checks < /etc/postfix/header_checks
# 重新讓 Postfix 新 header_checks 生效

# mailq | grep "xxx@abc.com" | cut -d " " -f1 | cut -d’*’ -f1 | postsuper -d –
# 刪掉所有來自xxx@abc.com的MailQ

此內容轉貼自: Mail Attack & Delete Postfix selected mailq

預設所有跟 Postfix 相關的郵件都會放在 /var/spool/postfix/ 目錄下,
想瞭解 Postfix 是如何管理 Mail Queue 的可以參考 qmgr – Postfix queue manager 的手冊。

以下是每個目錄摘要的說明其用途:

MAIL QUEUES

    *
      incoming

          從網路寄信進來本機的信。
          或從本地寄送到本地的信。
    *
      active

          正在準備發送的郵件。
    *
      defered

          無法傳送的信。會持續重試。
    *
      corrupt

          無法讀取或毀損的信。
    *
      hold

          被暫停發送的信。需要手動開啟才會發出。

DELIVERY STATUS REPORTS

    *
      bounce

          每一位收件者的寄送狀態資訊,說明為什麼被「退信」。
          由 bounce(8) 程式控管
    *
      defer

          每一位收件者的寄送狀態資訊,說明為什麼被「延遲寄信」。
          由 defer(8) 程式控管
    *
      trace

          每一位收件者的寄送狀態資訊,說明被 Postfix 用 "sendmail -v" 或 "sendmail -bv" 指令執行過的狀態。
          由 trace(8) 程式控管