[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: exim and relaying -- for ONE user



On Thu, Jan 30, 2003 at 06:10:52PM -0600, Alex Malinovich wrote:
> On Thu, 2003-01-30 at 16:09, will trillich wrote: As for your
> earlier post about the auth not working, have you checked to
> see if you have libpam-pwdfile installed? I just set up SMTP
> plain auth last night following the directions that were given
> earlier and it all went pretty smoothly. The only things that
> I had to do that weren't mentioned were install libpam-pwdfile
> and change the if line for auth to use $2 and $3 instead of $1
> and $2. If you use an actual SMTP client (I was using
> Evolution) it'll still send the beginning \0, so you have to
> manually modify the rule to allow for it. Other than that, all
> went quite smoothly.

i appreciate your helpful pointers. i don't appreciate exim's
determination to reject all my 'advances'. :( (and that the
documentation keeps bouncing rudely off the back of my eyeballs.
i hope to reach critical mass soon where it all sinks in at
once, but apparently i need several more iterations.)

i've got libpam-pwdfile (how do you know, when pam fails, what
exactly went wrong, by the way?). and exim.config includes

[snippage]
	host_accept_relay = 127.0.0.1 : ::::1
	host_auth_accept_relay = *
[snippety]
	plain:
		driver = plaintext
		public_name = PLAIN
		server_condition = ${if pam{$2:${sg{$3}{:}{::}}}{yes}{no}}
		server_set_id = $2
[snipsnip]

i've found ${sg} (like perl's "s/pat/repl/g") and ${pam} (a bit
scanty on what's going on or where to look when things go south)
in the docs; so the server_condition takes string $3 (the
password) and doubles all colons, and sends "$2:$3-fixed" to
pam, which does (is supposed to do) something magical with
handwaving and hacks up furballs --

when i try emailing via smtp @serensoft.com from outside i get
rejected...

	This message was created automatically by mail delivery software (Exim).
	
	A message that you sent could not be delivered to one or more of its
	recipients. This is a permanent error. The following address(es) failed:
	
	  will@midwestrepo.com
	    SMTP error from remote mailer after RCPT TO:<will@midwestrepo.com>:
	    host mail.serensoft.com [208.33.90.85]: 550 relaying to <will@midwestrepo.com> prohibited by administrator
	
	------ This is a copy of the message, including all the headers. ------
	
	Return-path: <will@serensoft.com>
	Received: from will by duo.lan with local (Exim 3.35 #1 (Debian))
	        id 18eRer-000265-00
	        for <will@midwestrepo.com>; Thu, 30 Jan 2003 21:16:01 -0600
	To: will@midwestrepo.com
	Subject: testing @ Thu Jan 30 21:15:51 CST 2003
	Message-Id: <E18eRer-000265-00@duo.lan>
	From: will trillich <will@serensoft.com>
	Date: Thu, 30 Jan 2003 21:16:01 -0600
	
	nothing fancy (and nothing sent)

rejectlog says [line break added]

	refused relay (host) to <will@midwestrepo.com> from
		<will@serensoft.com> H=gate (duo.lan) [192.168.0.5]

the server (exim) is 192.168.0.1 (and 208.33.90.85); my
clarkconnect firewall is 192.168.0.5 and 192.168.1.5; duo.lan
(debian workstation) is 192.168.1.2 -- not that it's really
significant.  (and gate is the firewall 192.168.*.5)

i even tried, via "exim -bh 192.168.1.2" using AUTH LOGIN
<base64username> <base64password> based on the

	login:
	   driver = plaintext
	   public_name = LOGIN
	   server_prompts = "Username:: : Password::"
	   server_condition = "${if crypteq{$2}{${extract{1}{:}{${lookup{$1}lsearch{/etc/exim/passwd}{$value}{*:*}}}}}{1}{0}}"
	   server_set_id = $1

auth section. (both as all-in-one-line and as AUTH LOGIN, dialog,
<base64username>, dialog, <base64password>, reject.) the debug
display shows the strings are accepted and interpreted properly,
but exim rejects everything i've tried.

(and since $1/$2 are used in the condition, i did user\0passwd\0
instead of \0user\0passwd.)

this is almost as much fun as a root canal. very nearly.

-- 
I use Debian/GNU Linux version 3.0;
Linux server 2.4.20-k6 #1 Mon Jan 13 23:49:14 EST 2003 i586 unknown
 
DEBIAN NEWBIE TIP #120 from Oliver Elphick <olly@lfix.co.uk>
:
So you want to ENTER UMLAUTS ON AN ENGLISH KEYBOARD -- here's
how, in Vim: control-k u "  (control-K, then 'U', then '"').
Simple! To see all of vim's currently-defined digraphs, try
	:dig

Also see http://newbieDoc.sourceForge.net/ ...



Reply to: