• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

ERROR Rejecting forged message: PPP_SENDER_VHOST_ID environment variable value is invalid

doitbetter

New Pleskian
Hello,
when sending email from websites, the message does not get sent and I get this error in /var/log/maillog:
Sep 4 21:56:19 weba py_limit_out[7953]: ERROR Rejecting forged message: PPP_SENDER_VHOST_ID environment variable value is invalid
Sep 4 21:56:19 weba journal: plesk sendmail[7952]: handlers_stderr: DATA REPLY:554:5.7.0 Your message could not be sent. The sender's domain is not configured
properly.
REJECT
Sep 4 21:56:19 weba journal: plesk sendmail[7952]: REJECT during call 'limit-out' handler

I am using plesk 12.0 latest version. postfix+dovecot+limit outgoing email. I have also tried 12.5.30 as an early adopter. I must say that I have tried some solution switching back and forth from courier/dovecot/no mail system at all.

Further investigation pointed me to /usr/local/psa/lib/modules/python/pylib-mail-handlers/plesk_mail_handlers.py:
where I was able to log that:
PPP_SENDER_VHOST_ID=58efed62-be7c-4cd4-8b90-c00b7114d1d6
and in msqyl db calles "psa" show that the domain is there:
MariaDB [psa]> select * from dom_param where val='58efed62-be7c-4cd4-8b90-c00b7114d1d6'
-> ;
+--------+----------+--------------------------------------+
| dom_id | param | val |
+--------+----------+--------------------------------------+
| 3 | vhost_id | 58efed62-be7c-4cd4-8b90-c00b7114d1d6 |
+--------+----------+--------------------------------------+

I then investigated in /usr/local/psa/lib/modules/python/pylib-outgoing-mail/plesk_outgoing_mail_db.py.
The problem is that limits['domain ']is None: from the log: limits = {'mail': None, 'whitelist': None, 'domain': None, 'subscription': None}
and here it is the query: ERROR:plesk_outgoing_mail_db:fetch_domain: limits = SELECT d.name FROM domains d JOIN vhost_ids v ON d.id = v.domain_id WHERE v.guid = 58efed62-be7c-4cd4-8b90-c00b7114d1d6

I I run the query on the database I get:
SELECT d.name FROM domains d JOIN vhost_ids v ON d.id = v.domain_id WHERE v.guid = 58efed62-be7c-4cd4-8b90-c00b7114d1d6;
ERROR 1146 (42S02): Table 'psa.vhost_ids' doesn't exist

Ok, then let's create vhost_ids as it would do in /usr/local/psa/lib/modules/python/pylib-outgoing-mail/plesk_outgoing_mail_db.py:
MariaDB [psa]> CREATE TABLE vhost_ids (
-> guid VARCHAR(36) NOT NULL PRIMARY KEY,
-> domain_id INTEGER NOT NULL,
->
-> FOREIGN KEY(domain_id) REFERENCES domains(id)
-> ON UPDATE CASCADE
-> ON DELETE CASCADE
-> );
ERROR 1005 (HY000): Can't create table 'psa.vhost_ids' (errno: 150)
MariaDB [psa]>
MariaDB [psa]> SHOW VARIABLES LIKE 'have_innodb';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_innodb | YES |
+---------------+-------+
1 row in set (0.00 sec)

That error come from a wrong defined foreign key.
I changed it with "domain_id INTEGER NOT NULL"

It does not work either!
 
I found the problem. reimporting the domains with postfix, works.
The domain ere impoerted without mta installed.
 
Hello doitbetter

how did you reimport the domain to postfix? i aks because we have exactly the same error when trying to use sendmail with qmail.

best regards
 
Back
Top