5.2. Will Mailman work with Windows 2000?
Yes. Here are the steps required to make it work using exim as an MTA and IIS as a web server.
Pre-requisites
Warning: This list of cygwin required components may be incomplete. Send changes to transom@extremelogic.com.
Cygwin (www.cygwin.com)
* Admin:
o Cron
o Cygrunsrv
* Base
* Devel
o Autoconf
o Automake
o Make
o GCC
* Interpreters
o PythonYou must set the system environment variable CYGWIN=ntsec for mailman to work
Exim (ftp://ftp.uni-erlangen.de/pub/pc/gnuwin32/cygwin/porters/Humblet_Pierre_A/V1.1/)
1. Open the cygwin bash prompt 2. cd / 3. tar xvzf /path/to/exim-4.04-cygwin-1.3-bin.tar.gz 4. You should read /usr/local/exim/README.CYGWIN. It has detailed info on exim. 5. add exim user to windows 2000 6. from the Windows 2000 command prompt: net user exim /add 7. add group mm 8. from the Windows 2000 command prompt net localgroup mm /add 9. add exim to the mm group 10. from the Windows 2000 command prompt net localgroup mm exim /add 11. open cygwin prompt and fix passwd and group files 12. mkpasswd -l | grep exim >> /etc/passwd 13. mkgroup -l | grep mm >> /etc/group 14. change exim to be in mm group in /etc/passwd 15. update /etc/aliases (include in doc) 16. get /usr/local/exim/configure from CVS or production (include in doc) 17. change hostname in configure to reflect the server's FQDN 18. install the exim service cygrunsrv -I exim -e CYGWIN=ntsec -p /usr/local/bin/exim -a "-bdf -q15m" 19. Change ownership on the /usr/local/exim directory 20. chown -R exim.mm /usr/local/exim 21. start the exim service cygrunsrv -S exim 22. check the exim.log in /var/log/ for errors
Mailman (www.list.org)
Note: GNU Mailman running under cygwin on Windows 2000 cannot be used to create private mailing lists. All mailing lists will be public.
1. extract the mailman archive to a directory
2. create a user named mailman
3. from the Windows 2000 command prompt: net user mailman /add
4. add mailman to the mm group
5. from the Windows 2000 command prompt net localgroup mm mailman /add
6. Set a password for the mailman user
7. net user mailman newpassword
8. create the cygwin user with mkpasswd
9. mkpasswd -l | grep mailman >> /etc/passwd
10. make mm mailman's group in /etc/group
11. Run the configure script for mailman
12. cd /path/to/extracted/mailman
13. Make sure mailman's home directory exists and is set GID
14. chown -R mailman.mm /home/mailman/
15. chmod g+s /home/mailman/
16. ./configure --with-mail-gid=mm --with-cgi-gid=mm --with-groupname=mm --with-cgi-
ext=.exe
17. make
18. make install
19. copy wrapper.exe.exe from the installation (under src) directory to /home/mailman/mail/wrapper.exe
20. login as mailman and run ~/bin/checkperms -f until it stops bitching
21. change to the /home/mailman/mail/ directory and mv each .exe.exe file to .exe (remove the extraneous .exe)
22. create the virtual directory mailman and point to c:\cygwin\home\mailmain\cgi-bin
23. The vdir should have script and execute permissions
24. Open properties on the mailman vdir, directory security, anonymous access, edit, click on edit under anonymous access - change the anonymous access user to mailman. Do not check "allow IIS to manage password"
25. Add read permissions to "other" from the private archive directory
26. chmod o+r /home/mailman/archives/private
27. create the virtual directory pipermail and point to c:\cygwin\home\mailman\archives\private
28. set the default doc to index.html
29. copy cygwin1.dll into a dir on the path like c:\winnt\system32
30. Install the cron service
31. cygrunsrv -I cron -p /usr/sbin/cron -a -D
32. logon as mailman and add the crontab
33. cd /home/mailman/cron/
34. crontab crontab.inCommon Problems
When you compile mailman, you must tell it an appropriate group id to run the scripts under. The checkperms -f script will correct these permissions. However, programs running under cygwin cannot bet setuid or setgid without being patched specifically for cygwin because Windows does not incorporate setuid or setgid functionality as UNIX does. For this reason several parts of mailman must be tweaked manually to run as the mailman user.
Administration
To add new lists:
1. run /home/mailman/bin/newlist 2. add the output of the script to /etc/aliases
Test your mailman installation:
1. Add a new list 2. Open http://yourhost/mailman/listinfo.exe and subscribe yourself to the list (the list admin does not get list mail by default) 3. send a test message to the list
Converted from the Mailman FAQ Wizard
This is one of many Frequently Asked Questions.