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"