Abbiamo server di hosting condiviso che utilizzano PHP fastcgi (su IIS) per diversi client (hosting condiviso). Normalmente i clienti usano un vecchio codice sfruttabile che causa buchi nelle loro applicazioni che alla fine viene utilizzato dagli hacker per installare codice dannoso. La maggior parte delle volte questo codice viene utilizzato per inviare spam dai nostri server.Come limitare la posta SMTP in uscita inviata da PHP
Non abbiamo alcun controllo sul codice dei nostri clienti, quindi l'applicazione delle patch ai fori è praticamente impossibile.
Vorremmo tuttavia bloccare i client che inviano spam quando inviano più di X messaggi di posta elettronica in quantità di tempo Y.
L'installazione è basata su fastcgi, quindi c'è poca relazione tra php e il server web. PHP invia la sua posta tramite SMTP su localhost. Il server di posta consente l'inoltro di tutte le connessioni localhost (ovviamente).
Una cosa che mi passa per la testa è l'impostazione di una variabile di ambiente contenente un identificatore nell'ambiente fastcgi e l'utilizzo dell'opzione file antefatto di php per aggiungere un'intestazione a tutta la posta inviata dal mailer di php. Successivamente, potremmo usare quell'intestazione della posta per identificare il colpevole dello spamming.
L'opzione di cui sopra non si prenderà mai cura degli script di spam utilizzando telnet (telnet localhost, HELO, MAIL FROM, ecc.) Durante l'invio di e-mail.
La mia domanda: è l'idea che ho menzionato la migliore e forse unica opzione per affrontare il nostro problema? O ci sono soluzioni migliori per questa situazione? E se è così, per favore spiega come affronterai il problema.
Non sono sicuro se si tratta di una domanda di programmazione, si potrebbe ottenere una risposta migliore su http://serverfault.com/ – Pitchinnate
Anche io ero in dubbio. Semplicemente non sono sicuro se la soluzione sarebbe sul lato PHP, la fine del server smtp o entrambi .. Beh, probabilmente entrambi. Penso che uno abbia bisogno della conoscenza di entrambi e mi aspetto che più programmatori PHP abbiano conoscenza del server, e viceversa. Se non riesco a ottenere risposte qui, però, chiedo il passaggio a serverfault. –