Google

Sunday, January 6, 2008

Fair Overview of Exchange 2007 Server Roles

Exchange 2007 has been splited based on Server Roles so if you require any specific function on a server then it can be placed on indivudial server based on your requirement, Exchange architecture, performance, management or your organization's policies.

We used to set Front-End and Back-End server roles in Exchange 2003 but Exchange 2007 introduces five roles for an Exchange organization.

  • Mailbox
  • Hub Transport
  • Edge Transport
  • Client Access
  • Unified Messaging

Brief overview of each roles are below.

1. Mailbox Server

  • Use for holding all Exchange Database - Mailbox & Public Folder (optional).
  • It should be part of Domain & AD.
  • 50 Storage Groups & 50 Mailbox Stores in each Storage Groups.
  • STM File architecture has been removed.
  • Proper backup recovery plans should be in place for High Availability.

2. Hub Transport Server

  • Responsible for internal mail flow. (Same like Bridgehead in Exchange 2003).
  • It should be part of Domain & AD.
  • Incoming Mail Flow : Mailbox <- Hub Transport <- Edge Transport <- Internet.
  • Outgoing Mail Flow : Mailbox -> Hub Transport -> Edge Transport -> Internet.
  • Hub Transport can be placed instead of Edge Transport and can act for the similar function.
  • Transport Agents, AntiSpam, AntiVirus can be enabled.
  • Disclaimer can be set on.
  • One Hub Transport role should be placed at a AD Site for good architecture.

3. Edge Transport Server

  • Should be placed in Edge of your organization ( in workgroup / DMZ / perimeter ).
  • Should NOT be a member of Domain & AD.
  • ADAM ( Active Directory Application Mode ) provides AD information to Edge Transport server with help of Exchange component "EdgeSynch" by creating one way synchronization (from Domain to Edge Server).
  • ADAM & EdgeSynch provides AD recipient information & SPAM filtering efficiency.
  • Provides better Anti-spam and Anti-virus protection with help of connection filtering, content filtering, recipient filtering, SenderID, sender and IP reputation.
  • Edge Transport Rules to protect Exchange environment, based on SMTP and MIME addresses, words in the subject and message body, and SCL rating.
  • Address rewriting feature allows to modify the SMTP address on in/out-bound mail.

4. Client Access Server

  • Client Access Server was known as a Front End in Exchange 2003.
  • It should be part of Domain & AD.
  • Handles all the milbox access request comes from
  1. Outlook Anywhere - Application (like Outlook 2003 or 2007).
  2. MAPI, POP3 or IMAP4 client - like Outlook Express and Eudora
  3. Exchange ActiveSync - Mobile devices ( like Windows Mobile 5 Smartphone, pocket PC or any other device).
  4. Outlook Web Access (OWA) including Sharepoint & UNC access.
  • Clietn Access provides Autodiscover mailbox location for Microsoft Outlook 2007.

5. Unified Messaging

  • Merge VoIP environment with Exchange.
  • Requires VoIP Gateways or PBXes to connect with Exchange.
  • Access Voice Mails by using OWA.
  • Outlook Voice Access provides below things.
  1. Listen voicemails.
  2. Forward or reply to messages.
  3. Get emails automatically & read via text-to-speech interface.
  4. Get calendar information.
  5. Accept or reply to meetings.
  6. Set voicemail Out-of-Office messages.
  7. Access or dial contact.
  8. Reconfigure the lite settings on the mailbox.

Thursday, January 3, 2008

VBScript: Search Files Older than 30 Days (including sub folder) and Move to Another Location

Sometime we need an automated task to move some of the files from one location to another, examples are bleow.
· SMTP Logs
· SPAM Product Logs
· Some Application Logs
· Temporary Files

So I have created a script that allows you to search all files in a location (including sub folders) which are older than 30 days, move it to specified location and record it into a log file “Move-Result.txt”.

Give the input path where you want to search the files at below line in the script.
SPath = "c:\temp\"

Give the path of destination location at below line in the script.
objFSO.MoveFile FileName, "d:\test\"


====== Script Code ======
Dim objFSO, ofolder, objStream

Set objShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("scripting.filesystemobject")
Set objNet = CreateObject("WScript.NetWork")
Set FSO = CreateObject("Scripting.FileSystemObject")
set outfile = fso.createtextfile("Move-Result.txt",true)
SPath = "c:\temp\"

ShowSubfolders FSO.GetFolder(spath)

Sub ShowSubFolders(Folder)
For Each Subfolder in Folder.SubFolders
CheckFolder(subfolder)
ShowSubFolders Subfolder
Next
End Sub

'CheckFolder(objFSO.getFolder(SPath))

Sub CheckFolder(objCurrentFolder)
Dim strTempL, strTempR, strSearchL, strSearchR, objNewFolder, objFile
Const OverwriteExisting = TRUE
currDate = Date
dtmDate = Date - 30
strTargetDate = ConvDate(dtmDate)
For Each objFile In objCurrentFolder.Files
FileName = objFile
'WScript.Echo FileName
strDate = ConvDate(objFile.DateCreated)
'strDate = ConvDate(objFile.DateLastModified)
If strDate < strTargetDate Then
objFSO.MoveFile FileName, "d:\test\"
outfile.writeline filename
End If
Next
End Sub

Function ConvDate (sDate) 'Converts MM/DD/YYYY HH:MM:SS to string YYYYMMDD
strModifyDay = day(sDate)
If len(strModifyDay) < 2 Then
strModifyDay = "0" & strModifyDay
End If
strModifyMonth = Month(sDate)
If len(strModifyMonth) < 2 Then
strModifyMonth = "0" & strModifyMonth
End If
strModifyYear = Year(sDate)
ConvDate = strModifyYear & strModifyMonth & strModifyDay
End Function
====== Script Code ======
Google Groups
Subscribe to IT_Discussions
Email:
Visit this group