Tämä näyttää erot valitun ja nykyisen version kesken tästä sivusta.
Both sides previous revisionEdellinen revisioSeuraava revisio | Edellinen revisioSeuraava revisioBoth sides next revision | ||
faq:grossdconf [2011-11-06 14:05] – haa | faq:grossdconf [2012-04-04 15:01] – cat | ||
---|---|---|---|
Rivi 1: | Rivi 1: | ||
+ | ====== Harmaalistauksen toteutus IKI:ssä (grossd konfiguraatio) ====== | ||
+ | //Tällä sivulla kerrotaan miten ja miksi grossd on konfiguroitu iki:ssä sekä esitetään miten sen asentaminen käyttöön tapahtuu esim. NetBSD, Linux ja MacOSX-palvelimissa.// | ||
+ | |||
+ | Tämä sivu on tarkoitettu sähköpostijärjestelmien ylläpitäjille avuksi ja vinkiksi. Tavallisen käyttäjän ohjeita sekä taustatietoja löytyy mm. FAQ-sivulta [[faq: | ||
+ | |||
+ | Tältä sivulta löytyy myös asennusohjeet ympäristöihin NetBSD ja Sendmail, Linux ja Postfix ja MacOSX ja Postfix. | ||
+ | |||
+ | ===== Johdanto ===== | ||
+ | |||
+ | Tämä sivu kuvaa konfiguraatiota 18.5.2008, voi olla että sen jälkeen sitä on hienosäädetty ilman että tätä FAQ-sivua on muistettu päivittää. | ||
+ | |||
+ | Lisätietoja itse Grossista löytyy osoitteesta [[http:// | ||
+ | ===== Käytössä olevat estolistat ===== | ||
+ | |||
+ | IKI:ssä on käytössä seuraavat estolistat. Näiden listojen perusteella ei siis estetä postia kokonaan, listoilla oleviin sovelletaan harmaalistausta. Oikea posti tulee siis näistäkin paikoista läpi mutta pienellä viiveellä. | ||
+ | |||
+ | dnsbl = mXXXXu.zen.dq.spamhaus.net # maksullinen, | ||
+ | dnsbl = bl.spamcop.net | ||
+ | dnsbl = combined.njabl.org | ||
+ | dnsbl = dnsbl.sorbs.net | ||
+ | |||
+ | Käytössä olevat estolistat on havaittu hyvin toimiviksi ja käytännössä luotettaviksi. | ||
+ | |||
+ | ===== Grossd.conf ===== | ||
+ | |||
+ | Iki:n palvelimissa konfiguraatiota on muutettu oletuksesta seuraavasti oletusasetuksista. | ||
+ | |||
+ | grey_delay = 180 | ||
+ | |||
+ | Tämä asetus määrää että ensimmäisen harmaalistatun yrityksen jälkeen voi onnistua vasta 3 minuutin kuluttua. Oletusarvo oli ainakin joskus 10 sekuntia joka on turhan lyhyt -- kuulemma jotkut spämmiohjelmat yrittävät parin sekunnin välein jonkin aikaa jos onnistuisivat pääsemään läpi. | ||
+ | |||
+ | number_buffers = 13 | ||
+ | rotate_interval = 7200 | ||
+ | |||
+ | IKI:ssä halutaan pitää sallittu harmaalistaus (eli onnistunut uudelleen yritys) voimassa noin 24h, sen jälkeen viestit harmaalistataan uudelleen. Nämä asetukset tarkoittavat että tiedot ovat voimassa noin 13*2h ajan eli vähintään 24h. Grossissa on käytössä kiertävä lista filtteripuskureita joilla aikamääre saadaan aikaan. | ||
+ | |||
+ | sync_listen = TAMAKONE.iki.fi | ||
+ | sync_peer = TOINENMX.iki.fi | ||
+ | |||
+ | Tämä asetus aktivoi ja konfiguroi kahden postipalvelimen välisen synkronoinnin joka on ehdottomasti suositeltava asetus jos samalla domainilla on useita MX-palvelimia, | ||
+ | |||
+ | statefile = / | ||
+ | |||
+ | Tämä asetus aktivoi tilatiedoston, | ||
+ | |||
+ | protocol = milter | ||
+ | |||
+ | Tämä laittaa milter-rajapinnan käyttöön. IKI:ssä käytetään toistaiseksi Sendmailia MTA:na ja se keskustelee suodattimien kanssa milter-rajapinnalla. | ||
+ | |||
+ | milter_listen = inet: | ||
+ | |||
+ | Tämä kertoo missä portissa gross kuuntelee milter-pyyntöjä. | ||
+ | |||
+ | ===== Sendmail.cf ===== | ||
+ | |||
+ | Sendmailissa milter-rajapinta on konfiguroitu käyttöön seuraavilla asetuksilla. Tämä on tehty IKIgross.mc -tiedostoon josta makroilla sitten genetoiruu IKIgross.cf -tiedosto joka on se " | ||
+ | |||
+ | INPUT_MAIL_FILTER(`Gross', | ||
+ | |||
+ | Tässä S= -asetukset ovat siis samat kuin grossille annetut. T= timeout -asetukset oletuksena olivat iki:ssä turhan lyhyitä jolloin hidas DNS-vastaus tms saattoi aiheuttaa timeoutteja. Yllä annetut arvot ovat aika konservatiivisia varmuuden vuoksi vielä testikäyttövaiheessa, | ||
+ | |||
+ | Jos sendmail havaitsee että milter ei vastaa, se lopettaa tietojen kyselemisen sieltä, eli jos grossd menee jostain syystä rikki, niin sendmail toimii sitten ilman suodatusta. | ||
+ | |||
+ | ===== Grossd:n asentaminen ===== | ||
+ | |||
+ | IKI:ssä on käytössä NetBSD käyttöjärjestelmä. Alempana myös Linux-ohjeet. | ||
+ | |||
+ | ====== NetBSD ja Sendmail ====== | ||
+ | |||
+ | ===== Grossd:n asennusoptiot ===== | ||
+ | |||
+ | IKI:ssä käytettiin seuraavaa configure-komentoa: | ||
+ | |||
+ | CFLAGS=" | ||
+ | |||
+ | Optioiden selitys: | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | ===== Grossd:n vaatimien kirjastojen asennus ===== | ||
+ | |||
+ | Grossd tarvitsee libmilter (Sendmailin kansa) ja libcares (asynkroniset nimipalvelukutsut) -kirjastot toimiakseen. | ||
+ | |||
+ | NetBSD:ssä libmilter pitää myös kääntää isommalla FD_SETSIZE -optiolla jotta suuri määrä avoimia milter-socketteja toimii kunnolla: | ||
+ | |||
+ | cd / | ||
+ | |||
+ | ===== / | ||
+ | |||
+ | IKI:n netbsd-koneissa on käytössä seuraava käynnistysscripti grossd:lle. | ||
+ | |||
+ | Huomioitavaa on '' | ||
+ | |||
+ | < | ||
+ | #!/bin/sh | ||
+ | # | ||
+ | # NetBSD startup script for grossd | ||
+ | # | ||
+ | # PROVIDE: grossd | ||
+ | # REQUIRE: named | ||
+ | # BEFORE: mail | ||
+ | |||
+ | $_rc_subr_loaded . / | ||
+ | |||
+ | name=" | ||
+ | rcvar=$name | ||
+ | command="/ | ||
+ | required_files="/ | ||
+ | |||
+ | grossd_chdir=/ | ||
+ | |||
+ | ulimit -n 2048 | ||
+ | |||
+ | extra_commands=" | ||
+ | statistics_cmd=grossd_statistics | ||
+ | grossd_statistics() | ||
+ | { | ||
+ | telnet -4 localhost 5522 | grep Grossd | ||
+ | } | ||
+ | |||
+ | load_rc_config $name | ||
+ | run_rc_command " | ||
+ | |||
+ | # EOF | ||
+ | </ | ||
+ | |||
+ | ====== OpenSUSE Linux 10.3 ja Postfix-maileri ====== | ||
+ | |||
+ | Nämä ohjeet saattavat toimia jossain toisessakin Linux-variantissa. Imuroi ensin, käännä ja asenna ensin c-ares -kirjasto ja grossd. Editoi sitten ylläolevien vinkkien mukaan grossd:n konfiguraatio-tiedosto haluamallasi tavalla. Konfiguroi Postfix laittamalla '' | ||
+ | |||
+ | ... | ||
+ | smtpd_recipient_restrictions = | ||
+ | permit_mynetworks | ||
+ | reject_unauth_destination | ||
+ | check_policy_service inet: | ||
+ | ... | ||
+ | |||
+ | Laita sitten seuraava scripti tiedostoon ''/ | ||
+ | |||
+ | < | ||
+ | #!/bin/sh | ||
+ | # | ||
+ | # LSB compatible service control script; see http:// | ||
+ | # | ||
+ | ### BEGIN INIT INFO | ||
+ | # Provides: | ||
+ | # Required-Start: | ||
+ | # Should-Start: | ||
+ | # Required-Stop: | ||
+ | # Should-Stop: | ||
+ | # Default-Start: | ||
+ | # Default-Stop: | ||
+ | # Short-Description: | ||
+ | # Description: | ||
+ | # | ||
+ | ### END INIT INFO | ||
+ | |||
+ | grossd_BIN=/ | ||
+ | test -x $grossd_BIN || { echo " | ||
+ | if [ " | ||
+ | else exit 5; fi; } | ||
+ | . / | ||
+ | rc_reset | ||
+ | |||
+ | case " | ||
+ | start) | ||
+ | echo -n " | ||
+ | / | ||
+ | rc_status -v | ||
+ | ;; | ||
+ | stop) | ||
+ | echo -n " | ||
+ | / | ||
+ | rc_status -v | ||
+ | ;; | ||
+ | restart) | ||
+ | $0 stop | ||
+ | $0 start | ||
+ | rc_status | ||
+ | ;; | ||
+ | status) | ||
+ | echo -n " | ||
+ | / | ||
+ | rc_status -v | ||
+ | ;; | ||
+ | *) | ||
+ | echo " | ||
+ | exit 1 | ||
+ | ;; | ||
+ | esac | ||
+ | rc_exit | ||
+ | </ | ||
+ | |||
+ | Aseta grossd käynnistymään komennolla '' | ||
+ | |||
+ | (5.9.2008 haa, thanks to jake) | ||
+ | |||
+ | ====== Mac OSX ja postfix ====== | ||
+ | |||
+ | Kokeiltu OSX 10.5.8, toiminee client + server uudemmatkin. | ||
+ | |||
+ | ===== Grossd asentaminen OSX:ään ===== | ||
+ | |||
+ | Asenna macports -paketista c-ares kirjasto: | ||
+ | port install c-ares | ||
+ | |||
+ | Käännä grossd seuraavilla asetuksilla (oletuksena että kehitystyökalut XCode on asennettu): | ||
+ | CPPFLAGS=" | ||
+ | make | ||
+ | sudo make install | ||
+ | |||
+ | Optioiden selitys: '' | ||
+ | |||
+ | Tällöin grossd:n konfiguraatio löytyy tiedostosta ''/ | ||
+ | |||
+ | ===== Grossd automaattinen käynnistys OSX:ssä ===== | ||
+ | |||
+ | Luo tiedosto ''/ | ||
+ | |||
+ | < | ||
+ | <?xml version=" | ||
+ | < | ||
+ | <plist version=" | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | Laita tiedosto rootin omistukseen: | ||
+ | sudo chown root / | ||
+ | |||
+ | Aja sitten komento | ||
+ | sudo launchctl load -w / | ||
+ | jolloin prosessin pitäisi käynnistyä automaattisesti koneen bootissa. | ||
+ | |||
+ | Seuraavalla komennolla voit kokeilla onko '' | ||
+ | telnet localhost 5522 | ||
+ | sen pitäisi tulostaa statustietoja. Statustiedot voi katsoa muutenkin ajoittain jos haluaa seurata toimintaa. | ||
+ | |||
+ | Pysäyttäminen onnistuu komennolla | ||
+ | sudo launchctl unload -w / | ||
+ | |||
+ | ===== Postfix OSX:ssä ===== | ||
+ | |||
+ | Voit käyttää systeemin mukana tulevaa postfixiä tai asentaa oman macports-paketista. Konfiguroi ensin postfix toimimaan muuten haluamallasi tavalla oikein. | ||
+ | |||
+ | Laita postfixin '' | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | smtpd_recipient_restrictions = | ||
+ | permit_mynetworks | ||
+ | reject_unauth_destination | ||
+ | check_policy_service inet: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Ja käynnistä postfix uudelleen. | ||
+ | |||
+ | Lokiin (''/ | ||
+ | Nov 6 14:55:43 hostname com.grossd.server[31928]: | ||
+ | #f070d000: a=trust d=173 w=0 c=212.16.98.50 s=XXXX@EXAMPLE.iki.fi r=XXXX@EXAMPLE.com | ||
+ | h=EXAMPLE.iki.fi | ||
+ | Seuraavan laisia tulee taas mustalistatuista kohteista joita sitten harmaalistataan: | ||
+ | Nov 6 15:00:48 hostname com.grossd.server[31928]: | ||
+ | #f070d000: a=greylist d=49 w=1 c=218.147.XXX.XXX s=XXXX@ihaa.com r=XXXX@ihaa.com | ||
+ | h=?????? m=bl.spamcop.net+1 |