{"id":708,"date":"2010-05-11T15:53:04","date_gmt":"2010-05-11T08:53:04","guid":{"rendered":"http:\/\/adityo.blog.binusian.org\/?p=708"},"modified":"2010-05-11T15:53:04","modified_gmt":"2010-05-11T08:53:04","slug":"how-to-install-zimbra-mailman-on-ubuntu","status":"publish","type":"post","link":"https:\/\/adityo.blog.binusian.org\/?p=708","title":{"rendered":"How to install zimbra + mailman on ubuntu"},"content":{"rendered":"<p>I assume you have install zimbra on your ubuntu server, if not you may follow step by step zimbra installation on <a href=\"http:\/\/prigad.com\/?p=565\" target=\"_blank\">http:\/\/prigad.com\/?p=565<\/a> On this tutorial we will try to install mailing list mailman integrated with zimbra on ubuntu.<\/p>\n<p>Okay without further let&#8217;s begin the installation<\/p>\n<p>&#8211; Download mailman sourcecode, you can find it on http:\/\/www.gnu.org\/software\/mailman\/download.html<\/p>\n<p>wget http:\/\/downloads.sourceforge.net\/project\/mailman\/Mailman%202.1%20%28stable%29\/2.1.12\/mailman-2.1.12.tgz<\/p>\n<p>&#8211; extract it<br \/>\ntar xvfz mailman-2.1.12.tgz<\/p>\n<p>&#8211; create folder , user and group<br \/>\n# As root<br \/>\ngroupadd mailman<br \/>\nuseradd -c&#8221;GNU Mailman&#8221; -s \/sbin\/nologin -d \/no\/home -g mailman mailman<br \/>\ncd \/usr\/local<br \/>\nmkdir mailman<br \/>\nchgrp mailman mailman<br \/>\nchmod a+rx,g+ws mailman<\/p>\n<p>make install<br \/>\n# following is required only if you are using Zimbra&#8217;s httpd<br \/>\ncd \/usr\/local\/mailman\/archives<br \/>\nchown zimbra private<br \/>\nchmod o-x private<br \/>\n# Check your installation<br \/>\n\/usr\/local\/mailman\/bin\/check_perms -f<\/p>\n<p>&#8211; configure<br \/>\n.\/configure &#8211;with-cgi-gid=zimbra<\/p>\n<p>Now setup the web server. Add following lines at the end of \/opt\/zimbra\/conf\/httpd.conf<\/p>\n<p>Code:<\/p>\n<p>#<br \/>\n#\u00a0 httpd configuration settings for use with mailman.<br \/>\n#<\/p>\n<p>ScriptAlias \/mailman\/ \/usr\/local\/mailman\/cgi-bin\/<br \/>\n&lt;Directory \/usr\/local\/mailman\/cgi-bin\/&gt;<br \/>\nAllowOverride None<br \/>\nOptions ExecCGI<br \/>\nOrder allow,deny<br \/>\nAllow from all<br \/>\n&lt;\/Directory&gt;<\/p>\n<p>Alias \/pipermail\/ \/usr\/local\/mailman\/archives\/public\/<br \/>\n&lt;Directory \/usr\/local\/mailman\/archives\/public&gt;<br \/>\nOptions Indexes MultiViews FollowSymLinks<br \/>\nAllowOverride None<br \/>\nOrder allow,deny<br \/>\nAllow from all<br \/>\n# Only if you have internationalized archives<br \/>\nAddDefaultCharset Off<br \/>\n&lt;\/Directory&gt;<\/p>\n<p># Uncomment the following line, replacing www.example.com with your server&#8217;s<br \/>\n# name, to redirect queries to \/mailman to the listinfo page (recommended).<br \/>\n# RedirectMatch ^\/mailman[\/]*$ http:\/\/www.example.com\/mailman\/listinfo<\/p>\n<p>Now copy mailman icons and then restart apache.<br \/>\nCode:<\/p>\n<p># As User &#8216;zimbra&#8217;<br \/>\ncd \/opt\/zimbra\/httpd\/htdocs<br \/>\nmkdir mmimages<br \/>\ncp \/usr\/local\/mailman\/icons\/* mmimages\/<br \/>\nzmapachectl stop<br \/>\nzmapachectl start<\/p>\n<p>Now change postfix configuration.<br \/>\nAdd\/Modify \/opt\/zimbra\/postfix\/conf\/main.cf so that following varibles are set as shown.<br \/>\nCode:<\/p>\n<p>but first you need to stop the zimbra first<br \/>\n# \/etc\/init.d\/zimbra stop<\/p>\n<p>virtual_alias_maps = ldap:\/opt\/zimbra\/conf\/ldap-vam.cf,hash:\/usr\/local\/mailman\/data\/virtual-mailman<br \/>\nalias_maps = hash:\/etc\/aliases,hash:\/usr\/local\/mailman\/data\/aliases<\/p>\n<p>then edit the \/opt\/zimbra\/conf\/zmmta.cf and remove the lines where these variables are otherwise those lines will be deleted when zimbra-postfix will be restarted.<\/p>\n<p>edit and remove<br \/>\nmydestination<br \/>\nvirtual_alias_maps<br \/>\nalias_maps<br \/>\nmynetworks<\/p>\n<p>Add following lines at the end of \/usr\/local\/mailman\/Mailman\/mm_cfg.py file.<br \/>\nCode:<\/p>\n<p>MTA = &#8216;Postfix&#8217;<br \/>\nPOSTFIX_ALIAS_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postalias&#8217;<br \/>\nPOSTFIX_MAP_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postmap&#8217;<br \/>\nIMAGE_LOGOS = &#8216;\/mmimages\/&#8217;<br \/>\nDEFAULT_URL_PATTERN = &#8216;http:\/\/%s:7780\/mailman\/&#8217;<br \/>\nPOSTFIX_STYLE_VIRTUAL_DOMAINS = [ &#8216;virtual-domain1.com&#8217;, &#8216;virtual-domain2.com&#8217; ]<\/p>\n<p>on mail.test.org<br \/>\nMTA = &#8216;Postfix&#8217;<br \/>\nPOSTFIX_ALIAS_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postalias&#8217;<br \/>\nPOSTFIX_MAP_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postmap&#8217;<br \/>\nIMAGE_LOGOS = &#8216;\/mmimages\/&#8217;<br \/>\nDEFAULT_URL_PATTERN = &#8216;http:\/\/%s:7780\/mailman\/&#8217;<br \/>\nPOSTFIX_STYLE_VIRTUAL_DOMAINS = [ &#8216;test.org&#8217; ]<br \/>\n#add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)<br \/>\nadd_virtualhost(&#8216;mail.test.org&#8217;,&#8217;test.org&#8217;)<\/p>\n<p>then start the zimbra<br \/>\n# \/etc\/init.d\/zimbra start<\/p>\n<p>In the last variable, you need to list all your virtual mailbox domains for which you want to add mailing lists. Remember you should ONLY list your virtual domains here, not your local domain for which postfix delivers mail locally.<\/p>\n<p>Now add your first list on virtual domain.<br \/>\nCode:<\/p>\n<p># As root<br \/>\n# first add a sitewide list called mailman, this is mandatory<br \/>\ncd \/usr\/local\/mailman<br \/>\nbin\/newlist mailman<br \/>\nbin\/config_list -i data\/sitelist.cfg mailman<\/p>\n<p>bin\/newlist &#8211;emailhost=virtual-domain1.com &#8211;urlhost=&lt;your zimbra host&gt; &lt;listname&gt; &lt;admin-email-address&gt; &lt;admin-password&gt;<\/p>\n<p># This is just to make sure that aliases and virtual-mailman files get generated. Until you add a virtual-domain based list, virtual-mailman won&#8217;t be generated.<\/p>\n<p>\/usr\/local\/mailman\/bin\/genaliases<br \/>\n# aliases and virtual-mailman must be owned by mailman.<\/p>\n<p>chown mailman:mailman \/usr\/local\/mailman\/data\/aliases*<br \/>\nchown mailman:mailman \/usr\/local\/mailman\/data\/virtual-mailman*<\/p>\n<p># setup mailman cron<br \/>\ncd \/usr\/local\/mailman\/cron<br \/>\ncrontab -u mailman crontab.in<\/p>\n<p># setup daemon<br \/>\ncp \/usr\/local\/mailman\/scripts\/mailman \/etc\/init.d<br \/>\nchkconfig &#8211;add mailman<\/p>\n<p>Now your should be able to visit http:\/\/&lt;zimbra host&gt;:7780\/mailman\/listinfo and browse\/create new lists etc. And of course you can always use mailman&#8217;s command line utilities for list maintainance.<\/p>\n<p>######### How to delete mailing list<\/p>\n<p>1. Delete the list and KEEP the list archives:<br \/>\n$ cd \/usr\/local\/mailman\/bin\/<br \/>\n$ sudo .\/rmlist listname<\/p>\n<p>2. Delete list and DELETE all list archives:<\/p>\n<p>sudo .\/rmlist -a listname<\/p>\n<div id=\"_mcePaste\" style=\"position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;\">&#8211; Download mailman sourcecode, you can find it on http:\/\/www.gnu.org\/software\/mailman\/download.html<\/p>\n<p>wget http:\/\/downloads.sourceforge.net\/project\/mailman\/Mailman%202.1%20%28stable%29\/2.1.12\/mailman-2.1.12.tgz<\/p>\n<p>&#8211; extract it<br \/>\ntar xvfz mailman-2.1.12.tgz<\/p>\n<p>&#8211; create folder , user and group<br \/>\n# As root<br \/>\ngroupadd mailman<br \/>\nuseradd -c&#8221;GNU Mailman&#8221; -s \/sbin\/nologin -d \/no\/home -g mailman mailman<br \/>\ncd \/usr\/local<br \/>\nmkdir mailman<br \/>\nchgrp mailman mailman<br \/>\nchmod a+rx,g+ws mailman<\/p>\n<p>make install<br \/>\n# following is required only if you are using Zimbra&#8217;s httpd<br \/>\ncd \/usr\/local\/mailman\/archives<br \/>\nchown zimbra private<br \/>\nchmod o-x private<br \/>\n# Check your installation<br \/>\n\/usr\/local\/mailman\/bin\/check_perms -f<\/p>\n<p>&#8211; configure<br \/>\n.\/configure &#8211;with-cgi-gid=zimbra<\/p>\n<p>Now setup the web server. Add following lines at the end of \/opt\/zimbra\/conf\/httpd.conf<\/p>\n<p>Code:<\/p>\n<p>#<br \/>\n#\u00a0 httpd configuration settings for use with mailman.<br \/>\n#<\/p>\n<p>ScriptAlias \/mailman\/ \/usr\/local\/mailman\/cgi-bin\/<br \/>\n&lt;Directory \/usr\/local\/mailman\/cgi-bin\/&gt;<br \/>\nAllowOverride None<br \/>\nOptions ExecCGI<br \/>\nOrder allow,deny<br \/>\nAllow from all<br \/>\n&lt;\/Directory&gt;<\/p>\n<p>Alias \/pipermail\/ \/usr\/local\/mailman\/archives\/public\/<br \/>\n&lt;Directory \/usr\/local\/mailman\/archives\/public&gt;<br \/>\nOptions Indexes MultiViews FollowSymLinks<br \/>\nAllowOverride None<br \/>\nOrder allow,deny<br \/>\nAllow from all<br \/>\n# Only if you have internationalized archives<br \/>\nAddDefaultCharset Off<br \/>\n&lt;\/Directory&gt;<\/p>\n<p># Uncomment the following line, replacing www.example.com with your server&#8217;s<br \/>\n# name, to redirect queries to \/mailman to the listinfo page (recommended).<br \/>\n# RedirectMatch ^\/mailman[\/]*$ http:\/\/www.example.com\/mailman\/listinfo<\/p>\n<p>Now copy mailman icons and then restart apache.<br \/>\nCode:<\/p>\n<p># As User &#8216;zimbra&#8217;<br \/>\ncd \/opt\/zimbra\/httpd\/htdocs<br \/>\nmkdir mmimages<br \/>\ncp \/usr\/local\/mailman\/icons\/* mmimages\/<br \/>\nzmapachectl stop<br \/>\nzmapachectl start<\/p>\n<p>Now change postfix configuration.<br \/>\nAdd\/Modify \/opt\/zimbra\/postfix\/conf\/main.cf so that following varibles are set as shown.<br \/>\nCode:<\/p>\n<p>but first you need to stop the zimbra first<br \/>\n# \/etc\/init.d\/zimbra stop<\/p>\n<p>virtual_alias_maps = ldap:\/opt\/zimbra\/conf\/ldap-vam.cf,hash:\/usr\/local\/mailman\/data\/virtual-mailman<br \/>\nalias_maps = hash:\/etc\/aliases,hash:\/usr\/local\/mailman\/data\/aliases<\/p>\n<p>then edit the \/opt\/zimbra\/conf\/zmmta.cf and remove the lines where these variables are otherwise those lines will be deleted when zimbra-postfix will be restarted.<\/p>\n<p>edit and remove<br \/>\nmydestination<br \/>\nvirtual_alias_maps<br \/>\nalias_maps<br \/>\nmynetworks<\/p>\n<p>Add following lines at the end of \/usr\/local\/mailman\/Mailman\/mm_cfg.py file.<br \/>\nCode:<\/p>\n<p>MTA = &#8216;Postfix&#8217;<br \/>\nPOSTFIX_ALIAS_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postalias&#8217;<br \/>\nPOSTFIX_MAP_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postmap&#8217;<br \/>\nIMAGE_LOGOS = &#8216;\/mmimages\/&#8217;<br \/>\nDEFAULT_URL_PATTERN = &#8216;http:\/\/%s:7780\/mailman\/&#8217;<br \/>\nPOSTFIX_STYLE_VIRTUAL_DOMAINS = [ &#8216;virtual-domain1.com&#8217;, &#8216;virtual-domain2.com&#8217; ]<\/p>\n<p>on mail.binusian.org<br \/>\nMTA = &#8216;Postfix&#8217;<br \/>\nPOSTFIX_ALIAS_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postalias&#8217;<br \/>\nPOSTFIX_MAP_CMD = &#8216;\/opt\/zimbra\/postfix\/sbin\/postmap&#8217;<br \/>\nIMAGE_LOGOS = &#8216;\/mmimages\/&#8217;<br \/>\nDEFAULT_URL_PATTERN = &#8216;http:\/\/%s:7780\/mailman\/&#8217;<br \/>\nPOSTFIX_STYLE_VIRTUAL_DOMAINS = [ &#8216;binusian.org&#8217; ]<br \/>\n#add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)<br \/>\nadd_virtualhost(&#8216;mail.binusian.org&#8217;,&#8217;binusian.org&#8217;)<\/p>\n<p>then start the zimbra<br \/>\n# \/etc\/init.d\/zimbra start<\/p>\n<p>In the last variable, you need to list all your virtual mailbox domains for which you want to add mailing lists. Remember you should ONLY list your virtual domains here, not your local domain for which postfix delivers mail locally.<\/p>\n<p>Now add your first list on virtual domain.<br \/>\nCode:<\/p>\n<p># As root<br \/>\n# first add a sitewide list called mailman, this is mandatory<br \/>\ncd \/usr\/local\/mailman<br \/>\nbin\/newlist mailman<br \/>\nbin\/config_list -i data\/sitelist.cfg mailman<\/p>\n<p>bin\/newlist &#8211;emailhost=virtual-domain1.com &#8211;urlhost=&lt;your zimbra host&gt; &lt;listname&gt; &lt;admin-email-address&gt; &lt;admin-password&gt;<\/p>\n<p># This is just to make sure that aliases and virtual-mailman files get generated. Until you add a virtual-domain based list, virtual-mailman won&#8217;t be generated.<\/p>\n<p>\/usr\/local\/mailman\/bin\/genaliases<br \/>\n# aliases and virtual-mailman must be owned by mailman.<\/p>\n<p>chown mailman:mailman \/usr\/local\/mailman\/data\/aliases*<br \/>\nchown mailman:mailman \/usr\/local\/mailman\/data\/virtual-mailman*<\/p>\n<p># setup mailman cron<br \/>\ncd \/usr\/local\/mailman\/cron<br \/>\ncrontab -u mailman crontab.in<\/p>\n<p># setup daemon<br \/>\ncp \/usr\/local\/mailman\/scripts\/mailman \/etc\/init.d<br \/>\nchkconfig &#8211;add mailman<\/p>\n<p>Now your should be able to visit http:\/\/&lt;zimbra host&gt;:7780\/mailman\/listinfo and browse\/create new lists etc. And of course you can always use mailman&#8217;s command line utilities for list maintainance.<\/p>\n<p>Hope this helps.<br \/>\nReply With Quote<\/p>\n<p>######### How to delte mailing list<\/p>\n<p>cd \/usr\/local\/mailman\/bin\/<br \/>\n.\/rmlist -a listname<\/p>\n<p>.\/rmlist -a cahpct<\/p>\n<p>1. Delete the list and KEEP the list archives:<\/p>\n<p>$ sudo .\/rmlist listname<\/p>\n<p>2. Delete list and DELETE all list archives:<\/p>\n<p>sudo .\/rmlist -a listname<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>I assume you have install zimbra on your ubuntu server, if not you may follow step by step zimbra installation on http:\/\/prigad.com\/?p=565 On this tutorial we will try to install mailing list mailman integrated with zimbra on ubuntu. Okay without further let&#8217;s begin the installation &#8211; Download mailman sourcecode, you can find it on http:\/\/www.gnu.org\/software\/mailman\/download.html [&hellip;]<\/p>\n","protected":false},"author":386,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6286,320],"tags":[6287],"class_list":["post-708","post","type-post","status-publish","format-standard","hentry","category-mailman","category-ubuntu","tag-how-to-install-zimbra-mailman-on-ubuntu"],"_links":{"self":[{"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/posts\/708","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/users\/386"}],"replies":[{"embeddable":true,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=708"}],"version-history":[{"count":2,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/posts\/708\/revisions"}],"predecessor-version":[{"id":710,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=\/wp\/v2\/posts\/708\/revisions\/710"}],"wp:attachment":[{"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=708"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=708"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/adityo.blog.binusian.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=708"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}