Exchange Server Share

January 6, 2008

Fair Overview of Exchange 2007 Server Roles

Filed under: Exchange 2007 — Amit Tank @ 9:42 am

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.

January 3, 2008

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

Filed under: Exchange, VBScript — Amit Tank @ 6:47 am

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 ======

Blog at WordPress.com.