chrisdu@sco.COM (Chris Durham) (12/22/90)
The following two documents, (the second in the next post) were written
to address MMDF configuration issues.  They are intended to provide the
maximum amount of information to the maximum amount of people, while
maintaining correctness in all cases.  It is possible that there may be
other ways to accomplish with MMDF the things I present here.  The
methods chosen are for ease of use and understanding.  I hope these
guides are of some assistance.  I recently posted an earlier revision of
these guides to sco-list@uunet.UU.NET.  Note that the versions that
follow replace all previous versions you may have seen or been sent by
us at SCO.  There are certainly more features of MMDF that are not
described here, but the following documents address the majority of MMDF
questions that are asked of SCO Support.  Finally, I'd like to point out
these guides assume that you are starting with a default configuration,
to not do so would probably increase the size of the guides
considerably. 
Followups have been directed to comp.unix.sysv386 and sco.opendesktop
-chris durham
=======================================================================
=======================================================================
 
Configuring MMDF in a UUCP environment under SCO UNIX System V/386.
				by
			 chrisdu@sco.COM
			     Rev. 1.1
The following document outlines how to configure the (M)ulti-(C)hannel
(M)emorandum (D)istribution (F)acility (MMDF) mail system under SCO UNIX
System V/386 Release 3.2 Operating System and Open Desktop, with
specific emphasis on the UUCP channel. 
TABLE OF CONTENTS 
Section    I .......................................Introduction & Assumptions
Section   II .....................Mail between two machines connected via UUCP
Section  III ......................Mail to the Internet through a UUCP gateway
Section   IV .....Mail in a "hub" configuration with a gateway to the Internet
Section    V ..........................................Running Deliver Daemons
Section   VI .........................Troubleshooting & Contacting SCO Support
Section  VII ..............................The Internet, UUNET and UseNet News
Section VIII ..............................................Further Information
I. Introduction and Assumptions
-------------------------------
As stated above, this document will show, in a step by step manner, how
to configure the MMDF mail system between machines connected via UUCP.
Several assumptions are made.  First, it is assumed that a UUCP connection 
is already configured and is working between the systems involved.  Second, 
in each section it is assumed that MMDF configuration files are in a default 
state, and that they have not been modified previously, unless otherwise 
specified.  Most sections will have three subsections: an "Objective" which 
will state what is to be accomplished; an "Assumptions" which will state any 
additional assumptions; and a "Procedure" which will outline the steps that 
need to be taken in order for the "Objective" to be achieved.
Note that it might be necessary to assign a password for the user 'mmdf' on 
all machines before proceeding past this point, as by default, mmdf does not 
have a password and hence cannot log into the system.
II. Mail between two machines connected via UUCP
------------------------------------------------
Objective: This section will show how to set up two machines over UUCP for
	   transfer of mail with MMDF.  Let us assume that the two machine
	   names are 'fred' and 'barney'.  A pictoral representation is:
		fred--(UUCP)--barney
Assumptions: The assumption here is that there is a working UUCP connection
	     between fred and barney. 
Procedure: 
		1. Log in as 'mmdf' on fred.
	
		2. Make sure the following lines exist in /usr/mmdf/mmdftailor:
			MLDOMAIN	UUCP
			MLNAME		fred
			; MLOCMACHINE	systemid
			UUname		fred
			UUXSTR		"uux -"
		3. Edit /usr/mmdf/table/local.dom and make sure the following
		   lines exist:
			fred:		fred.UUCP
			fred.UUCP:	fred.UUCP
		4. Edit /usr/mmdf/table/local.chn and make sure the following
		   lines exist:
			fred:		fred
			fred.UUCP:	fred
		
		5. Edit /usr/mmdf/table/uucp.dom and make sure the following
		   lines exists:
			barney:		barney.UUCP
		   	barney.UUCP:	barney.UUCP
		6. Edit /usr/mmdf/table/uucp.chn and make sure the following
		   line exists:
			barney.UUCP:	barney!%s
		7. Modify the uucp channel entry in /usr/mmdf/mmdftailor:
MCHN	uucp, show="SCO UUCP Delivery", que=uucp, tbl=uuchn, ap=822,
	pgm=uucp, mod=reg
		8. Modify the local channel entry in /usr/mmdf/mmdftailor:
MCHN	local, show="Local Delivery", que=local, tbl=local, ap=same,
	pgm=local, mod=reg
	        9. Make sure the local and uucp domain entries in
		   /usr/mmdf/mmdftailor are as follows.  Note: They 
		   do not have to be next to each other:
MDMN	"UUCP", show="Local domain", table=locdom
MDMN	"UUCP", show="UUCP Domain", table=uudom
               10. Change directories to /usr/mmdf/table
	       11. Execute:
			./dbmbuild 
		   to compile the MMDF database.
	       12. Log out of mmdf and log in as root.
		   Set up deliver daemons for the local channel and the
		   uucp channel. See section V, "Running Deliver Daemons",
		   for instructions on configuring deliver daemons.
	       13. Shut down the system and reboot. 
	       14. Log in as mmdf on machine barney.
	       15. Make sure the following lines exist in /usr/mmdf/mmdftailor:
			MLDOMAIN	UUCP
			MLNAME		barney
			; MLOCMACHINE	systemid
			UUname		barney
			UUXSTR		"uux -"
	       16. Edit /usr/mmdf/table/local.dom and make sure the following
		   lines exist:
			barney:		barney.UUCP
			barney.UUCP:	barney.UUCP
	       17. Edit /usr/mmdf/table/local.chn and make sure the following
		   lines exist:
			barney:		barney
			barney.UUCP:	barney
		
	       18. Edit /usr/mmdf/table/uucp.dom and make sure the following
		   lines exist:
			fred:		fred.UUCP
		   	fred.UUCP:	fred.UUCP
	       19. Edit /usr/mmdf/table/uucp.chn and make sure the following
		   line exists:
			fred.UUCP:	fred!%s
	       20. Modify the uucp channel entry in /usr/mmdf/mmdftailor:
