Marsmail ver 0.2c GNU-GPL by EL GUIDO - UAA & Eddie Dunckley & Gert Cronje of RAU Engineering. the c is for the charon mail queue emulation ---------------- bug reports:guido@lux.labinf.uaa.mx Marsmail ver 0.2 GNU-GPL by Eddie Dunckley & Gert Cronje of RAU Engineering. ---------------- bug reports:eddie@eng.rau.ac.za gac@chopin.rau.ac.za --------- (License) This whole package is licensed under the GNU Public License. See the file COPYING for details. --------- Marsmail is a pascal frontend for mail that translates the unix mailfile into smaller files that pegasus mail understands. --------- (Added) This version doesn't need the unix2dos application for marsmail (works alone) --------- Please examine all the files carefully as this is not a commercial program suite, it's freeware. Written by staff/students for students.. --------- (And now, teachers for teachers too. ) file list: ---------- 327 Feb 4 11:53 marsmail.doc The marsmail-02c doc file 8608 Feb 4 11:48 marsmail.exe dos executable to convert mail 5480 Feb 4 12:51 marsmail.pas dos sources for marsmail c release 1430 Feb 4 13:32 monlan Basic monitor for LAN/WAN 12051 Feb 4 13:12 newuser.pl Process the user application 3757 Feb 4 12:50 nomasteruser deletes users with cleanup 4080 Feb 4 11:32 ohbirthcheck birthday reminder script 793 Feb 4 11:34 ohexpiry expire accounts on mars/samba 13141 Feb 4 13:18 ohform.htm User application form for Mars server 1296 Feb 4 11:35 ohlogscr.bat modified supervisor login script 690 Feb 4 09:32 ohmail automatic mail notifier start script 6648 Feb 4 10:50 ohmasteruser creates new users with extra features 1381 Feb 4 09:27 ohmessage automatic mail notifier main script ---------------- (This is no longer needed) #1046 Feb 4 09:33 ohpostme handles posting from pegasus to unix ---------------- (End) 3585 Feb 4 10:35 ohquota Disk quota accounting automated 856 Feb 4 09:34 ohsendnt Console broadcast script 1954 Feb 4 11:45 pmail.bat front-end dos batch file for pmail 8161 Feb 4 11:48 pmdflts.ini pmail defaults for all users 1024 Feb 4 11:48 pmgate.sys USER defined gateway via pconfig 859 Feb 4 11:00 wwwhomepage Creates homepages for new users. what's new ---------- pmail.bat script dosn't need unix2dos anymore, the marsmail have an better readline logic that understand the unix lines. (EL GUIDO) ---------- marsmail read directly from the user's spool mail, don't need make copies. ---------- marsmail let the unix mail directly into the user's mail directories on novell ---------- marsmail uses a Charon alike Print Queue for mail output ---------- Lot's of automation.... Lot's of new ideas ie birthday reminders, expiry scripts etc etc Better docs Procedure: ---------- Take a deep breath and realize that there is no install script. Make sure your mars is running successfully and dos users can log into the server with normal novell client software. Make sure your directory layout for Mars looks simmular to the one listed in this document. Get a good editor for linux to edit the scripts to suite your company's needs. Get the pegasus mail program from one of it's mirror sites. Unpack and follow it's install method. ----------- (This is obsolete) #DON't use pegasus's bindery features to fetch mail in the #SYS:\mail locations. This requires a mercury.nlm that cannot run on linux. ----------- (New Feature) The marsmail-02c needs the bindery features to work, this is the natural mail on Netware. The SYS:\mail\ must exist. There is no mercury, but the Charon Mail Queue Emulation works fine! :-) ----------- ----------- (The pop solution) You can attempt using the pmpop utilities for dos to fetch mail via pop from the server, (which might have been the best possible solution if it worked), but there is a seperate project to edit the ini file on the fly for multiple users.... ----------- (My comments) I didn't investigated about this, but someone reading this could :-)) ----------- ----------- (This is obsolete too!) #Make sure you map drive I: to the user's home directory (or change the #scripts). I've used a map root i:=sys:\home\%name% to do this in the #master mars login script that can be created with syscon. ----------- (New Feature) The volumes required for this new c release are: Volume Route Drive -------- ----------- ------- SYS -> route/SYS F: ...others... route/ (G: , H: , I: , etc) HOME -> ~ (G: , H: , I: , etc) ----------- Start by examining each script carefully - there is a lot of undocumented features in them... ----------- (This os more obsolete!!!) #Then start by editing the pmdflts.ini to suite your needs. #Use the one included as a template. Read the pmail docs carefully. ----------- (New Feature) Just install the pmail suite and reconfigure the gateway (see this part next). ----------- ----------- (This is important!!!) Link your unix mailboxes into your mars SYS volume space i.e. ln -s /var/spool/mail //SYS/unixmail (but the 0.99pl1 do it in a different way) ----------- ----------- (This Changed) Run pconfig to create a SMTP gateway. Use the name of a Print Queue defined on the /etc/nwserv like a charon mail queue. ----------- ----------- (This is for the SMTP gateway) Select: Pegasus Mail/DOS Configuration v3.11 SMTP Gateway ____+--------------- Mercury / Charon SMTP Interface ---------------+_____ ___ ¦ ¦_____ ___ ¦ Spool Interface? : [N ] ¦+____ ___ ¦ Queue Name? : CHARON ¦¦____ ___ ¦ Enabled? : Y ¦¦____ ___ ¦ Prefered? : N ¦¦____ ___ ¦ Use always? : N ¦¦____ ___ ¦ This server's name : your.name.org.contry ¦¦____ ___ ¦ Our time zone : GMT +/- #num ¦¦____ ___ ¦ Organization : organization's name ¦¦____ ___ ¦ ¦¦____ ___ ¦ The name you want placed in the Organization header of ¦¦____ ___ ¦ outgoing message. Use this to identify your site more ¦¦____ ___ ¦ clearly in your email. ¦+____ ___ +---------------------------------------------------------------+_____ ___ ______ ---------- (This is for the Charon alike emulation) Declare a Print Queue on the /etc/nwserv.conf like this: 21 CHARON SYS:/PRINT/O /usr/sbin/mailout The mailout is a executable (755 mode) file with this line: # File that emulate the Charon Mail Gateway (sed "1,3d" | /usr/sbin/sendmail -t) #End of file ----------- ----------- (This is very important!!) Check if your unixmail is secure i.e. mars users cannot read each others mail. This can be done by loggin in from a dos box with different user names and trying to view the sys:\unixmail\%name% files ----------- Edit the pmail.bat to suite your needs. ----------- (This is more more obsoleted !!!) #Make sure the drive mappings is correct. #i.e. I: maps to userdir. ----------- (New Feature) Just need the SYS:/mail drive mapping correct ----------- Compile the marsmail.pas to suite your needs if needed. ----------- (Ahooommmm, more obsolted !!!) #Test to see if you can read mail from pegasus and that the gateway places #outgoing messages in i:\pmail\out. ----------- ----------- (This is no more used !!!) #Edit the ohpostme scripts until it posts mail out for your users. #This can be tested by posting a message with pmail, seeing if a file is created #in i:\pmail\out, and waiting for ohpostme to visit the directory, removing and #posting the file. ----------- ----------- (This was no tested !!!) Deploy (!) the ohmail and ohmessage scripts to run out of rc.local or however you prefer. See if it notifies the user when new mail arrives.... You can tail -f the log files to see what is happening. A note on samba notification: the message gets sent to a machine instead of a user. Decide if you want to use the new adduser script called ohmasteruser and nomasteruser for creating users and destroying users on a mars aware unix server. MAKE BACKUPS of your original passwd files etc before continueing. Note this new adduser creates /etc/expiry /etc/birthdays /etc/ohmyusers /etc/ohmaillist Remove users from ohmaillist to prevent them from mailing Remove users from expiry to prevent account expiry Remove users from birthdays to prevent birthday notification Please note the change to passwd file: auser:x:505:512:A dummy user:/hamster/home/./auser:/etc/ftponly The extra dot after home forces ftp to see this as the root, thus allowing the ftp to enter ../httpd/html/auser via the link. Note that /app or unixmail cannot be reached via ftp. ----------- (No tested) ----------- (This is no more needed (hope) !!!) #Edit your mars's net$log.dat in SYS:\public to exit to the extended login #script ohlogscr.bat that actually creates the users with a default password #on the mars server. Modify the wwwhomepage script to create homepages for #your new users. ----------- (the work is just ....) Edit your mars's net$log.dat adding this two lines to the end DOS SET ID=%USER_ID% DOS SET LN=%LOGIN_NAME% ----------- ----------- (this was untouched) You might need to either install quotas or remove mentioning of quotas from the scripts. Customize the ohform.htm to your needs and decide if you would like to use it as a user application form from the web. The apache server can run on the same server as mars.... ohform.htm calls newuser.pl that creates a script file to ease the user creation. newuser.pl sends mail to admin user to inform him of the new application. These scripts can handle shadow passwords. Create a blank file /etc/ftponly and use this dummy shell for users to prevent them from telnetting to the server. Mail fetching via pop and ftp will continue to work. Suggested directory structure for good operation... /apps /base /base/SYS (mars server SYS volume) /base/SYS/unixmail ln -s /var/spool/mail /base/SYS/unixmail /base/SYS/apps ln -s /apps /base/SYS/apps /base/SYS/home ln -s ../home home /base/home base home directories /base/home/auser (Yip, the user's home dir) /base/home/auser/www ln -s ../httpd/html/dummyuser www /base/home/auser/pmail gets created from /etc/skel used for pmail /base/home/httpd/html Web server root space /base/home/httpd/html/main non-user related space. /base/home/httpd/html/auser (user's www space) You can now even share the apps, home dirs and unixmail with samba and you've got a complete novell and nt server all in one, sharing the same space! If you find ANY errors with this doc or missing files please let me know... ---------- (Untouched) ---------- (This is just for fun) #The marsmail is just a dirty hack to satisfy the dos users. Stick with #pop3 or imap to fetch mail via tcpip from win95, os2, wfw, linux and other. #The other stuff included with marsmail is just to automate as much as possible #for our poor overworked netadmins! ---------- (My opinion) The marsmail-02c is a ver hard work to improve the resources and the time on the sessions with dos users, based on the marsmail-02 (thanxs a lot boys), but with a lot of new features, hawever have the principal trouble on marsmail: the user can use only one mail reader (pmail or pine), never both in a time. New features: a) easy of install (a very few steps) b) reads mail in the netware natural mode c) output mail in the natural CHARON mode Changes: a) The ohpostme go to the trash b) the oh* scripts still in test (don't know if works) Future: (the one or the scond, but not the two) a) ask to PMAIL worktime to make a PMAIL that work with spool files b) improve the mail read for read only the new mail for pmail and return the undeleted mail to the spool (both readers) ----------