Hi,checkSmtpAuth.sh is for sure created as I print input parameters and they seems fine. The created RFILE gave 644 permission being owned by root.root. Indeed, if exit code is different than 0 I received authentication error, so the script works. See below the content of checkSmtpAuth.sh :#!/bin/sh set -x
AUTH=$1 USER=$2 PASS=$3 RFILE=$4 c=`doveadm auth $USER $PASS` echo "Perms=MRVZ" > $RFILE exit 0 No matter if I write something in RFILE or not the result is the same. 550 Relay Denied. I looked in the code, and it seems that if nothing is written in RFILE default should be used (MRVZ), which seems not the case. Having the same configuration, nothing else changed, if I use internal authentication(by emptying smtpextauth.tab), everything works fine. Thank You From: Bart Mortelmans via xmail <xmail@xmailserver.org> To: Spon Spon via xmail <xmail@xmailserver.org> Sent: Tuesday, March 5, 2019 5:33 PM Subject: Re: [xmail] SMTP external authentication is not worjing I understand that you can be sure that your checkSmtpAuth.sh is indeed being called, because you see that the RFILE is created, with the contents you expect your script to put in there? In that case my guess is that XMail is having trouble accessing your RFILE. If the exit code wasn't seen as "0", then you should either get "451 Requested action aborted" or "503 Authentication failed". The error "550 Relay denied" most probably is based on the fact that it isn't finding "R" (for relaying) in the RFILE. In theory, it should also delete the RFILE. So the fact that they're still there, also seems to indicate a problem with the RFILE. - What would happen if you don't write this RFILE and don't specify the @@RFILE parameter in smtpextauth.tab? In theory the default from server.tab would be used. - Anything strange about permissions of the RFILE's that have not been removed? - Could it be that your script has somehow not finished writing the file yet by the time XMail tries to read it? Bart Op 5/03/19 om 07:41 schreef Spon Spon via xmail: Hello, I have a mixed setup with DOVECAT for IMAP access, and XMAIl 1.27 for the rest. The relay is cosed until authentication is made In order to have a centralized place for authentication I used in XMAIL external authentication. However seems it is not working as I receive 550 Relay Denied when I try to send an email using this XMAIL server. The setup is as following: In smtpextauth.tab I put following line: "LOGIN" "/config/scripts/checkSmtpAuth.sh" "@@AUTH" "@@USER" "@@PASS" "@@RFILE" In server tab I have: "DefaultSmtpPerms" "MRVZ" In checkSmtpAuth.sh I always exit with 0 for testing. However I received 550 Relay denied each time I tried to send an email. If the script exits with 1 then the error is different, (Authentication error). I tried also populating RFILE with Perms=MR but without success. I tried also with Perms=MRVZ . No change. Also another issue is the fact that those RFILE files were never get deleted. For each email, that file is created and stays there forever (need external action to delete it) Is there any other settings that need to be made or is this a bug ? Using internal authentication (smtpauth.tab or mailuser.tab) emptying smtpextauth.tab there is no such error, and everything works as expected.. Unfortunately there is no debug log in application, so only way to figure out is DEBUG, and currently it is installed on an embedded router so no way to debug. Thanks, Spon _______________________________________________ xmail mailing list xmail@xmailserver.org http://xmailserver.org/mailman/listinfo/xmail _______________________________________________ xmail mailing list xmail@xmailserver.org http://xmailserver.org/mailman/listinfo/xmail
_______________________________________________ xmail mailing list xmail@xmailserver.org http://xmailserver.org/mailman/listinfo/xmail