npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

haraka-plugin-uribl

v1.0.8

Published

Haraka plugin that checks domains in emails against URI blacklists

Downloads

4,324

Readme

CI Test Status Code Climate NPM

haraka-plugin-uribl

This plugin extracts URIs and feeds them to RHS based blacklists such as DBL and SEM-FRESH and body URI based DNS blacklists such as SURBL and URIBL.

This plugin will discard any domain name that does not have a valid TLD or any IP address within RFC1918, 127/8 or 169.254/16 (APIPA) and will convert any URI ending in in-addr.arpa into an IP address lookup.

Configuration

This plugin reads configuration from uribl.ini.

The main section defines global settings for all lists and the blacklists zones are specified as INI section headings with the configuration for each zone within that section.

The main section can contain the following options:

  • timeout

    Default: 30

    The total timeout in seconds for each group of lookups. Any group of lookups that takes longer than this will be aborted and the session will continue.

  • max_uris_per_list

    Default: 20

    This option limits the maximum number of unique lookups that will be submitted for each list after the input has been normalized into the query format required for the list. Any lookups greater than the limit will be discarded.

List sections should be named as the zone of the blacklist and can contain the following options:

At least one of the following must be set for any queries to be run for the blacklist.

  • rdns = 1 | true | yes | on | enabled

    Check any rDNS names against the list.

  • helo = 1 | true | yes | on | enabled

    Check the EHLO/HELO argument against the list.

  • envfrom = 1 | true | yes | on | enabled

    Check the MAIL FROM domain against the list.

  • from = 1 | true | yes | on | enabled

    Check the domain portion of the From: header against the list.

  • replyto = 1 | true | yes | on | enabled

    Check the domain portion of the Reply-To: header against the list.

  • msgid = 1 | true | yes | on | enabled

    Check the RHS of the Message-Id: header against the list.

  • body = 1 | true | yes | on | enabled

    Check any URIs found within the body of the message against the list.

The following are optional for each list:

  • custom_msg

    A custom rejection message that will be returned to the SMTP client if the list returns a positive result. If found within the string {uri} will be replaced by the URI value looked up and {zone} will be replaced by the blacklist zone name.

  • validate

    A regular expression that will be tested against the first A record returned by the list. If it does not evaluate to true then the positive result will be discarded. Example: ^(?!127.0.1.255)127. would check that the IP address returned start with 127. and is not 127.0.1.255

  • bitmask

    This is optionally used for lists such as SURBL and URIBL that return bitmask values in the last octet of the returned IP address to combine multiple lists into a single zone. Using this you may specify which lists within the zone you want use.

  • no_ip_lookups = 1 | true | yes | on | enabled

    Specifies that no IP addresses should ever be check against this list. This is required for dbl.spamhaus.org.

  • strip_to_domain= 1 | true | yes | on | enabled

    Specifies that the list requires hostnames be stripped down to the domain boundaries prior to querying the list. This is required for the SURBL and URIBL lists.

Spamhaus DQS

  • dqs_key

DQS key for Spamhaus's DQS mirrors.

Other files

  • data.uribl.excludes

    This contains a list of domains that should never be looked up in any blacklist as they are known good and will never be listed. This helps to keep useless queries to a minimum.