Thanks for this, Odhiambo. Unfortunately it doesn't address my situation. See below:
On Tue, Oct 15, 2024 at 3:21 AM Odhiambo Washington <odhiambo@gmail.com> wrote:
On Mon, Oct 14, 2024 at 10:43 PM Greg Newby via Mailman-users < mailman-users@mailman3.org> wrote:
Hi friends.
I'm now getting a 500 server error upon signing up a new username on the web-based front end. The username is created in the back end, but the verification email does not get sent.
This is GNU Mailman 3.3.9 (Tom Sawyer), venv, Ubuntu 24.04LTS, PostgreSQL, Postfix
Here are the corresponding logfile entries from mailmanweb.log: smtplib.SMTPRecipientsRefused: {'redacted@gmail.com': (504, b'5.5.2 <mail>: Helo command rejected: need fully-qualified hostname')}
and from mail.log: Oct 14 12:06:26 domain postfix/smtpd[722764]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 504 5.5.2 <mail>: Helo command rejected: need fully-qualified hostname; from=<root@lists.domain.tld> to=<root@localhost
proto=ESMTP helo=<mail>
^^^^ Note the problem isn't the "From:" address. That is being correctly configured from mailman-web.py and settings.py via the variables below.
The problem is it's going "To:" root@localhost. I don't know why this is happening - shouldn't it be going to redacted@gmail.com?
Also, based on settings below shouldn't this be From: postorius@lists.domain.tld not From: root@lists.domain.tld?
More:
lists.domain.tld is the domain for Mailman3. I don't know why it's trying to send email from root@.
I've seen places where 'localhost' appears in the Mailman settings (settings.py, mailman.cfg, mailman-web.py), and tried changing them to the host's FQDN and restarting mailman3 and mailman3-web, but the problem persists.
Find and fix these values to what they should be as explained.
# The sender of emails from Django such as address confirmation requests. # Set this to a valid email address. DEFAULT_FROM_EMAIL = 'johndoe@domain.name'
# The sender of error messages from Django. Set this to a valid email # address. SERVER_EMAIL = 'johndoe@domain.name'
I use listmaster@lists.domain.name in my servers.
In the default files via the venv installation, these were already set properly:
EMAILNAME='lists.domain.tld' <-- I set this myself
These were default in settings.py and mailman-web.py: DEFAULT_FROM_EMAIL = 'postorius@{}'.format(EMAILNAME) SERVER_EMAIL = 'root@{}'.format(EMAILNAME)
I set them explicitly to postorius@lists.domain.tld and root@lists.domain.tld and restarted mailman and mailman web, and this did not change the problem with the server error and mail log entries above.
I am not sure what files on your server contains them in your server.
And while at it, also fix the site_owner: email in mailman.cfg.
That was already set to my email address, and I do correctly get site emails, such as cron output.
Further guidance would be appreciated. ~ Greg