1 Oct 2003 01:43
SPA Authentication
Dennis Skinner <dskinner <at> bluefrog.biz>
2003-09-30 23:43:33 GMT
2003-09-30 23:43:33 GMT
Hello all,
Having some fun setting up SPA authentication in exim. Here is what I
have in the authentcators section:
spa:
driver = spa
public_name = NTLM
server_advertise_condition = 1
server_password = ${lookup{$1}lsearch{/export/exim/etc/passwd}}
server_set_id = $1
The passwd file is user:password format. I setup Evolution to use SPA
and tested. The value that ends up in $1 is missing every other
character, so for "dskinner", $1 contains "dkne". If I double the
username in Evolution (ddsskkiinnnneerr), it works fine. This could be
a bug in Evolution. Not sure. Not huge deal since I'll just use cram
instead (which seems to work).
I ran next door and setup a windows box (outlook express 6) to test it
and it seems to be having issues with the challenge/response. Here is a
portion of the debug (+all) output:
23:14:44 8150 SMTP>> 250-mail.digitaldms.com Hello apu [205.232.78.57]
23:14:44 8150 250-SIZE 5242880
23:14:44 8150 250-PIPELINING
23:14:44 8150 250-AUTH NTLM
23:14:44 8150 250 HELP
23:14:44 8150 SMTP<< AUTH NTLM
23:14:44 8150 SMTP>> 334 NTLM supported
(Continue reading)
We have a file (/etc/exim4/blocked/domains) which contains entries such as:
domain1
*.domain1
domain2
*.domain2
and is used as part of a `senders' clause in the RCPT ACL. That part works
fine. I'm trying to extend this to add a log warning if the connecting
host's HELO matches any entry in the file. As there isn't a `helos' clause
(that would just be too easy :>), I'm trying to fashion something using a
`condition' clause.
A ${lookup won't work, as the file doesn't contain keys with data. The most
successful solution I've found so far was a combination of ${match and
${readfile (matching `.*${sender_helo_name}:.*' in the result of
${readfile{/etc/exim4/blocked/domains}{:}}), which works fine for the
standard `domain1' entry, but obviously won't match `*.domain1'.
Before I give up on the idea, does anyone have any suggestions as to how I
might achieve this?
(Yes, I know thou must not block on HELO, hence it being a `warn').
RSS Feed