SpamAssassin, fanculo. Amavis, fanculo!

In poche parole, si e` rotto un bastardo controller RAID hardware con memoria onboard e piccoli falli ornamentali sul connettore PCI-X64 donatomi da quel gay di ska, per installarlo su uno stronzo mailserver e fargli fare fist-fucking-anal-cunt-smerdagging con il buon LINUCS e XFS e due anzi no tre HARD-CORE-DISCS da 500 gigakazz l'uno.

Simpaticamente, stanco delle troppe feste porconatalizie, il giorno della vigilia della befana (o forse un po' prima) lo stronzo controller decide che non e` piu` ora di fare il suo lavoro di fist-anal-cunt-disk-fucking-mirroring-1 e inizia a ... BEEEEEEPPare come un bambinetto di 3 anni cui hanno appena ammazzato la mamma, insistentemente, ogni 7 secondi sputa fuori un BEEEP che ne dura almeno 10.

Sull'internet delle meraviglie si racconta, anzi un linuxaro incallito rotto nel culo racconta che "it's enough to update firmware to the latest revision to make this problem disappear!". Inutile dire che non e` vero per un cazzo, in quanto tra orrendi sospiri e preghiere inutili, l'unico slot dove ha senso montare il bastardo EX-controller MERDRAID e` quello sito tra la chiappa destra e quella sinistra di un muflone abruzzese da riproduzione.

( boom )

Comunque, poco male in quanto dopo aver passato una giornata abbondante a farmi seghe sull'on-disk format dell'ex controller pensando che avesse scritto metadati sul disco e che quindi questo fosse inutilizzabile standalone come nelle migliori storie di soluzioni proprietarie, scopro con sommo piacere che il bastardo boota anche se collegato ad un controller raid-onanist, quindi standalone, e l'extremely-fucking-critical server con su il suo bel linucs torna su, tra uno spasimo e l'altro, mentre il suo sysadm (io) pensa che poiche` lissu` ci gira solo merdaccia opensorca sia tutto bello ed okay.

invece no, perche` la mail queue di postfix inizia a crescere a dismisura, e il kernel vomita spropositi di questo tipo:

[106993.050838] amavisd-new[16330]: segfault at 00000090
                eip b7450e7a esp bfc14ae4 error 4
[106993.071092] amavisd-new[16331]: segfault at 00000090
                eip b7450e7a esp bfc14ae4 error 4
[106997.641155] printk: 223 messages suppressed.
[106997.641176] amavisd-new[16555]: segfault at 00000090
                eip b7450e7a esp bfc14ae4 error 4
[107002.630743] printk: 243 messages suppressed.

eh, si`, il bastardo amavis crasha come uno scolaretto di prima elementare, e da bravo simpaticone qual e`, non pensa mica di throttlare i processi child (of a bitch) ma invece di continuare a spawnarne (dal culo) infiniti, con sommo piacere del load average che si stabilisce costante su 2.4, SENZA LOGGARE MEZZA RIGA DENTRO SYS-FUCK-IN-THE-ASS-LOG e provocando serie di bestemmie e strace -f indicibili al povero sysadm (sempre io) che lo vede segfaultare su una close(2). Si`, close(6) per la precisione, 6 ritornato da quell'aborto di open("/usr/lib/sasl2/sarcazzo", O_DIRECTORY|O_MADONNA|O_PORCA) che solo un linux kernel hacker poteva partorire.

Insomma, dopo smadonnamenti e upgrade e downgrade e apt-porn-get di componenti che non giocano minimamente un ruolo nel fantastico sigsegv dell'amato amavis, mi vien da pensare a quale sia il software piu` stronzo che ho installato e configurato in diversi anni di amministrazione di mailserver, e la risposta e` facile in quanto l'aborto SpamAssassin inizia a fare capolino nella lista delle prove alla cieca che sto facendo. Essi`, disabilitato l'ANTI-SPAM-SA code del maledetto amavis, esso in brodo di giuggiole sale e forka e inizia a forwardare le TONNELLATE di spam nella mail queue... postfix stop e cerchiamo di trovare una soluzione.

...

No, niente soluzione, qualunque combinazione 1-X-2 di versioni che posso fare con l'orrido set di package tra sarge e backports.org non yielda niente di funzionante, e la nevrosi aumenta perche` quel sistema era up da *mesi* e non aveva mai dato l'impressione di volersi fermare. Colto da nevrosi insostenibile decido che un po' di spam se lo possono pure cancellare a mano, e ristarto la baracca senza il lurido SpamAssassin e lascio che lo spam flow intasi per un po' di tempo il mail server. Che Mail.app me la mandi buona.

Fast forward di un paio di giorni, cerco un replacement per SA e alla fine tutti dicono "dspam ftw", okay, diamogli un'occhiata.

Dopo un'oretta per digerire tutta la documentazione, mi rendo conto che il bastardo dspam sembra essere adatto, supporta anche clamav (ma solo da TCP, bah) e quindi mi permette di sparare due piccioni con un solo apt-get, visto che posso far fuori anche lo stronzissimo amavisd-new. Poi db su mysql, interfaccina web per la gestione di training e quarantena, basso memory footprint e cpu load .. si`, e` un software fatto bene che sembra il paradiso rispetto al delirio che ho dovuto tirar su e mantenere per SA e Amavis. Ho dovuto tweakare il codice per non dover riconfigurare tutto il resto del mail server e sono quasi impazzito per incollare due pezzi tanto che ho scritto questa cosa:

query = select                                         \
  if('%s' regexp '^(spam|notspam)-',                   \
    concat(left('%s', locate('-', '%s')), dest),       \
    dest) as value                                     \
  from virtual                                         \
  where alias = if('%s' regexp '^(spam|notspam)-',     \
    replace(replace('%s', 'notspam-', ''), 'spam-', ''),\
    '%s')                                              \

dentro al file di conf della mysql virtual table di postfix, con lo scopo di far funzionare le spam- e notspam- traps dove l'utente puo` inviare i messaggi di spam e non spam per fare retraining di false positive/negative, per poi adottare una soluzione molto piu` semplice: MySQLUIDInSignature on in dspam.conf e spam: "| /usr/bin/dspam --user root --class=spam --source=error" in un file di aliases ownato dall'utente dspam. dio carogna.

Comunque, staremo a vedere se dopo il training arriva davvero al 99.5% di accuracy. E` molto fighetto cmq, dovreste provarlo se odiate la complessita` di spamassassin e compagnucci perl.

Comunque, c'e` chi dice che l'IT entro qualche anno non esistera` piu`, e infatti perche` farsi tutti questi sbattimenti quando c'e`, ad esempio, Google Apps? Outsourcing, in poche parole.

Ma "sono paranoico" (come in itsec is burning, yay!) e finche` posso preferisco tenermi tutta la merda che ho nella posta su qualche server, dove mi collego via vpn e sono r00t Sticking out tongue.

sux =)

ps. Page execution time was 24436.65 ms. ... .......

============================================================================================================================================