MCHN	uucp, show="SCO UUCP Delivery", que=uucp, tbl=uuchn, ap=822,
	pgm=uucp, mod=reg
	       21. Modify the local channel entry in /usr/mmdf/mmdftailor:
MCHN	local, show="Local Delivery", que=local, tbl=local, ap=same,
	pgm=local, mod=reg
	       22. Make sure the local and uucp domain entries in
		   /usr/mmdf/mmdftailor are as follows.  Note: They 
		   do not have to be next to each other:
MDMN	"UUCP", show="Local domain", table=locdom
MDMN	"UUCP", show="UUCP Domain", table=uudom
               23. Change directories to /usr/mmdf/table
	       24. Execute:
			./dbmbuild 
		   to compile the MMDF database.
	       25. Log out of mmdf and log in as root.
		   Set up deliver daemons for the local channel and the
		   uucp channel. See section V, "Running Deliver Daemons",
		   for instructions on configuring deliver daemons.
	       26. Shutdown the system and reboot.
	       Machines fred and barney are now configured to send mail 
	       to each other with MMDF.  Addressing should be as:
	       user@barney or user@fred.
III. Mail to the Internet through a UUCP gateway
-------------------------------------------------
For a summary of what the "Internet" is, see section VII: "The Internet,
UUNET, and UseNet News".
Objective: This section will show how to connect a machine to an
	   Internet gateway via UUCP for exchange of mail.  Let us 
	   assume that the Internet machine is uunet.UU.NET, and 
	   that the machine we are connecting to the Internet is 
	   'bedrock.UUCP'.  A pictoral representation is:
		bedrock--(UUCP)--uunet--Internet
Assumptions: The assumption here is that there is a working UUCP connection
	     between bedrock and uunet. 
Procedure: The following steps need to be done on bedrock:
		1. Log in as mmdf.
	
		2. Make sure the following lines exist in /usr/mmdf/mmdftailor:
			MLDOMAIN	UUCP
			MLNAME		bedrock
			; MLOCMACHINE	systemid
			UUname		bedrock
			UUXSTR		"uux -"
		3. Edit /usr/mmdf/table/local.dom and make sure the following
		   lines exist:
			bedrock:	bedrock.UUCP
			bedrock.UUCP:	bedrock.UUCP
		4. Edit /usr/mmdf/table/local.chn and make sure the following
		   lines exist:
			bedrock:	bedrock
			bedrock.UUCP:	bedrock
		
		5. Edit /usr/mmdf/table/root.dom and make sure the following
		   line exists:
			uunet.UU.NET:	uunet.UU.NET
		6. Edit /usr/mmdf/table/uucp.dom and make sure the following
		   line exists:
			uunet:		uunet.UUCP
		7. Edit /usr/mmdf/table/uucp.chn and make sure the following
		   lines exist:
			uunet.UU.NET:	uunet!%s
			uunet.UUCP:	uunet!%s
		8. Modify the uucp channel entry in /usr/mmdf/mmdftailor:
MCHN	uucp, show="SCO UUCP Delivery", que=uucp, tbl=uuchn, ap=822,
	pgm=uucp, mod=reg
		9. Modify the local channel entry in /usr/mmdf/mmdftailor:
MCHN	local, show="Local Delivery", que=local, tbl=local, ap=same,
	pgm=local, mod=reg
	       10. Modify the badhosts channel entry in /usr/mmdf/mmdftailor.
		   This will cause all mail not recognized locally to be
		   delivered to uunet.UU.NET:
MCHN	badhosts, show="Last-Chance Routing", que=badhosts, tbl=uuchn,
	ap=822, pgm=uucp, mod=reg, host=uunet.UU.NET
	      11. Make sure the local and uucp domain entries in
		  /usr/mmdf/mmdftailor are as follows.  Note: They 
		  do not have to be next to each other.
MDMN	"UUCP", show="Local domain", table=locdom
MDMN	"UUCP", show="UUCP Domain", table=uudom
              12. Change directories to /usr/mmdf/table
	      13. Execute:
			./dbmbuild 
		  to compile the MMDF database.
	      14. Execute:
			mkdir /usr/spool/mmdf/lock/home/q.badhosts
		  The new directory should have owner and group mmdf.
	      15. Log out of mmdf and log in as root.
	          Set up deliver daemons for the local,uucp, and badhosts
		  channels. See section V, "Running Deliver Daemons",
		  for instructions on configuring deliver daemons.
	      16. Shut down the system and reboot. 
	      MMDF should now be configured to deliver mail that cannot
	      be recognized locally to uunet.UU.NET.  Mail does not have 
	      to be addressed as: uunet!andrew.cmu.EDU!cd0v; correct
	      Internet style addresses of cd0v@andrew.cmu.EDU will work
	      properly.
