Thanks for pointing me in the right direction. Examining the strace output, I was able to get this working. I gave up on running the example command through sudo. Configuring esmtp (globally) to use procmail for local delivery solved my problem.
Regards, -Nathan On Tue, Nov 11, 2008 at 01:03:30PM -0800, Rob Sherwood wrote: > Learning to parse strace output is a skill worth developing. It is > basically a list of all of the system calls, their parameters, and > return values of all of the code being called. You will probably need > the -f option to follow spawned children. > > Be that as it may, the question is: how is esmtp getting permissions > to run /home/username/.esmtprc where "sendmail" (which is really > esmtp) not able to access the same file. > > - Rob > . > > > > On Tue, Nov 11, 2008 at 7:07 AM, Nathan Smoot <[EMAIL PROTECTED]> wrote: > > On Sun, Nov 09, 2008 at 07:27:48PM -0800, Rob Sherwood wrote: > >> So the sendmail link is the standard way of making this work. What > >> happens is that the program looks at the ARGV[0] value and does > >> different things depending on it. When it's invoked as "sendmail", it > >> parses options as if it were sendmail (specifically, the '-t'). > >> > >> The point is that something is broken with the install, and the trick > >> is to figure out what the esmtp version is doing that the sendmail > >> version is not. Use strace. > > I haven't had much success deciphering the strace output. There is no > > mention, as far as I can tell, of esmtp. > > > >> Question 1: is the esmtp binary setuid? setguid? > > Neither. > > > >> Question 2: Check the perms on the .esmtp file and figure out why this > >> works with the esmtp binary but not when it's invoked via the > >> /usr/sbin/sendmail link. > > Even with "full" permissions, I get the same error. > > > > > > Thanks for your help, > > > > -Nathan > > > >> > >> On Sun, Nov 9, 2008 at 7:12 PM, Nathan Smoot <[EMAIL PROTECTED]> wrote: > >> > Using debian, I have esmtp installed as my MTA and procmail as MDA. I'm > >> > trying to configure programs that use sendmail (e.g. logcheck, rkhunter, > >> > etc.) to successfully deliver reports to my local mail spool. On my > >> > system sendmail is a sym link to esmtp, and esmtp relies on a MDA > >> > (procmail) for local deliveries. Several programs (such as those > >> > mentioned above) install cron jobs that use the sendmail command. It > >> > would be nice to not have to work around that. Is anyone familiar with a > >> > way to configure this properly, hopefully without having to install > >> > something like exim4? > >> > > >> > An example: > >> > > >> > $ sudo -u logcheck logcheck -t -m username > >> > [sudo] password for username: > >> > lstat: /home/username/.esmtprc: Permission denied > >> > open: /home/username/.esmtprc: Permission denied > >> > Can't send mail: sendmail process failed with error code 78 > >> > > >> > > >> > Thanks, > >> > > >> > Nathan > >> > > >> > > > > >
