You could try one of the goodrcptto patches to qmail-smtpd.
We have one we use for gateways to exchange servers. Basicly, you export a list of users to a file. Put that file on the
gateway machines. With our patch we build a goodrcptto.cdb file.
Then qmail-smtpd checks the cdb file and rejects it if it does not exist.
I have a qmail+vpopmail+qmail-scanner+clamav+kav+spamassassin server running this kind of gateway to an exchange server.
And have been asked to setup this exact thing. I'd be very interested if you could you provide some links / more information?