Sendmail 8.14.5 + Cyrus-SASL 2.1.25 + majordomo 1.94.5

Denis Lapshin <[email protected]> Fri, 1 Nov 2013 16:49:53 +0400
Newsgroups gmane.comp.security.cyrus.sasl,gmane.mail.majordomo.general
Message-ID <CAF=o15W2+38f7Xm_OwJr8VCWxqKy2H_3fWZoDHa+0q15VbAwUQ@mail.gmail.com>
--089e0111b33aba4b2b04ea1d00a3
Content-Type: text/plain; charset=ISO-8859-1

Dear members,

I have fully working setup Sendmail 8.14.5 + Cyrus-SASL 2.1.25 (the server
delivers mail, accept mail and working as ordinary mail server with LDAP
functionality by getting users' passwords from LDAP database). For now I'm
trying to add majordomo mail lists to the server, but unsuccessful.

I beat with it for some days with no result, unfortunately. Please give
some advice where is an error could be? Highly appreciate your help.

More detailed description is below:

I've installed majordomo and groff from openbsd5.1/ports and make all the
configuration changes which were need to do by hand (as described in
/usr/local/doc/majordomo/post-install-notes):

1. Added user '_majordomo' to group '_majordomo' by editing '/etc/group'
file
#cat /etc/group | grep majordomo
_majordomo:*:520:_majordomo

2. Reviewed '/etc/majordomo/majordomo.cf' by adding my "domain.org"
#cat /etc/majordomo/majordomo.cf | grep mydomain.org
$whereami = "mydomain.org";

3. Added '_majordomo' user to a trusted sendmail users in
'/etc/mail/trusted-users' file. Rebuilt and installed
'/usr/share/sendmail/cf/openbsd-proto.mc' with  'use_ct_file' option
enabled.
#cat /etc/mail/trusted-users | grep majordom
_majordomo

all the parameters below are present in /etc/mail/sendmail.cf after build
#cat /usr/share/sendmail/cf/openbsd-proto.mc
...
dnl
FEATURE(`use_ct_file')dnl
dnl
...
dnl
MAILER(`local')dnl
MAILER(`smtp')dnl
dnl
define(`confLOCAL_MAILER', `cyrusv2')dnl
MAILER(`cyrusv2')dnl
....

4. Created majordomo aliases file in '/etc/mail/mj-alias-mydomain.org'.
Rebuilt 'openbsd-proto.mc' with feature `ALIAS_FILE' which points to
'aliases' and 'mj-alias-mydomain.org' file. Hash has been generated from
these files successfully. '/var/log/maillog' shows that 'aliases' and
'mj-alias-mydomain.org.db' are correctly built and used by sendmail.
#cat /var/log/maillog
...
Nov  1 15:55:01 mail sendmail[10826]: alias database /etc/mail/aliases
rebuilt by root
Nov  1 15:55:01 mail sendmail[10826]: /etc/mail/aliases: 58 aliases,
longest 16 bytes, 1768 bytes total
Nov  1 15:55:01 mail sendmail[10826]: alias database /etc/mail/
mj-alias-mydomain.org rebuilt by root
Nov  1 15:55:01 mail sendmail[10826]: /etc/mail/mj-alias-mydomain.org: 6
aliases, longest 79 bytes, 414 bytes total
...

I have symbolic link between original 'majordomo's' file and
'/etc/mail/mj-alias mydomain.org' file
#ln -s /var/spool/majordomo/lists/mj-alias-mydomain.org /etc/mail/
mj-alias-mydomain.org

5. The file 'mj-alias-mydomain.org' contains required listnames:
#cat /etc/mail/mj-alias-mydomain.org
majordomo:              "|/usr/local/lib/majordomo/wrapper resend -l
mj-alias-mydomain.org majordomo-list"
majordomo-list          :include:/etc/mail/mj-alias-mydomain.org
majordomo-request:      "|/usr/local/lib/majordomo/wrapper request-answer
mj-alias-mydomain.org"
majordomo-approval:     admin
majordomo-owner:        admin
owner-majordomo:        majordomo-owner

6. The output of 'config-test' give me no errors at all, but majordomo not
working though.
#/var/local/lib/majordomo/wrapper  config-test

------------------------------------------------------------
---------------- Config-test for Majordomo ----------------
------------------------------------------------------------


--------------------- Obvious things: ---------------------
------------------ environment variables ------------------
   HOME=/usr/local/lib/majordomo
   LOGNAME=root
   MAJORDOMO_CF=/etc/majordomo/majordomo.cf
   MAJORDOMO_CFDIR=/etc/majordomo
   PATH=/bin:/usr/bin
   SHELL=/bin/sh
   USER=root
--------------------- euid/egid checks ---------------------
   effective user  = _majordomo (uid 520)
   effective group = _majordomo wheel kmem sys tty operator staff guest
(gid 520 0 2 3 4 5 20 31 )
---------------------- uid/gid checks ----------------------
   real      user  = _majordomo (uid 520)
   real      group = _majordomo wheel kmem sys tty operator staff guest
(gid 520 0 2 3 4 5 20 31 )
------------------------------------------------------------

        Non obvious things that cause headaches:

------------------------------------------------------------
Good: 'require'd /etc/majordomo/majordomo.cf okay.
Good: found ctime.pl okay.
Good: found majordomo_version.pl okay.
$* is no longer supported at /usr/local/lib/majordomo/majordomo.pl line 47.
Good: found majordomo.pl okay.
Good: found shlock.pl okay.
Good: found config_parse.pl okay.

You're running Majordomo Version 1.94.5.

--==> Majordomo home directory is /usr/local/lib/majordomo.
------------------- Include directories -------------------
        /usr/local/lib/majordomo
        /usr/local/lib/majordomo
        /usr/local/libdata/perl5/site_perl/amd64-openbsd
        /usr/libdata/perl5/site_perl/amd64-openbsd
        /usr/local/libdata/perl5/site_perl
        /usr/libdata/perl5/site_perl
        /usr/libdata/perl5/amd64-openbsd/5.12.2
        /usr/local/libdata/perl5/amd64-openbsd/5.12.2
        /usr/libdata/perl5
        /usr/local/libdata/perl5
        .
--------------------------- Home ---------------------------
Good: changedir to /usr/local/lib/majordomo succeeded.
Good: Created a mock lock file.
---------------------- temp directory ----------------------
Good: Created a temp file in $TMPDIR (/var/spool/majordomo/tmp).
---------------------- list directory ----------------------
Good: list directory /var/spool/majordomo/lists has good permissions.
--------------------------- log ---------------------------
Good: logfile /var/log/majordomo.log exists and is writeable.
------------------------- Mailers -------------------------
You have defined a mailer for delivery.
Attempting to verify that this is a valid mailer...looks okay.
You have defined a mailer for delivering administrative messages.
Attempting to verify that this is a valid mailer...looks okay.
------------------ Checking majordomo.cf ------------------
Checking to see if there are new variables that should be in
your majordomo.cf file...Nope, none that I see.

Have you configured where Majordomo is?
        $whereami is mydomain.org
Good: yup!
----------------------- end of tests -----------------------


Nothing bad found!  Majordomo _should_ work correctly.

If it doesn't, check your configuration file
        (/etc/majordomo/majordomo.cf)
closely, and if it still looks okay, consider asking the majordomo-users
mailing list at "[email protected]" for assistance.  Be sure
and fully specify what your problems are, and what type of machine (and
operating system) you are using.

Enjoy!
-----------------------------------------------------------------------

7. All the installed packages on the OpenBSD 5.1 mail server:

cyrus-imapd-2.4.13p0 Cyrus IMAP server
cyrus-imapd-perl-2.4.13 perl utils for the Cyrus IMAP server
cyrus-sasl-2.1.25p2-ldap RFC 2222 SASL (Simple Authentication and Security
Layer)
db-4.6.21v0         Berkeley DB package, revision 4
groff-1.21p6        GNU troff typesetter
libltdl-2.4.2       GNU libtool system independent dlopen wrapper
majordomo-1.94.5p6  mailing list manager
openldap-client-2.4.26 Open source LDAP software (client)
pcre-8.21           perl-compatible regular expression library
quirks-1.59         exceptions to pkg_add rules


-- 
Best regards,

Denis <[email protected]>

--089e0111b33aba4b2b04ea1d00a3
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div>Dear members,<br><br></div>I have fully wor=
king setup Sendmail 8.14.5 + Cyrus-SASL 2.1.25 (the server delivers mail, a=
ccept mail and working as ordinary mail server with LDAP functionality by g=
etting users&#39; passwords from LDAP database). For now I&#39;m trying to =
add majordomo mail lists to the server, but unsuccessful.<br>
<br></div><div>I beat with it for some days with no result, unfortunately. =
Please give some advice where is an error could be? Highly appreciate your =
help.<br><br></div><div>More detailed description is below:<br></div><div>
<br></div>I&#39;ve installed majordomo and groff from openbsd5.1/ports and =
make all the configuration changes which were need to do by hand (as descri=
bed in /usr/local/doc/majordomo/post-install-notes):<br>=A0<br>1. Added use=
r &#39;_majordomo&#39; to group &#39;_majordomo&#39; by editing &#39;/etc/g=
roup&#39; file<br>
</div><div>#cat /etc/group | grep majordomo<br>_majordomo:*:520:_majordomo<=
br><br></div><div>2. Reviewed &#39;/etc/majordomo/<a href=3D"http://majordo=
mo.cf">majordomo.cf</a>&#39; by adding my &quot;<a href=3D"http://domain.or=
g">domain.org</a>&quot;<br>
</div><div>#cat /etc/majordomo/<a href=3D"http://majordomo.cf">majordomo.cf=
</a> | grep <a href=3D"http://mydomain.org">mydomain.org</a><br>$whereami =
=3D &quot;<a href=3D"http://mydomain.org">mydomain.org</a>&quot;;<br><br></=
div><div>
3. Added &#39;_majordomo&#39; user to a trusted sendmail users in &#39;/etc=
/mail/trusted-users&#39; file. Rebuilt and installed &#39;/usr/share/sendma=
il/cf/<a href=3D"http://openbsd-proto.mc">openbsd-proto.mc</a>&#39; with=A0=
 &#39;use_ct_file&#39; option enabled.<br>
</div><div>#cat /etc/mail/trusted-users | grep majordom<br></div><div>_majo=
rdomo<br></div><div><br></div><div>all the parameters below are present in =
/etc/mail/<a href=3D"http://sendmail.cf">sendmail.cf</a> after build<br></d=
iv>
<div>#cat /usr/share/sendmail/cf/<a href=3D"http://openbsd-proto.mc">openbs=
d-proto.mc</a> <br>...<br>dnl<br>FEATURE(`use_ct_file&#39;)dnl<br>dnl<br>..=
.<br>dnl<br>MAILER(`local&#39;)dnl<br>MAILER(`smtp&#39;)dnl<br>dnl<br>defin=
e(`confLOCAL_MAILER&#39;, `cyrusv2&#39;)dnl<br>
MAILER(`cyrusv2&#39;)dnl<br>....<br></div><div><br></div><div>4. Created ma=
jordomo aliases file in &#39;/etc/mail/<a href=3D"http://mj-alias-mydomain.=
org">mj-alias-mydomain.org</a>&#39;. Rebuilt &#39;<a href=3D"http://openbsd=
-proto.mc">openbsd-proto.mc</a>&#39; with feature `ALIAS_FILE&#39; which po=
ints to &#39;aliases&#39; and &#39;<a href=3D"http://mj-alias-mydomain.org"=
>mj-alias-mydomain.org</a>&#39; file. Hash has been generated from these fi=
les successfully. &#39;/var/log/maillog&#39; shows that &#39;aliases&#39; a=
nd &#39;mj-alias-mydomain.org.db&#39; are correctly built and used by sendm=
ail.<br>
</div><div>#cat /var/log/maillog<br>...<br>Nov=A0 1 15:55:01 mail sendmail[=
10826]: alias database /etc/mail/aliases rebuilt by root<br>Nov=A0 1 15:55:=
01 mail sendmail[10826]: /etc/mail/aliases: 58 aliases, longest 16 bytes, 1=
768 bytes total<br>
Nov=A0 1 15:55:01 mail sendmail[10826]: alias database /etc/mail/<a href=3D=
"http://mj-alias-mydomain.org">mj-alias-mydomain.org</a> rebuilt by root<br=
>Nov=A0 1 15:55:01 mail sendmail[10826]: /etc/mail/<a href=3D"http://mj-ali=
as-mydomain.org">mj-alias-mydomain.org</a>: 6 aliases, longest 79 bytes, 41=
4 bytes total<br>
...<br></div><div><br></div><div>I have symbolic link between original &#39=
;majordomo&#39;s&#39; file and &#39;/etc/mail/mj-alias <a href=3D"http://my=
domain.org">mydomain.org</a>&#39; file<br>#ln -s /var/spool/majordomo/lists=
/<a href=3D"http://mj-alias-mydomain.org">mj-alias-mydomain.org</a> /etc/ma=
il/<a href=3D"http://mj-alias-mydomain.org">mj-alias-mydomain.org</a> <br>
</div><div><br></div>5. The file &#39;<a href=3D"http://mj-alias-mydomain.o=
rg">mj-alias-mydomain.org</a>&#39; contains required listnames:<br><div>#ca=
t /etc/mail/<a href=3D"http://mj-alias-mydomain.org">mj-alias-mydomain.org<=
/a><br>
</div><div>majordomo:=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 &quot;|/usr/lo=
cal/lib/majordomo/wrapper resend -l <a href=3D"http://mj-alias-mydomain.org=
">mj-alias-mydomain.org</a> majordomo-list&quot;<br>majordomo-list=A0=A0=A0=
=A0=A0=A0=A0=A0=A0 :include:/etc/mail/<a href=3D"http://mj-alias-mydomain.o=
rg">mj-alias-mydomain.org</a><br>
majordomo-request:=A0=A0=A0=A0=A0 &quot;|/usr/local/lib/majordomo/wrapper r=
equest-answer <a href=3D"http://mj-alias-mydomain.org">mj-alias-mydomain.or=
g</a>&quot;<br>majordomo-approval:=A0=A0=A0=A0 admin<br>majordomo-owner:=A0=
=A0=A0=A0=A0=A0=A0 admin<br>owner-majordomo:=A0=A0=A0=A0=A0=A0=A0 majordomo=
-owner<br>
<br></div><div>6. The output of &#39;config-test&#39; give me no errors at =
all, but majordomo not working <span id=3D"result_box" class=3D"" lang=3D"e=
n"><span class=3D"">though.</span></span><br>#/var/local/lib/majordomo/wrap=
per=A0 config-test<br>
<br>------------------------------------------------------------<br>-------=
--------- Config-test for Majordomo ----------------<br>-------------------=
-----------------------------------------<br><br><br>--------------------- =
Obvious things: ---------------------<br>
------------------ environment variables ------------------<br>=A0=A0 HOME=
=3D/usr/local/lib/majordomo<br>=A0=A0 LOGNAME=3Droot<br>=A0=A0 MAJORDOMO_CF=
=3D/etc/majordomo/<a href=3D"http://majordomo.cf">majordomo.cf</a><br>=A0=
=A0 MAJORDOMO_CFDIR=3D/etc/majordomo<br>
=A0=A0 PATH=3D/bin:/usr/bin<br>=A0=A0 SHELL=3D/bin/sh<br>=A0=A0 USER=3Droot=
<br>--------------------- euid/egid checks ---------------------<br>=A0=A0 =
effective user=A0 =3D _majordomo (uid 520)<br>=A0=A0 effective group =3D _m=
ajordomo wheel kmem sys tty operator staff guest (gid 520 0 2 3 4 5 20 31 )=
<br>
---------------------- uid/gid checks ----------------------<br>=A0=A0 real=
=A0=A0=A0=A0=A0 user=A0 =3D _majordomo (uid 520)<br>=A0=A0 real=A0=A0=A0=A0=
=A0 group =3D _majordomo wheel kmem sys tty operator staff guest (gid 520 0=
 2 3 4 5 20 31 )<br>-------------------------------------------------------=
-----<br>
<br>=A0=A0=A0=A0=A0=A0=A0 Non obvious things that cause headaches:<br><br>-=
-----------------------------------------------------------<br>Good: &#39;r=
equire&#39;d /etc/majordomo/<a href=3D"http://majordomo.cf">majordomo.cf</a=
> okay.<br>Good: found <a href=3D"http://ctime.pl">ctime.pl</a> okay.<br>
Good: found <a href=3D"http://majordomo_version.pl">majordomo_version.pl</a=
> okay.<br>$* is no longer supported at /usr/local/lib/majordomo/<a href=3D=
"http://majordomo.pl">majordomo.pl</a> line 47.<br>Good: found <a href=3D"h=
ttp://majordomo.pl">majordomo.pl</a> okay.<br>
Good: found <a href=3D"http://shlock.pl">shlock.pl</a> okay.<br>Good: found=
 <a href=3D"http://config_parse.pl">config_parse.pl</a> okay.<br><br>You&#3=
9;re running Majordomo Version 1.94.5.<br><br>--=3D=3D&gt; Majordomo home d=
irectory is /usr/local/lib/majordomo.<br>
------------------- Include directories -------------------<br>=A0=A0=A0=A0=
=A0=A0=A0 /usr/local/lib/majordomo<br>=A0=A0=A0=A0=A0=A0=A0 /usr/local/lib/=
majordomo<br>=A0=A0=A0=A0=A0=A0=A0 /usr/local/libdata/perl5/site_perl/amd64=
-openbsd<br>=A0=A0=A0=A0=A0=A0=A0 /usr/libdata/perl5/site_perl/amd64-openbs=
d<br>
=A0=A0=A0=A0=A0=A0=A0 /usr/local/libdata/perl5/site_perl<br>=A0=A0=A0=A0=A0=
=A0=A0 /usr/libdata/perl5/site_perl<br>=A0=A0=A0=A0=A0=A0=A0 /usr/libdata/p=
erl5/amd64-openbsd/5.12.2<br>=A0=A0=A0=A0=A0=A0=A0 /usr/local/libdata/perl5=
/amd64-openbsd/5.12.2<br>=A0=A0=A0=A0=A0=A0=A0 /usr/libdata/perl5<br>
=A0=A0=A0=A0=A0=A0=A0 /usr/local/libdata/perl5<br>=A0=A0=A0=A0=A0=A0=A0 .<b=
r>--------------------------- Home ---------------------------<br>Good: cha=
ngedir to /usr/local/lib/majordomo succeeded.<br>Good: Created a mock lock =
file.<br>---------------------- temp directory ----------------------<br>
Good: Created a temp file in $TMPDIR (/var/spool/majordomo/tmp).<br>-------=
--------------- list directory ----------------------<br>Good: list directo=
ry /var/spool/majordomo/lists has good permissions.<br>--------------------=
------- log ---------------------------<br>
Good: logfile /var/log/majordomo.log exists and is writeable.<br>----------=
--------------- Mailers -------------------------<br>You have defined a mai=
ler for delivery.<br>Attempting to verify that this is a valid mailer...loo=
ks okay.<br>
You have defined a mailer for delivering administrative messages.<br>Attemp=
ting to verify that this is a valid mailer...looks okay.<br>---------------=
--- Checking <a href=3D"http://majordomo.cf">majordomo.cf</a> -------------=
-----<br>
Checking to see if there are new variables that should be in<br>your <a hre=
f=3D"http://majordomo.cf">majordomo.cf</a> file...Nope, none that I see.<br=
><br>Have you configured where Majordomo is?<br>=A0=A0=A0=A0=A0=A0=A0 $wher=
eami is <a href=3D"http://mydomain.org">mydomain.org</a><br>
Good: yup!<br>----------------------- end of tests -----------------------<=
br><br><br>Nothing bad found!=A0 Majordomo _should_ work correctly.<br><br>=
If it doesn&#39;t, check your configuration file<br>=A0=A0=A0=A0=A0=A0=A0 (=
/etc/majordomo/<a href=3D"http://majordomo.cf">majordomo.cf</a>)<br>
closely, and if it still looks okay, consider asking the majordomo-users<br=
>mailing list at &quot;<a href=3D"mailto:[email protected]">m=
[email protected]</a>&quot; for assistance.=A0 Be sure<br>and =
fully specify what your problems are, and what type of machine (and<br>
operating system) you are using.<br><br>Enjoy!<br>-------------------------=
----------------------------------------------<br></div><div><br></div><div=
><div><div><div><div><div><div><div><div>7. All the installed packages on t=
he OpenBSD 5.1 mail server:<br>
<br>cyrus-imapd-2.4.13p0 Cyrus IMAP server<br>cyrus-imapd-perl-2.4.13 perl =
utils for the Cyrus IMAP server<br>cyrus-sasl-2.1.25p2-ldap RFC 2222 SASL (=
Simple Authentication and Security Layer)<br>db-4.6.21v0=A0=A0=A0=A0=A0=A0=
=A0=A0 Berkeley DB package, revision 4<br>
groff-1.21p6=A0=A0=A0=A0=A0=A0=A0 GNU troff typesetter<br>libltdl-2.4.2=A0=
=A0=A0=A0=A0=A0 GNU libtool system independent dlopen wrapper<br>majordomo-=
1.94.5p6=A0 mailing list manager<br>openldap-client-2.4.26 Open source LDAP=
 software (client)<br>pcre-8.21=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 perl-compatib=
le regular expression library<br>
quirks-1.59=A0=A0=A0=A0=A0=A0=A0=A0 exceptions to pkg_add rules<br><br clea=
r=3D"all"><br>-- <br>Best regards,<br><br>Denis<a href=3D"mailto:deniza956@=
gmail.com" target=3D"_blank"></a>
</div></div></div></div></div></div></div></div></div></div>

--089e0111b33aba4b2b04ea1d00a3--