IV. Mail in a "hub" configuration with a gateway to the Internet
-----------------------------------------------------------------
For a summary of what the "Internet" is, see section VII: "The Internet,
UUNET, and UseNet News".
Objective: Let us assume there is another host connected to bedrock
	   called 'rubble'.  We wish to set up a MMDF connection 
	   between rubble and bedrock that will enable rubble to 
	   send and receive Internet mail through uunet.UU.NET. 
	   A pictoral representation is:
		rubble--(UUCP)--bedrock--(UUCP)--uunet--Internet
Assumptions:  The machines bedrock and uunet are set up as in the
	      previous section.  Also, rubble and bedrock have a
	      a working UUCP connection. 
Procedure:	1. Log in as mmdf on bedrock.
		2. Edit /usr/mmdf/table/uucp.dom and ADD the
		   following line:
			rubble:		rubble.UUCP
		
		3. Edit /usr/mmdf/table/uucp.chn and ADD the
		   following line:
			rubble.UUCP:	rubble!%s
		4. Execute the following commands:
			cd /usr/mmdf/table
			./dbmbuild
		
		5. Log out of bedrock.
		6. Log in as mmdf on rubble.
		7. Make sure the following lines exist in /usr/mmdf/mmdftailor:
			MLDOMAIN	UUCP
			MLNAME		rubble
			; MLOCMACHINE	systemid		
			UUname		rubble
			UUXSTR		"uux -"
		8. Edit /usr/mmdf/table/local.dom and make sure the following
		   lines exist:
			rubble:		rubble.UUCP
			rubble.UUCP:	rubble.UUCP
		9. Edit /usr/mmdf/table/local.chn and make sure the following
		   lines exist:
			rubble:		rubble
			rubble.UUCP:	rubble
	       10. Edit /usr/mmdf/table/uucp.dom and make sure the following
		   line exists:
			bedrock:	bedrock.UUCP
	       11. Edit /usr/mmdf/table/uucp.chn and make sure the following
		   line exists:
			bedrock.UUCP:	bedrock!%s
	       12. Modify the uucp channel entry in /usr/mmdf/mmdftailor:
MCHN	uucp, show="SCO UUCP Delivery", que=uucp, tbl=uuchn, ap=822,
	pgm=uucp, mod=reg
	       13. Modify the local channel entry in /usr/mmdf/mmdftailor:
MCHN	local, show="Local Delivery", que=local, tbl=local, ap=same,
	pgm=local, mod=reg
	       14. Modify the badhosts channel entry in /usr/mmdf/mmdftailor.
		   This will cause all mail not recognized locally to be
		   delivered to bedrock.UUCP:
MCHN	badhosts, show="Last-Chance Routing", que=badhosts, tbl=uuchn,
	ap=822, pgm=uucp, mod=reg, host=bedrock.UUCP
	       15. Make sure the local and uucp domain entries in
		   /usr/mmdf/mmdftailor are as follows.  Note: They 
		   do not have to be next to each other:
MDMN	"UUCP", show="Local domain", table=locdom
MDMN	"UUCP", show="UUCP Domain", table=uudom
               16. Change directories to /usr/mmdf/table
	       17. Execute:
			./dbmbuild 
		   to compile the MMDF database.
	       18. Execute:
			mkdir /usr/spool/mmdf/lock/home/q.badhosts
		   The new directory should have owner and group mmdf.
	       19. Log out of mmdf and log in as root on rubble.
	           Set up deliver daemons for the local,uucp, and badhosts
		   channels. See section V, "Running Deliver Daemons",
		   for instructions on configuring deliver daemons.
	       20. Shut down the system and reboot. 
	       MMDF is now configured to send mail from rubble, through
	       bedrock, and out to the Internet.  Internet style addressing
	       can be used, as in cd0v@andrew.cmu.EDU.  It is easy to see
	       how this procedure can be modified for a "hub" configuration
	       of UUCP systems, all which use bedrock as their gateway to the 
	       Internet.  A pictoral representation of this is found below. 
	       Note that because bedrock is the gateway between all the 
	       systems, rubble and bambam can also exchange mail. Mail should 
	       be addressed Internet style, such as: root@sco.COM, or 
	       chris@bambam.
				uunet
				  |
				(UUCP)
				  |
				bedrock
			       /      \
			    (UUCP)    (UUCP)
			      /	 	 \
			   rubble	bambam	
V. Running Deliver Daemons
--------------------------
This section is to be read in conjunction with a previous section which
informed you to read this section.  Based on that previous section, several
deliver daemons need to be configured. 
If you are running SCO UNIX System V/386 Release 3.2.0 or Open Desktop Release 
1.0, complete the following steps:
		1. Configure the local deliver daemon. Edit the file 
		   /etc/rc2.d/S88USRDEFINE, and add the following lines 
	 	   to the bottom of the file:
[ -x /usr/mmdf/bin/deliver ] && {
	/bin/su mmdf -c "/usr/mmdf/bin/deliver -clocal -b -T60"
	}
		2. For each of the other deliver daemons that are to be added, 
	   	   (uucp, badhosts, or both), insert lines for these deliver 
	   	   daemons prior to the closing curly brace above. For example, 
 	   	   if both the uucp and badhosts deliver daemons are 
	    	   to be added, the above set of lines would look as follows:
[ -x /usr/mmdf/bin/deliver ] && {
	/bin/su mmdf -c "/usr/mmdf/bin/deliver -clocal -b -T60"
	/bin/su mmdf -c "/usr/mmdf/bin/deliver -cuucp -b -T60"
	/bin/su mmdf -c "/usr/mmdf/bin/deliver -cbadhosts -b -T60"
	}
	   	   Note: Do not add deliver daemons for channels that are
	   	   not configured.  Thus, if the badhosts channel is not
		   being configured, there should only be two lines between 
		   the curly braces above.
	        3. Continue with the configuration of MMDF at the place 
		   in this document where instructions were given to read 
		   this section.
