MS-SMTP to EMWAC IMS (MS2EMWAC.EXE Version 1.06) =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- What is IMS? ------------ IMS is a freeware mail server for Windows NT, created by the European Windows NT Academic Centre (EMWAC). It can be downloaded from SICA Consulting Services at http://www.sica.com/ims and from Texas Star Net at http://www.texasstar.net/ The software has five parts: SMTPDS.EXE - A Windows NT Service: The SMTP Delivery Agent. SMTPRS.EXE - A Windows NT Service: The SMTP Receiver. POP3S.EXE - A Windows NT Service: The POP3 Server. IMS.CPL - The Control Panel Applet. IMSCMN.DLL - A DLL containing common code. IMS was actively developed by EMWAC until 1995. Development stopped at version 0.8x when EMWAC licensed the IMS code to commercial developers. Some Problems with IMS ---------------------- Since the last version of IMS was still a beta version, it has some deficiencies: Sometimes IMS.CPL fails when creating mail lists and adding members, which are kept as registry keys. POP3S.EXE doesn't check users until they send password. So, it says to any user connecting on port 110 that he is welcome to the post office by returning: " is welcome here". SMTPDS.EXE does most of the work. It checks received messages and distributes them to users (sending replies and forwarding messages as needed). It also sends messages to other domains. Unlike SMTPDS, SMTPRS.EXE simply listens TCP port 25 for incoming messages and put them in incoming directory where they will be distributed by SMTPDS. Since it doesn't do any other job, SMTPRS could have significant features such as ESMTP to control messages sizes and message headers, restrict relay, etc. But those features were never developed. Tools avaliable --------------- The missing features of SMTPRS opened possibilities for the creation by PAUL SICA (webmaster@sica.com) of an excellent program named SCSMFILTER. It is a message filter configured by plugins. Some of the more popular plugins are used to avoid SPAM, stop unauthorized relay, hold oversized messages, look for email trojans, and enable full domain aliasing. The problem with message filters is that the user doesn't receive a warning, so he can believe a held item was actually delivered. This occurs because SMTPRS receives the all message without errors, writing them in the incoming (or prein) directory where they will be processed. The user is not warned if there is a problem. Antirelay testing services can conclude that IMS installations are open relays even when SCSMFILTER and appropriate plugins have been applied and configured. Microsoft Free SMTP Service (IIS 4) ----------------------------------- Windows NT users can have another free SMTP service. It comes with NT Option Pack 4+ and is installed with Internet Information Server 4+. This SMTP service is much more complete than SMTPRS. It can control messages headers and messages sizes. It can restrict relay by IP or domain. In fact: It is the software that SMTPRS.EXE should have been. Integrating IMS with Microsoft SMTP: Incompatibilities ------------------------------------------------------ Can postmasters make IMS and Microsoft SMTP to work together by installing only SMTPDS and POP3S and MS-SMTP? No. Unfortunately Microsoft SMTP service is incompatible with SMTPDS of EMWAC IMS: 1. IMS uses unique messages names like B0000000000.MSG. MS-SMTP uses a class-id hexadecimal name and a *.eml extension. 2. MS-SMTP puts all incoming local mail in a directory named DROP (usually located in \inetpub\mailroot\drop), while IMS SMTPDS searchs for messages in the INCOMING folder, located in the spool folder of IMS. 3. IMS SMTPDS reads messages posted by SMTPRS from two separated files: The *.MSG files have the message to be distribuited and the .RCP files have the message-ID, recipients and sender. Integrating IMS with Microsoft SMTP: MS-SMTP to EMWAC IMS --------------------------------------------------------- These incompatibilities have been solved by MS-SMTP to EMWAC IMS (MS2EWAC.EXE). This program converts MS-SMTP messages to EMWAC IMS compatible files which can be delivered by SMTPDS and POP3S. Steps to install and configure MS2EMWAC --------------------------------------- First, from the control panel Services applet, stop SMTPRS and change the startup mode to manual. Install (or reinstall) IIS 4 adding the MS-SMTP service. Create a folder in any desired location of your hard disk or choose an existing one. Copy MS2EMWAC.EXE, INSTSRV.EXE and SRVANY.EXE to it. These files have to be in the same directory or the aplication will not work. Go to the directory where you placed the files and run MS2EMWAC.EXE. The first time that you execute the software, click on the "Install Service" button to install MS2EMWAC as Windows NT service. Configure the locations of Microsoft SMTP drop directory, EMWAC IMS incoming directory, malformed messages Directory (optional) and log directory (optional). Microsoft SMTP drop directory and EMWAC IMS incoming directory are described above in Integrating IMS with Microsoft SMTP: Incompatibilities section, item 2. Malformed messages directory , if configured, is used by MS2EMWAC to write messages with invalid format, avoiding lost thems. If you don't set this directory, the messages with invalid format will be deleted. Log directory, if configured, is used by MS2EMWAC for its log file (MS2EMWAC.LOG). The end of the log file is appended with information on on each message converted by MS2EMWAC, so you can consult it in case of errors. If you don't set this directory, log feature is disabled. Logging, as always, negatively impacts performance. Finally, adjust the interval (in seconds) to check for incoming messages in accordance with the traffic of messages in your server. Start MS2EMWAC Service after configuration, using the control panel and set it to start automatically. After the above is done, you will need to configure Microsoft's SMTP service to avoid relay or over-sized messages. MS-SMTP sends an error status to e-mail clients so the user will know if his message was delivered or not. You can read more about MS-SMTP Service Configuration at http://support.microsoft.com/support/kb/articles/Q230/2/35.ASP. Help files and documentation will also be installed when you install Microsoft SMTP service. MS2EWAC.EXE is distributed with two other files: INSTSRV.EXE and SRVANY.EXE. These files are part of Microsoft Windows NT Resource Kit. They are used by MS2EMWAC to auto- install as a Windows NT service. The MS2EWAC.EXE was created and tested in I386 systems. It was not tested on MIPS, PPC or Alpha computers. If you want to test it on other platforms, please get a copy of INSTSRV.EXE and SRVANY.EXE for your platform. You will find them at Windows NT Resource Kit CD (/CONFIG directory) or at Microsoft Site (www.microsoft.com). I will be thankful if you report me how the program works on your platform. Log description --------------- The first line contains the message-id handled by MS-SMTP, so you can find the message if you configured a malformed-messages directory. The second line are the headers of message. If this line contains the word "Error", it means that message had errors in header. The third line is result of message conversion. If this line contains the word "Error", it means that message could not be converted or MS2EMWAC could not write .MSG file. If the conversion process had no errors this line will contains the new message-id provided by EMWAC IMS. The fourth line is result of writing headers to EMWAC IMS. If it contains the word "Error", MS2EMWAC could not write .RCP file. The fifth line is result of deleting MS-SMTP message. If a error occurs and the file is not erased, the message will be sent more than once to EMWAC IMS and consequently to its recipient. Note: During conversion, if a line contains an error message, the next one will contains the result of writing message to malformed directory (in case that it has been configured) and the result of deleting the message. Other steps in message conversion will be skipped. Known problems ------------- No known problems exist. If you identify some issue, please let me know by sending me an e-mail (ilanio@gold.com.br) identifying the bug. I will try to resolve it as soon as possible. Some systems without latest service pack for Windows NT (i.e. SP6a) may experience problems (missing files or older versions of files). All external modules (and respective versions) needed by MS2EMWAC are listed below: File Version Size Date ---- ------- ---- ---- Oleaut32.dll 2.30.4261 585KB 6/18/98 Olepro32.dll 5.00.4261 161KB 6/18/98 Stdole2.tlb 2.30.4261 18KB 6/17/98 ASYCFILT.DLL 2.30.4261 145KB 6/18/98 Msvbvm60.dll 6.00.8176 1,376KB 6/18/98 SRVANY.EXE any 13KB* 8/30/96 INSTSRV.EXE any 37KB* 8/30/96 * - Sizes of I386 platform version All these files are available for download from Microsoft site (http://www.microsoft.com) Thanks and Copyright -------------------- Thanks to Michael E. Middleton (mike@texasstar.net): - For helping me to write this README.TXT file. - For reporting bugs found in previous versions. Copyright (C) 2000 - Ilanio Castro (ilanio@gold.com.br) All marks and programs are property of its companies.