Jump to content
Froxlor Forum
  • 0

rspamadm configdump vs. Realität


rseffner

Question

Hallo,

ich habe an Mailadressen individuelle scores für rewrite und reject eingestellt. Ein 'rspamadm configdump' bestätigt, dass die Einstellung den weg in die geladene rsmapd-Instanz gefunden hat. Schaue ich allerdings ins UI sehe ich noch immer in der Spalte "score" hinte dem "/" den default von "14". Entsprechend werden die Mails auch nicht so behandelt, wie von mir durch individuelle Einstellungen gewünscht.

Was kann ich falsch gemacht haben?

Gruß, Ronny

Link to comment
Share on other sites

19 answers to this question

Recommended Posts

  • 0

Das kann zu hier. Kein bug.

In "rspamadm configdump" sind die Einträge under dieser ominösen frx_ID doppelt. in der froxlor_settings.conf nicht.
Ich kopiere die settings.conf von zwei Servern zusammen, dass auch der backup-MX weiß, was der Postfachbesitzer wünscht und SPAM nicht über den backup-MX eingeschleust werden kann. Offenbar ist in der DB eines Servers ein verwaister Eintrag zu der Domain, während die eigentlich auf dem anderen Server eingerichtet ist. Zweimal die Domain, zweimal md5() und dann include mit merge.

Ich geh mich schämen und räume auf.

Link to comment
Share on other sites

  • 0

Ja ich meine das rspamd web UI.

Ich habe eine Spur:

2024-09-12 12:31:43 #1809170(main) <ergubd>; cfg; rspamd_lua_run_config_post_init: cannot run config post init script: /usr/share/rspamd/lualib/lua_settings.lua:174: bad argument #1 to 'update' (string expected, got table); trace: [1]:{[C]:-1 - update [C]}; [2]:{/usr/share/rspamd/lualib/lua_settings.lua:174 - numeric_settings_id [Lua]}; [3]:{/usr/share/rspamd/lualib/lua_settings.lua:236 - register_settings_id [Lua]}; [4]:{/usr/share/rspamd/plugins/settings.lua:1152 - process_setting_elt [Lua]}; [5]:{/usr/share/rspamd/plugins/settings.lua:1215 - fun [Lua]}; [6]:{/usr/share/rspamd/lualib/fun.lua:34 - call_if_not_empty [Lua]}; [7]:{/usr/share/rspamd/lualib/fun.lua:192 - for_each [Lua]}; [8]:{/usr/share/rspamd/plugins/settings.lua:1207 - process_settings_table [Lua]}; [9]:{/usr/share/rspamd/plugins/settings.lua:1429 - <unknown> [Lua]};; priority = 100

Ich baue gerade die froxlor_settings.conf Stück für Stück zusammen und kann dann hoffentlich einen Hinweis liefern.

Link to comment
Share on other sites

  • 0

Der Fehler liegt (unter anderem?) hier:

frx_0ba31014ba51a9fa2916fb3dd646fde8_rcpt {
        id = "frx_0ba31014ba51a9fa2916fb3dd646fde8_rcpt";
        priority = low;
        rcpt = "@ptz-prototypen.de";
        apply {
                actions {
                        "add header" = 7;
                        rewrite_subject = 7;
                        reject = 14;
                }
        }
}

Das einzig Verständliche in der Fehlermeldung ist für mich "(string expected, got table)". Ein Formatierungsfehler vermutlich - nur kann ich den nicht sehen.

rspamd 3.9.1 aus dem deb vom rspamd repo.

Link to comment
Share on other sites

  • 0

Es ist der Bezeichner!
 

frx_0ba31014ba51a9fa2916fb3dd646fde8_rcpt {
        id = "frx_0ba31014ba51a9fa2916fb3dd646fde8_rcpt";

Ändere ich den zu "frx_test_rcpt" ist der Fehler weg. Wer weiß was LUA da in den String interpretiert, den es ja dann offenbar für eine Tabelle hält.

Ich habe 754kB mit ca. 1.500 Mailadressen und nur dieser eine Bezeichner macht die Probleme.

Link to comment
Share on other sites

  • 0

steht halt nur dazu:
 

name - section name that identifies this specific setting (e.g. some_users)

weder was über länge, verbotene zeichen, nix ...würdest du es mal probieren mit gleicher länge nur ohne zahlen? Vllt mag er die nicht ...

Link to comment
Share on other sites

  • 0
12 minutes ago, d00p said:

steht halt nur dazu:
 

name - section name that identifies this specific setting (e.g. some_users)

weder was über länge, verbotene zeichen, nix ...würdest du es mal probieren mit gleicher länge nur ohne zahlen? Vllt mag er die nicht ...

Die Ziffern allein können das Problem nicht sein, denn die ganzen anderen "frx_" Bezeichner und ID haben auch Ziffern und funktionieren. Ich vermute eher, dass da LUA oder rspamd-code intern eine De-/Codierung/Interpretation erfolgt, die zu Zeichen führt, die in der weiteren Verarbeitung auf eine Tabelle hindeuten. Vielleicht sollte der "Zufall" nicht ganz so HEX (vielleicht einfach zwangsweise in den Mittelteil ein Zeichen >f einstreuen 😉 aussehen. Vermutlich ein Fall für den rspamd Entwickler, aber ich brauche auch mit Froxlor erstmal eine Lösung, bis sich der Entwickler bewegt. Machst Du ein Ticket bei rspamd auf oder soll ich (später)?

Link to comment
Share on other sites

  • 0

Ich habe lib/Froxlor/Cron/Mail/Rspamd.php ab Zeile 173 wie folgt angepasst (ein "Z" eingefügt) und erstmal Ruhe:

$this->frx_settings_file .= 'frx_' . $email_id . 'Z_' . $type . ' {' . "\n";
$this->frx_settings_file .= '<->id = "frx_' . $email_id . 'Z_' . $type . '";' . "\n";

Bugreport bei rspamd ist auch eröffnet. Erstaunlich, dass das in anderen Versionen zu funktionieren scheint.

Link to comment
Share on other sites

  • 0

Das hat auch nicht (lange) geholfen. Der Fehler ist wieder da, nur finde ich diesmal die Stelle in der config nicht so schnell ;-(

Der LUA-code, der die settings liest, stolpert irgendwo über "...string expected, got table...".

Link to comment
Share on other sites

  • 0

Es ist wieder dieser Teil:

 

# Email: @ptz-prototypen.de
frx_0ba31014ba51a9fa2916fb3dd646fde8Z_rcpt {
       id = "frx_0ba31014ba51a9fa2916fb3dd646fde8Z_rcpt";
       priority = low;
       rcpt = "@ptz-prototypen.de";
       apply {
               actions {
                       "add header" = 7;
                       rewrite_subject = 7;
                       reject = 14;
               }
       }
}
frx_0ba31014ba51a9fa2916fb3dd646fde8Z_from {
       id = "frx_0ba31014ba51a9fa2916fb3dd646fde8Z_from";
       priority = low;
       from = "@ptz-prototypen.de";
       apply {
               actions {
                       "add header" = 7;
                       rewrite_subject = 7;
                       reject = 14;
               }
       }
}

Das "Z" da anzuhängen wirkt (nun? hatte ich mich zu früh gefreut) nicht mehr.

Link to comment
Share on other sites

  • 0

Wenn ich diesen Teil in ein settings.conf eines anderen Servers A kopiere, ist das reproduzierbar.
Kopiere ich auf Server B, dann nicht. Jetzt muss ich wohl schauen, wo der Unterschied zwischen Quelle + Server A und Server B liegt.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...