If you are running SCO UNIX System V/386 Release 3.2 Operating System Version 
2.0, or a release of Open Desktop later than 1.0, then complete the following 
steps:
		1. Configure the local deliver daemon. Edit the file 
	           /etc/rc2.d/S86mmdf. You will see lines that read 
	           as follows:
	then
		[ -x /usr/mmdf/bin/deliver ] &&
		/bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal"
	fi
	   	   Change these lines to read as follows:
	then
		[ -x /usr/mmdf/bin/deliver ] && {
		/bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal -T60"
		}
	fi
		   Note the addition of the set of curly braces and the -T60.
		2. For each of the other deliver daemons that are to be added, 
		   (uucp, badhosts, or both), insert lines for these deliver 
		   daemons prior to the closing curly brace above. For example, 
	 	   if both the uucp and badhosts deliver daemons are 
		   to be added, the above set of lines would look as follows:
	then
		[ -x /usr/mmdf/bin/deliver ] && {
		/bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal -T60"
		/bin/su mmdf -c "/usr/mmdf/bin/deliver -b -cuucp -T60"
		/bin/su mmdf -c "/usr/mmdf/bin/deliver -b -cbadhosts -T60"
		}
	fi
		   Note: Do not add deliver daemons for channels that are
		   not configured.  Thus, if the badhosts channel is not
		   being configured, there should only be two lines between 
		   the curly braces above.
		3. Continue with the configuration of MMDF at the place in 
		   this document where instructions were given to read this 
		   section.
