#haraka

/

      • PixelPaul joined the channel
      • PixelPaul
        anyone have a recommended DNSBL zone list to use?
      • ultimatt
        if you used only one, barracudacentral
      • PixelPaul
        yeah i am using that and zen.spamhaus.org
      • ultimatt
        yeah, zen is good too
      • PixelPaul
        weir, my early_talker isn' working
      • ultimatt
        I have it disabled right now, something about it is broken
      • PixelPaul
        ohh, thats a shame
      • fixed it :-)
      • ultimatt
        yeah?
      • PixelPaul
        it won't run if you are relaying
      • which i am doing
      • ultimatt
        that's reasonable enough...
      • PixelPaul
        it only does it for the DATA command, i am thinking of having it for every command
      • to really piss of the spammers
      • ultimatt
        the reason not to do that is PIPELINING
      • PixelPaul
        true
      • maybe just the help and then the data one would be okay then
      • do you see any problems with having a 10sec delay for help and data?
      • helo*
      • ultimatt
        nope, I often do
      • that's what karma's tarpit feature does
      • the poorer quality the connection, the longer it takes
      • high quality connections fly through with no delays
      • PixelPaul
        actually i am going to do connect and data
      • so they get no response for 10d, more likelyy to stop spam say
      • 10s
      • ultimatt
        tarpits (connections that take > 1 minute) combined with connection limits (1 concurrent connection per bad IP) really helps limit how much spam gets through for "warm" IPs that are starting their spam runs and aren't DNSBL listed yet
      • PixelPaul
        that karma looks complicated
      • ultimatt
        somewhat...
      • at it's heart, it's merely a scoring engine.
      • the complicated part is figuring out what tokens in the message / connection are the most reliable spam indicators
      • and then assigning them appropriate scores
      • after that, it's all easy peasy.
      • PixelPaul
        not sure how to use it with my custom plugins
      • ultimatt
        with karma, no other plugins are allowed to block the connection
      • other plugins save their results, and the results are scored by karma
      • PixelPaul
        i have a custom plugins tho that send deny replies
      • so your saying i can't do that
      • ultimatt
        sure you can
      • that's a "general" rule
      • karma has a deny_excludes section
      • because normally it "catches" deny attempts
      • so you can let your custom deny do its thing
      • At some point I'll have my own custom deny plugin as well
      • that links to https://mail.theartfarm.com/haraka/ -> Why Blocked
      • PixelPaul
        okay, so i add my custom deny plugins to the exclude list
      • ultimatt
        yup
      • PixelPaul
        and i enable all these other check plugins that karma uses
      • ultimatt
        right, with deny=false settings, where the plugins have them
      • most do, b/c I added them.
      • PixelPaul
        do i have to pass anything special from my plugins to the notes?
      • ultimatt
        you do if you want karma to score stuff from it
      • EyePulp joined the channel
      • PixelPaul
        and it has to run of a redis server
      • never setup one of those before
      • ultimatt
        It's very easy
      • PixelPaul
        hmm, because i have 3 receiving mail servers. i wonder if okay to run each karma on it's own redis server
      • ultimatt
        you can, but I'd point 'em all at the same one
      • redis is very fast (~50,000 qps)
      • PixelPaul
        but what if reds server goes down. what does karma do then?
      • ultimatt
        there's no backup redis yet. Hasn't been a need yet.
      • it'll probably happen when I want to use redis in cluster mode
      • with automatic failover
      • On a dozen servers with karma, I've had exactly one issue (server in TX lost power during the flooding)
      • PixelPaul
        i have mail servers in different countries so i am a bit worried if the connection to the reds can't be made
      • ultimatt
        on that one, Redis db was corrupted by power outage. Easy, delete the DB and restart.
      • then have local redis on each host
      • PixelPaul
        yeah, i think thats going to be the best option
      • ultimatt
        Redis works splendidly locally, but I'm still eying this for the future: http://redis.io/topics/cluster-tutorial
      • donspaulding joined the channel
      • PixelPaul
        looks good
      • so you just install it and wolf
      • no need to setup tables or anything
      • ultimatt
        right
      • what I really wish was that Redis Cluster was more like Elasticsearch: write to any Redis server, data is automatically sharded across servers, connect/read from any server, and the ability to lose any server without data loss because there's always a copy on another server.
      • PixelPaul
        yeah that would be nice
      • kinda what i have with mariadb
      • ultimatt
        yeah, with master-master replication?
      • that works really well, except when replication breaks
      • PixelPaul
        using galleria cluster
      • erezny joined the channel
      • ultimatt
        ah yes: synchronous multi-master
      • PixelPaul
        what version of redis you using?
      • ultimatt
        same as mysql master-master
      • heh, don't know. I'd just grab the latest
      • in my case: pkg install redis
      • PixelPaul
        yum is only giving me 2.4 for some reason
      • ultimatt
        that'll be fine
      • lnb
        ultimatt: get a signed cert for the hostname of the haraka server and put it and key file in /usr/local/haraka/config/
      • correct?
      • ultimatt
        yes
      • lnb
        how to tell if the cert is good?
      • ultimatt
        connect to it
      • lnb
        i mean apachectl for example will choke if not good
      • ok
      • ultimatt
        so will haraka if format is wrong
      • lnb
        i have to find that connect command
      • after putting files there.. /usr/local/etc/rc.d/haraka restart
      • no issues
      • ok connected with openssl s_client -connect host.domain.tld:993 but how to tell if that cert is good?
      • Verify return code: 18 (self signed certificate) ???
      • i put valid cert there
      • not self signed
      • PixelPaul
        hmmm, how would karma go with my grey listing plugin i wonder
      • ultimatt
        you'll want to let greylist denysoft to pass
      • (add to exclude list)
      • although, karma lets temp deny pass by default
      • so come to think of it, you shouldn't need to do anythign
      • PixelPaul
        does karma have a list i can add an ip to ignore. my haproxy ip
      • ultimatt
        it does not
      • karma scores based on other plugins
      • ...mostly
      • PixelPaul
        hmmm changed the delay=5 but didn't seem to delay it
      • i think i still want to delay even known good clients
      • ultimatt
        edit exports.apply_tarpit
      • and add: 'return 5;' at the top of it
      • actualy, add that after the utils.in_array line
      • else you'll have issues
      • sorry: plugin.tarpit_delay
      • that's the one you want to add that line to the top of, it determines how long to wait
      • PixelPaul
        in karma.js ?
      • ultimatt
        yes
      • PixelPaul
        i must have an older version then
      • ultimatt
        then it won't take karma score into account
      • maybe...
      • if you're running the latest Haraka version, certainly
      • grab the latest from master
      • it's also simpler
      • :-)
      • PixelPaul
        all good, i changed the code in my version :-)
      • ahh tarpit does every reply hammy
      • so please correct me on this
      • ...
      • if i have a plugin.... nywhitelistplugin
      • and that plug passes next()
      • and then in karma under awards. i put a rule...
      • nywhitelistplugin = 5
      • ultimatt
        nothing
      • nywhitelistplugin has to save some data somewhere
      • donspaulding has quit
      • either in result_store (connection.results.add(plugin, { fail: 'oops, failed test' });
      • or in connection/transaction note: connection.notes.nywhitelistplugin.argggg=yes
      • PixelPaul
        i getca
      • ultimatt
        and then, in karma.ini, you have a match rule that assigns karma points
      • notes.nywhitelistplugin.argggg=yes = -3 if equals
      • or
      • results.fail.oops = -3 if match