doc:appunti:linux:sa:postfix-policyd
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
doc:appunti:linux:sa:postfix-policyd [2013/02/04 17:00] – [Patch per l'installazione] niccolo | doc:appunti:linux:sa:postfix-policyd [2021/02/09 10:19] – [postfix-policyd] niccolo | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== postfix-policyd ====== | ====== postfix-policyd ====== | ||
+ | |||
+ | :!: **ATTENZIONE**! Nelle versioni più recenti di Debian (es. **Debian 10 Buster**) il pacchetto **postfix-policyd** è stato rimosso, una alternativa è **[[policyd-rate-limit]]** :!: | ||
Problema: limitare il numero di mail inviate da un singolo utente (identificato da [[http:// | Problema: limitare il numero di mail inviate da un singolo utente (identificato da [[http:// | ||
- | Il programma **policyd** avrebbe tale funzione, più molte altre ({black|grey|white}listing, | + | Il programma **policyd** avrebbe tale funzione, più molte altre ({black|grey|white}listing, |
===== Porting to Wheezy ===== | ===== Porting to Wheezy ===== | ||
Line 21: | Line 23: | ||
===== Patch per l' | ===== Patch per l' | ||
+ | |||
+ | File da modificare: | ||
+ | |||
+ | * **''/ | ||
+ | * **''/ | ||
+ | * **''/ | ||
Il programma richiede un database MySQL, purtroppo lo script per crearlo (''/ | Il programma richiede un database MySQL, purtroppo lo script per crearlo (''/ | ||
+ | |||
+ | **ATTENZIONE: | ||
+ | |||
+ | Questa una traccia per creare database e utente in MySQL: | ||
+ | |||
+ | < | ||
+ | CREATE DATABASE postfixpolicyd; | ||
+ | CREATE USER postfixpolicyd@localhost IDENTIFIED BY ' | ||
+ | GRANT ALL ON postfixpolicyd.* TO postfixpolicyd@localhost; | ||
+ | FLUSH PRIVILEGES; | ||
+ | </ | ||
Anche il file di configurazione (**''/ | Anche il file di configurazione (**''/ | ||
Line 36: | Line 55: | ||
</ | </ | ||
+ | Altro grave problema riguarda lo script **''/ | ||
+ | |||
+ | ===== Configurazione ===== | ||
+ | |||
+ | Questi sono i parametri modificati in **/ | ||
+ | |||
+ | < | ||
+ | DEBUG=1 | ||
+ | |||
+ | GREYLISTING=0 | ||
+ | SENDERTHROTTLE=1 | ||
+ | |||
+ | SENDER_THROTTLE_SASL=1 | ||
+ | SENDER_THROTTLE_HOST=0 | ||
+ | SENDERMSGLIMIT=25 | ||
+ | SENDERRCPTLIMIT=50 | ||
+ | SENDERTIMELIMIT=15m | ||
+ | </ | ||
+ | |||
+ | **ATTENZIONE**: | ||
+ | |||
+ | <code sql> | ||
+ | SELECT _from, _count_max, _count_cur, _rcpt_max, _rcpt_cur, _rcpt_tot FROM throttle; | ||
+ | </ | ||
+ | |||
+ | Dopo aver avviato il demone si deve dire a Postfix di fare un check sul servizio **postfix-policyd** per ogni messaggio: | ||
+ | |||
+ | < | ||
+ | smtpd_relay_restrictions = | ||
+ | check_policy_service inet: | ||
+ | permit_sasl_authenticated, | ||
+ | reject | ||
+ | </ | ||
+ | |||
+ | Nelle vecchie versioni di Postfix si doveva includere il controllo nella direttiva **smtpd_recipient_restrictions**, | ||
+ | ===== Verifica del funzionamento ===== | ||
+ | |||
+ | In ''/ | ||
+ | |||
+ | < | ||
+ | postfix-policyd: | ||
+ | to=niccolo@example.org, | ||
+ | rcpt=2/ | ||
+ | </ | ||
+ | |||
+ | È importante vedere la stringa **throttle=update(a)**, | ||
+ | |||
+ | Collegandosi a MySQL è possibile vedere lo stato del throttling: | ||
+ | |||
+ | <code sql> | ||
+ | SELECT _from, _count_cur FROM throttle ORDER BY _count_cur ASC; | ||
+ | </ | ||
+ | |||
+ | Per resettare i contatori manualmente: | ||
+ | |||
+ | <code sql> | ||
+ | UPDATE throttle SET _count_cur = 0, _rcpt_cur = 0 WHERE _from = ' | ||
+ | </ | ||
===== Cleanup cronjob ===== | ===== Cleanup cronjob ===== | ||
+ | |||
+ | Le operazioni di expire e cleanup sul database vanno eseguite da un cronjob: | ||
< | < | ||
/ | / | ||
</ | </ | ||
+ |
doc/appunti/linux/sa/postfix-policyd.txt · Last modified: 2024/04/15 15:21 by niccolo