VI. Troubleshooting and Contacting SCO Support
----------------------------------------------
Before contacting SCO Support with a problem about MMDF, please take the
following steps to help diagnose the problem.
		1. Does the underlying network work?  Can you use the
		   uucp(C) command to transfer files between the two
		   systems? 
		2. When logged in as mmdf, note the output of the command:
			/usr/mmdf/bin/checkaddr <address>
		   where <address> is the address to which you intend to 
		   send mail.
		3. If you get output other than OK from the above command,
		   recheck the files in /usr/mmdf/table for accuracy.  Make 
		   sure the command ./dbmbuild is run when logged in as mmdf 
		   and that the directory is /usr/mmdf/table.
		4. If you need to call SCO Support, be sure to have the
		   following files ready when speaking with an engineer:
			/usr/mmdf/mmdftailor
			/usr/mmdf/table/*.chn
			/usr/mmdf/table/*.dom
			/usr/mmdf/log/*.log
		   We also recommend that you be in front of the machine that
		   is having the problem when speaking to an engineer in order
		   to try suggestions we may have.
	
VII. The Internet, UUNET, and UseNet News
-----------------------------------------
The Internet is a world-wide network of computers that allow the mutual
exchange of mail, files, and remote logins.  Machines on the Internet
are grouped according to domains.  Domains are administrative groupings
of machines.  There are several types of top-level domains, including:
	EDU		educational institutions
	COM		commercial institutions
	GOV		government institutions
	MIL		military institutions
A domain is usually defined as <organization>.<top-level-domain>.  Hence,
machines at The Santa Cruz Operation have a domain of sco.COM.  Machines
in a domain have "fully-qualified domain names" of:
<machine>.<organization>.<top-level domain>
Hence the machine 'scotch' at The Santa Cruz Operation has a 
"fully-qualified domain name" of:
	scotch.sco.COM
All machines and groups of machines that have a connection to the Internet
should be assigned a domain to prevent duplication of names on the network.
To apply for a domain name, and to get more information about the Internet,
contact:
DDN Network Information Center
SRI International
333 Ravenswood Avenue, Room EJ291
Menlo Park, CA 94025, USA
Phone: 1-800-235-3155
---------------------
uunet.UU.NET is a machine on the Internet that provides access to the
Internet for mail.  UUNET also provides access to UseNet News, a discussion 
oriented forum for a variety of topics that reaches thousands of sites 
worldwide.
Contact: 		UUNET Administration
Location: 		Fairfax, Virginia
Business Hours: 	9:00 to 18:00, Eastern Time
Subscription Number:    (703) 876 - 5050
SCO Support provides Support Level Supplement (SLS) unx194, a pre-compiled 
version of the UseNet News Software.  Contact SCO Support Media Department 
at (800) 347-4381 to obtain a copy.
SCO does not endorse UUNET or the Internet.  We provide this information
only as a service. 
VIII. Further Information
-------------------------
For information on configuring MMDF in a TCP/IP environment, see the 
SCO Support document entitled: "Configuring MMDF in a TCP/IP environment".
Also, for a better understanding of MMDF, see:
  SCO UNIX System V/386 Operating System System Administrator's Guide: 
  Chapter 21, Setting Up Electronic Mail
This is available with SCO UNIX System V/386 Release 3.2 Operating System
Version 2.0.
-- 
"For all their long civilization, Jim thought, Vulcans never bothered
to invent air conditioning. I wonder what logic explains that?"
                      -Admiral James T. Kirk, _STIV: The Voyage Home_
                                               by Vonda McIntyre
-Christopher Durham
Internet: chrisdu@sco.COM			    Technical Support
UUCP: ...!{uunet,ucscc}!sco!chrisdu	     The Santa Cruz Operationchrisdu@sco.COM (Chris Durham) (12/22/90)
Configuring MMDF in a TCP/IP environment under SCO UNIX System V/386. by chrisdu@sco.COM Rev. 1.1 The following document outlines how to configure the (M)ulti-(C)hannel (M)emorandum (D)istribution (F)acility (MMDF) mail system under SCO UNIX System V/386 Release 3.2 Operating System and Open Desktop, with specific emphasis on the TCP/IP (S)imple (M)ail (T)ransfer (P)rotocol (SMTP) channel. TABLE OF CONTENTS Section I .......................................Introduction & Assumptions Section II .....................Mail in a "know-everyone" TCP/IP environment Section III ..............Mail in a TCP/IP environment with a central gateway Section IV ......Mail in a TCP/IP environment with a gateway to the Internet Section V ..........................................Running Deliver Daemons Section VI ..................................................Machine Masking Section VII .........................Troubleshooting & Contacting SCO Support Section VIII ..............................The Internet, UUNET and UseNet News Section IX ..............................................Further Information I. Introduction and Assumptions ------------------------------- As stated above, this document will show, in a step by step manner, how to configure the MMDF mail system in a TCP/IP environment. Several assumptions are made. First, it is assumed that a TCP/IP network is already configured and is working between the systems involved. Second, in each section it is assumed that MMDF configuration files are in a default state, and that they have not been modified previously, unless otherwise specified. Most sections will have three subsections: an "Objective" which will state what is to be accomplished; an "Assumptions" which will state any additional assumptions; and a "Procedure" which will outline the steps that need to be taken in order for the "Objective" to be achieved. Knowledge of UUCP and how to configure it is required for Section IV. Note that it might be necessary to assign a password for the user mmdf on all machines before proceeding past this point, as by default, mmdf does not have a password and hence cannot log into the system. Note that machines running MMDF and machines with other mail systems may co-exist in the same network, although those configurations are not covered here. It is important to know the difference between a domain name and a host name. For most machines running SCO TCP/IP, the hostname(ADMN) command produces output similar to: scoke.sco.COM In this output, scoke is the host name, and sco.COM is the domain name. II. Mail in a "know-everyone" TCP/IP environment ------------------------------------------------ Objective: This section will show how to set up MMDF on a network of machines connected with TCP/IP. The machines here are malone, capone, and stroud. The key point here is that all three machines can directly contact the other two machines for exchange of mail. The domain is alcatraz.COM. See section VII for a discussion of domains. The fully qualified domain names of the machines are: malone.alcatraz.COM capone.alcatraz.COM stroud.alcatraz.COM A pictoral representation of this network is: <<---|--------|--------|--->> (Ethernet backbone) | | | malone capone stroud Assumptions: The assumption here is that the TCP/IP network between all three systems is functional. Let us assume that the IP numbers of the three machines are: malone: 192.9.201.1 capone: 192.9.201.2 stroud: 192.9.201.3 Procedure: 1. Log in as 'mmdf' on malone. 2. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME malone ; MLOCMACHINE systemid 3. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: malone: malone.alcatraz.COM capone: capone.alcatraz.COM stroud: stroud.alcatraz.COM alcatraz: malone.alcatraz.COM alcatraz.COM: malone.alcatraz.COM 4. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: malone: malone malone.UUCP: malone malone.alcatraz.COM malone 5. Edit /usr/mmdf/table/smtp.chn and make sure the following lines exist: malone.alcatraz.COM: 192.9.201.1 capone.alcatraz.COM: 192.9.201.2 stroud.alcatraz.COM: 192.9.201.3 6. Modify the smtp channel entry in /usr/mmdf/mmdftailor: MCHN smtp, show="SCO SMTP Delivery", que=smtp, tbl=smtpchn, ap=822, pgm=smtp, mod=reg 7. Modify the local channel entry in /usr/mmdf/mmdftailor: MCHN local, show="Local Delivery", que=local, tbl=local, ap=same, pgm=local, mod=reg 8. Make sure the local domain entry in /usr/mmdf/mmdftailor looks as follows: MDMN "alcatraz.COM", show="Local domain", table=locdom 9. Execute: cd /usr/mmdf/table ./dbmbuild 10. Log out of mmdf and log in as root. Setup deliver daemons for the local and smtp channels. See section V, "Running Deliver Daemons", for instructions on configuring deliver daemons. 11. Log in as 'mmdf' on capone. 12. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME capone ; MLOCMACHINE systemid 13. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: malone: malone.alcatraz.COM capone: capone.alcatraz.COM stroud: stroud.alcatraz.COM alcatraz: capone.alcatraz.COM alcatraz.COM: capone.alcatraz.COM 14. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: capone: capone capone.UUCP: capone capone.alcatraz.COM: capone 15. Repeat steps 5-10 on capone. 16. Log in as 'mmdf' on stroud. 17. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME stroud ; MLOCMACHINE systemid 18. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: malone: malone.alcatraz.COM capone: capone.alcatraz.COM stroud: stroud.alcatraz.COM alcatraz: stroud.alcatraz.COM alcatraz.COM: stroud.alcatraz.COM 19. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: stroud: stroud stroud.UUCP: stroud stroud.alcatraz.COM: stroud 20. Repeat steps 5-10 on stroud. 21. Reboot all three systems. MMDF is now configured to send mail among all three systems. Mail should be addressed with Internet style addresses, such as root@stroud, or root@stroud.alcatraz.COM. III. Mail in a TCP/IP environment with a central gateway -------------------------------------------------------- Objective: This section explains how to set up mail between several machines on a TCP/IP ethernet, with only one machine as the mail gateway. In other words, all machines on the ethernet will forward all mail to one machine, which will then distribute the mail to the appropriate destination. A pictoral representation is as follows: alcatraz / \ MMDF MMDF / \ capone stroud This does not in any way prevent capone from contacting malone directly over the ethernet with rlogin, telnet, etc. The purpose of a mail gateway machine is to provide ease of configuration, as will be seen shortly. The machine names are capone, stroud, and alcatraz. Their fully qualified domain names are: capone.alcatraz.COM stroud.alcatraz.COM alcatraz.alcatraz.COM Note that gateway machines often have their name (alcatraz), the same as their domain (alcatraz.COM). Their IP numbers are: capone.alcatraz.COM: 192.9.201.2 stroud.alcatraz.COM: 192.9.201.3 alcatraz.alcatraz.COM: 192.9.201.4 Assumptions: This section assumes that you have read and understood Section II. Although similar machine names are used, this section is mutually exclusive from Section II, and hence any configuration files at this point are considered to be in a default, newly installed state. Procedure: 1. Log in as 'mmdf' on capone. 2. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME capone ; MLOCMACHINE systemid 3. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: capone: capone.alcatraz.COM alcatraz: alcatraz.alcatraz.COM alcatraz.COM: alcatraz.alcatraz.COM 4. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: capone: capone capone.UUCP: capone capone.alcatraz.COM capone 5. Edit /usr/mmdf/table/smtp.chn and make sure the following lines exist: capone.alcatraz.COM: 192.9.201.2 alcatraz.alcatraz.COM: 192.9.201.4 6. Modify the smtp channel entry in /usr/mmdf/mmdftailor: MCHN smtp, show="SCO SMTP Delivery", que=smtp, tbl=smtpchn, ap=822, pgm=smtp, mod=reg 7. Modify (and uncomment) the badhosts channel entry in /usr/mmdf/mmdftailor: MCHN badhosts, show="Last-Chance Routing", que=badhosts, tbl=smtpchn, ap=822, pgm=smtp, mod=reg, host=alcatraz.alcatraz.COM This will forward any mail not recognized locally to alcatraz.alcatraz.COM. 8. Modify the local channel entry in /usr/mmdf/mmdftailor: MCHN local, show="Local Delivery", que=local, tbl=local, ap=same, pgm=local, mod=reg 9. Make sure the local domain entry in /usr/mmdf/mmdftailor looks as follows: MDMN "alcatraz.COM", show="Local domain", table=locdom 10. Execute: cd /usr/mmdf/table ./dbmbuild 11. Execute: mkdir /usr/spool/mmdf/lock/home/q.badhosts. The directory should have owner and group mmdf. 12. Log out of mmdf and log in as root. Set up deliver daemons for the local,smtp, and badhosts channels. See section V, "Running Deliver Daemons", for instructions on configuring deliver daemons. 13. Log in as mmdf on stroud. 14. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME stroud ; MLOCMACHINE systemid 15. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: stroud: stroud.alcatraz.COM alcatraz: alcatraz.alcatraz.COM alcatraz.COM: alcatraz.alcatraz.COM 16. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: stroud: stroud stroud.UUCP: stroud stroud.alcatraz.COM stroud 17. Edit /usr/mmdf/table/smtp.chn and make sure the following lines exist: stroud.alcatraz.COM: 192.9.201.3 alcatraz.alcatraz.COM: 192.9.201.4 18. Repeat steps 6-12 on stroud. 19. Log in as mmdf on alcatraz. 20. Make sure the following lines exist in /usr/mmdf/mmdftailor: MLDOMAIN alcatraz.COM MLNAME alcatraz ; MLOCMACHINE systemid 21. Edit /usr/mmdf/table/local.dom and make sure the following lines exist: capone: capone.alcatraz.COM stroud: stroud.alcatraz.COM alcatraz: alcatraz.alcatraz.COM alcatraz.COM: alcatraz.alcatraz.COM 22. Edit /usr/mmdf/table/local.chn and make sure the following lines exist: alcatraz: alcatraz alcatraz.UUCP: alcatraz alcatraz.alcatraz.COM: alcatraz 23. Edit /usr/mmdf/table/smtp.chn and make sure the following lines exist: capone.alcatraz.COM: 192.9.201.2 stroud.alcatraz.COM: 192.9.201.3 alcatraz.alcatraz.COM: 192.9.201.4 24. Modify the smtp channel entry in /usr/mmdf/mmdftailor: MCHN smtp, show="SCO SMTP Delivery", que=smtp, tbl=smtpchn, ap=822, pgm=smtp, mod=reg 25. Modify the local channel entry in /usr/mmdf/mmdftailor: MCHN local, show="Local Delivery", que=local, tbl=local, ap=same, pgm=local, mod=reg 26. Make sure the local domain entry in /usr/mmdf/mmdftailor looks as follows: MDMN "alcatraz.COM", show="Local domain", table=locdom 27. Execute: cd /usr/mmdf/table ./dbmbuild 28. Log out of mmdf and log in as root. Set up deliver daemons for the local and smtp channels. See section V, "Running Deliver Daemons", for instructions on configuring deliver daemons. 29. Reboot all three machines. MMDF is now configured on all three machines so that capone and stroud will forward all unrecognized local mail to alcatraz, which knows about both machines. A closer look at the gateway setup shows that if we were to add another machine called malone, to the network, we would only have to set up malone and change the setup on alcatraz, as opposed to Section II, where we would have to reconfigure every system on the network. alcatraz.alcatraz.COM | | | capone stroud malone As in former cases, mail should be addressed as: root@stroud or root@stroud.alcatraz.COM. IV. Mail in a TCP/IP environment with a gateway to the Internet via UUCP ------------------------------------------------------------------------ Objective: This section will show how to set up a gateway to the Internet from a TCP/IP based network. We will connect to the Internet via a machine called uunet.UU.NET, and we will connect to uunet.UU.NET with UUCP. Assumption: The setup here is an extension of the setup in Section III. Therefore, all configuration files are currently assumed to be set up to satisfy Section III. Hence the pictoral representation is also an extension of Section III's representation: uunet | (UUCP) | alcatraz.alcatraz.COM | | | | capone.alcatraz.COM stroud.alcatraz.COM Procedure: 1. Because we are assuming the setup in Section III, the only machine we have to change is alcatraz.alcatraz.COM. Log in as 'mmdf' on alcatraz. 2. Edit /usr/mmdf/table/root.dom and make sure the following line exists: uunet.UU.NET: uunet.UU.NET 3. Edit /usr/mmdf/table/uucp.dom and make sure the following line exists: uunet: uunet.UUCP 4. Edit /usr/mmdf/table/uucp.chn and make sure the following lines exist: uunet.UUCP: uunet!%s uunet.UU.NET: uunet!%s 5. Edit /usr/mmdf/mmdftailor and make sure the following lines exist: MLDOMAIN alcatraz.COM MLNAME alcatraz ; MLOCMACHINE systemid UUname alcatraz UUXSTR "uux -" 6. Modify (and uncomment) the badhosts entry in /usr/mmdf/mmdftailor: MCHN badhosts, show="Last-Chance Routing", que=badhosts, tbl=uuchn, ap=822, pgm=uucp, mod=reg, host=uunet.UU.NET This will forward any mail not recognized locally to uunet.UU.NET. 7. Execute: mkdir /usr/spool/mmdf/lock/home/q.badhosts The new directory should have an owner and group of mmdf. 8. Execute: cd /usr/mmdf/table ./dbmbuild 9. Log out of mmdf and log in as root. Set up additional deliver daemons for the uucp and badhosts channels. The following deliver daemons should already be configured: local, smtp. See section V, "Running Deliver Daemons", for instructions on configuring deliver daemons. 10. Reboot the system. MMDF is now configured to route all unrecognized mail originating in domain alcatraz.COM to uunet.UU.NET. Internet style addressing should be used to address mail. Running Deliver Daemons ----------------------- This section is to be read in conjunction with a previous section which informed you to read this section. Based on that previous section, several deliver daemons need to be configured. If you are running SCO UNIX System V/386 Release 3.2.0 or Open Desktop Release 1.0, complete the following steps: 1. Configure the local deliver daemon. Edit the file /etc/rc2.d/S88USRDEFINE, and add the following lines to the bottom of the file: [ -x /usr/mmdf/bin/deliver ] && { /bin/su mmdf -c "/usr/mmdf/bin/deliver -clocal -b -T60" } 2. For each of the other deliver daemons that are to be added, (uucp, badhosts, and smtp are the choices), insert lines for these deliver daemons prior to the closing curly brace above. For example, if both the smtp and badhosts deliver daemons are to be added, the above set of lines would look as follows: [ -x /usr/mmdf/bin/deliver ] && { /bin/su mmdf -c "/usr/mmdf/bin/deliver -clocal -b -T60" /bin/su mmdf -c "/usr/mmdf/bin/deliver -csmtp -b -T60" /bin/su mmdf -c "/usr/mmdf/bin/deliver -cbadhosts -b -T60" } Note: Do not add deliver daemons for channels that are not configured. Thus, if the badhosts channel is not being configured, there should only be two lines between the curly braces above. 3. Continue with the configuration of MMDF at the place in this document where instructions were given to read this section. If you are running SCO UNIX System V/386 Release 3.2 Operating System Version 2.0, or a release of Open Desktop later than 1.0, then complete the following steps: 1. Configure the local deliver daemon. Edit the file /etc/rc2.d/S86mmdf. You will see lines that read as follows: then [ -x /usr/mmdf/bin/deliver ] && /bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal" fi Change these lines to read as follows: then [ -x /usr/mmdf/bin/deliver ] && { /bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal -T60" } fi Note the addition of the set of curly braces and the -T60. 2. For each of the other deliver daemons that are to be added, (uucp, badhosts, and smtp are the choices), insert lines for these deliver daemons prior to the closing curly brace above. For example, if both the smtp and badhosts deliver daemons are to be added, the above set of lines would look as follows: then [ -x /usr/mmdf/bin/deliver ] && { /bin/su mmdf -c "/usr/mmdf/bin/deliver -b -clocal -T60" /bin/su mmdf -c "/usr/mmdf/bin/deliver -b -csmtp -T60" /bin/su mmdf -c "/usr/mmdf/bin/deliver -b -cbadhosts -T60" } fi Note: Do not add deliver daemons for channels that are not configured. Thus, if the badhosts channel is not being configured, there should only be two lines between the curly braces above. 3. Continue with the configuration of MMDF at the place in this document where instructions were given to read this section. VI. Machine Masking ------------------- In the following configuration: uunet.UU.NET | alcatraz.alcatraz.COM / \ / \ capone.alcatraz.COM stroud.alcatraz.COM a system administrator may wish to have mail leaving alcatraz.alcatraz.COM be addressed as user@alcatraz.COM, no matter which machine the mail came from originally, capone or stroud. This hides the fact that there are several machines within the domain alcatraz.COM. To do this, edit each machine's /usr/mmdf/mmdftailor file and use the MLOCMACHINE entry: MLDOMAIN COM MLNAME alcatraz MLOCMACHINE alcatraz ^ here we would use alcatraz, stroud, or capone With this setup, mail leaving each of these machines will have a "From:" line of: From: user@alcatraz.COM instead of: From: user@<machine>.alcatraz.COM where <machine> is alcatraz, capone, or stroud. With machine masking, the notion of "home machines", must be maintained. For example, suppose the site alcatraz has 6 users: birdman bugsey alc therock fedpen warden We need to choose "home machines" for each of these users where they will read their mail. users home machines ----- ------------- birdman,therock stroud.alcatraz.COM bugsey,fedpen alcatraz.alcatraz.COM alc,warden capone.alcatraz.COM To do this, the file, /usr/mmdf/table/alias.user, needs to be maintained on each machine. This file will be the same on each machine, and should look as follows: birdman: birdman@stroud.alcatraz.COM therock: therock@stroud.alcatraz.COM bugsey: bugsey@alcatraz.alcatraz.COM fedpen: fedpen@alcatraz.alcatraz.COM alc: alc@capone.alcatraz.COM warden: warden@capone.alcatraz.COM All changes to this file should be done while logged in as mmdf. Make sure that there exists a line in /usr/mmdf/mmdftailor that reads: MTBL auser, file="alias.user", show="User alias" and a line that reads: ALIAS table=auser After the changes are made, change directories to /usr/mmdf/table and run: ./dbmbuild while logged in as mmdf. These changes should be done on each machine in the network, so that mail being responded to will arrive at the proper machine. VII. Troubleshooting and Contacting SCO Support ----------------------------------------------- Before contacting SCO Support with a problem about MMDF, please take the following steps to attempt to diagnose the problem: 1. Does the underlying network work? Can you ping(ADMN) each of the machines? Can you telnet(TC) and/or rlogin(TC) to the remote system? If you are setting up MMDF over a UUCP connection, can you use the uucp(C) command to transfer files between the systems? 2. When logged in as mmdf, note the output of the command: /usr/mmdf/bin/checkaddr <address> where <address> is the address to which you intend to send mail. 3. If you get output other than OK from the above command, recheck the files in /usr/mmdf/table for accuracy. Make sure the command ./dbmbuild is run when logged in as mmdf and the directory is /usr/mmdf/table. 4. If you need to call SCO Support, be sure to have the following files ready when speaking with an engineer: /usr/mmdf/mmdftailor /usr/mmdf/table/*.chn /usr/mmdf/table/*.dom /usr/mmdf/log/*.log We also recommend that you be in front of the machine that is having the problem when speaking to an engineer, in order to try suggestions we may have. VIII. The Internet, UUNET, and UseNet News ------------------------------------------ The Internet is a world-wide network of computers that allow the mutual exchange of mail, files, and remote logins. Machines on the Internet are grouped according to domains. Domains are administrative groupings of machines. There are several types of top-level domains, including: EDU educational institutions COM commercial institutions GOV government institutions MIL military institutions A domain is usually defined as <organization>.<top-level-domain>. Hence, machines at The Santa Cruz Operation have a domain of sco.COM. Machines in a domain have "fully-qualified domain names" of: <machine>.<organization>.<top-level domain> Hence the machine 'scotch' at The Santa Cruz Operation has a "fully-qualified domain name" of: scotch.sco.COM All machines and groups of machines that have a connection to the Internet should be assigned a domain to prevent duplication of names on the network. To apply for a domain name, and to get more information about the Internet, contact: DDN Network Information Center SRI International 333 Ravenswood Avenue, Room EJ291 Menlo Park, CA 94025, USA Phone: 1-800-235-3155 --------------------- uunet.UU.NET is a machine on the Internet which provides access to the Internet for mail. UUNET also provides access to UseNet News, a discussion oriented forum for a variety of topics that reaches thousands of sites worldwide. Contact: UUNET Administration Location: Fairfax, Virginia Business Hours: 9:00 to 18:00, Eastern Time Subscription Number: (703) 876 - 5050 SCO Support provides Support Level Supplement (SLS) unx194, a pre-compiled version of the UseNet News Software. Contact SCO Support Media Department at (800) 347-4381 to obtain a copy. SCO does not endorse UUNET or the Internet. We provide this information only as a service. IX. Further Information ----------------------- For information on configuring MMDF in a UUCP environment, see the SCO Support Document entitled: "Configuring MMDF in a UUCP environment". Also, for a better understanding of MMDF, see: SCO UNIX System V/386 Operating System System Administrator's Guide: Chapter 21, Setting Up Electronic Mail This is available with SCO UNIX System V/386 Release 3.2 Operating System Version 2.0. -- "For all their long civilization, Jim thought, Vulcans never bothered to invent air conditioning. I wonder what logic explains that?" -Admiral James T. Kirk, _STIV: The Voyage Home_ by Vonda McIntyre -Christopher Durham Internet: chrisdu@sco.COM Technical Support UUCP: ...!{uunet,ucscc}!sco!chrisdu The Santa Cruz Operation
root@phlpa.UUCP (Superuser) (04/04/91)
A while back I remember someone out there had some kind of document on configuring mmdf. I am not sure which group I saw this in so I am sorry if this is posted to the wrong group. Could someone who has this document please send it to me via e-mail. I am runnig SCO UNIX SYS V/386. Thanks in advance. Scott Scheingold email ...!lgnp1!phlpa!scott