On Wed, 13 Jan 2010 07:44, serguey-grigoriev@ wrote:


13.01.10, 11:32, "Matthew Seaman" <m.sea...@infracaninophile.co.uk>:

S.N.Grigoriev wrote:

> I would like to know if there is a way to completely
> replace the base sendmail with a ports one. The goal
> is to have corresponding files on the traditional places
> (not in /usr/local) and to use the system sendmail
> startup script but not /usr/local/etc/rc.d/sendmail.sh.

 That's not the usual approach with sendmail, unlike several other software 
packages.

 Because of the existence of mailer.conf(5) you can achieve equivalent
 functionality without overwriting the base system sendmail. With the
 following contents:

 % cat /etc/mail/mailer.conf
 # $FreeBSD: src/etc/mail/mailer.conf,v 1.3.36.1 2009/08/03 08:13:06 kensmith 
Exp $
 #
 # Execute the "real" sendmail program, named /usr/libexec/sendmail/sendmail
 #
 sendmail        /usr/local/sbin/sendmail
 send-mail       /usr/local/sbin/sendmail
 mailq           /usr/local/sbin/sendmail
 newaliases      /usr/local/sbin/sendmail
 hoststat        /usr/local/sbin/sendmail
 purgestat       /usr/local/sbin/sendmail

 all sendmail related commands are mapped onto the ports version of sendmail,
 installed under LOCALBASE=/usr/local as usual.  These commands are in fact
 exactly the same wrapper scripts as used with the system sendmail. With this
 setup it is not necessary to use the init script provided by the sendmail port:
 simply adding

 sendmail_enable="YES"

 to /etc/rc.conf will now cause the ports version of sendmail to be started
 using /etc/rc.d/sendmail.  In addition, the following entries in /etc/make.conf
 will allow rebuild sendmail configurations and db maps using the Makefile in
 /etc/mail:

 WITH_SENDMAIL_PORT=     yes
 SENDMAIL_CF_DIR=        /usr/local/share/sendmail/cf
 MAKEMAP=                /usr/local/sbin/makemap

 Finally, adding

 WITHOUT_SENDMAIL=yes

 to /etc/src.conf will suppress building sendmail as part of the base system,
 while still building and installing the mailwrapper commands.

        Cheers,

        Matthew



Matthew,

I thank you for your response. All you wrote is quite right.
But it is a general rule not to use in the system two sets
of slightly different programs with duplicating names. It is
a direct way to have problems.

For example, all third party scripts should be revised to check
absolute pathes, program search results becomes depending
of the PATH value, and so on.


If all third party scripts and they are using absolute path names then they should not need to be revised at all. This is effectively what mailer.conf does. /usr/sbin/sendmail continues to use mailer.conf which wraps what you have set in there. So no matter whether they call /usr/sbin/sendmail or /usr/local/sbin/sendmail they will still be getting the same results after your install of the ports sendmail.

So really what is the exact problem ? I can understand from a security standpoint why you would want to have less software on your systems but to blame it on third party scripts is irrelevant.

It is relatively easy to do such revisions on a small home system.
But a production server with significant amount of third party software
will require a lot of time to do that job.

To my mind it will be better to have an options in the port Makefile
allowing to replace the sendmail files in place.




--

 Wed Jan 13 08:27:21 2010

 It may not be able to take your machine down, but it can fill up your
 Internet Pipe.

 jhell

_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"

Reply via email to