#network: # Network settings # ip: '1.1.1.1' # Specify source IP address if you want to bind on a specific one archive: save: yes # Keep a copy of pasties that triggered alerts save-all: yes # Keep a copy of all pasties dir: "alerts" # Directory where matching pasties should be kept dir-all: "archive" # Directory where all pasties should be kept (if save-all is set to yes) compress: yes # Store the pasties compressed engine: re # Only re (default) or regex (pip install regex) are supported. strict_regex: no # when compiling regex, hard fail or not on error save-thread: no # Use a separate thread to save pasties db: sqlite3: # Store information about the pastie in a database enable: no # Activate this DB engine # NOT FULLY IMPLEMENTED file: 'db.sqlite3' # The filename of the database lookup: no # lookup sqlite for already seen pasties mongo: save: no # Keep a copy of pasties that triggered alerts save-all: no # Keep a copy of all pasties save-profile: # configure which data to save content-on-miss: no # save the content even on miss timestamp: no # add the timestamp (UTC) url: no # add the public URL site: no # add the site id: no # add the per-site id matched: no # add the matched status (usefull if content-on-miss = yes) filename: no # add the local filename (to no store content in mongodb) lookup: no # lookup mongodb for already seen pasties database: "paste" collection: "paste" url: "mongodb://localhost" user: password: redis: queue: yes # Keep a copy of pasties that triggered alerts queue-all: yes # Keep a copy of all pasties server: "localhost" port: 6379 database: 10 lookup: no # lookup redisdb for already seen pasties (NOT IMPLEMENTED) email: alert: no # Enable/disable email alerts from: alert@example.com to: alert@example.com server: 127.0.0.1 # Address of the server (hostname or IP) port: 25 # Outgoing SMTP port: 25, 587, ... tls: no # Enable/disable tls support username: '' # (optional) Username for authentication. Leave blank for no authentication. password: '' # (optional) Password for authentication. Leave blank for no authentication. subject: '[pystemon] - {subject}' ##### # Definition of regular expressions to search for in the pasties # search: # - description: '' # (optional) A human readable description used in alerts. # # If left unspecified the search regular expression # # will be used as description. # search: '' # The regular expression to search for. # count: '' # (optional) How many hits should it have to be interesting? # exclude: '' # (optional) Do not alert if this regular expression matches # regex-flags: '' # (optional) Regular expression flags to give to the find function. # # Default = re.IGNORECASE # # Set to 0 to have no flags set # # See http://docs.python.org/2/library/re.html#re.DEBUG for more info. # # Warning: when setting this the default is overridden # # example: 're.MULTILINE + re.DOTALL + re.IGNORECASE' # to: '' # (optional) Additional recipients for email alert, comma separated list - search: '[^a-zA-Z0-9]example\.com' - search: '[^a-zA-Z0-9]foobar\.com' - description: 'Download (non-porn)' search: 'download' exclude: 'porn|sex|teen' count: 4 ##### # Configuration section for the paste sites # threads: 1 # number of download threads per site site: # example.com: # archive-url: # the url where the list of last pasties is present # # example: 'http://pastebin.com/archive' # archive-regex: # a regular expression to extract the pastie-id from the page. # # do not forget the () to extract the pastie-id # # example: '.+' # download-url: # url for the raw pastie. # # Should contain {id} on the place where the ID of the pastie needs to be placed # # example: 'http://pastebin.com/raw.php?i={id}' # public-url: # optional, defaults to be the same as download-url, so it should meet the same requirements # # is used for display in logging and e-mail notifications # update-max: 40 # every X seconds check for new updates to see if new pasties are available # update-min: 30 # a random number will be chosen between these two numbers # pastie-classname: # OPTIONAL: The name of a custom Class that inherits from Pastie # # This is practical for sites that require custom fetchPastie() functions pastebin.com: archive-url: 'https://pastebin.com/archive' archive-regex: '.+' download-url: 'https://pastebin.com/raw/{id}' update-max: 50 update-min: 40 # See https://pastebin.com/api_scraping_faq , you will need a pro account on pastebin pastebin.com_pro: archive-url: 'https://scrape.pastebin.com/api_scraping.php?limit=500' archive-regex: '"key": "(.+)",' download-url: 'https://scrape.pastebin.com/api_scrape_item.php?i={id}' public-url: 'https://pastebin.com/raw/{id}' update-max: 50 update-min: 40 slexy.org: archive-url: 'https://slexy.org/recent' archive-regex: 'View paste' download-url: 'https://slexy.org/view/{id}' pastie-classname: PastieSlexyOrg gist.github.com: archive-url: 'https://gist.github.com/discover' archive-regex: '' download-url: 'https://gist.githubusercontent.com/{id}/raw/' codepad.org: archive-url: 'http://codepad.org/recent' archive-regex: 'view' download-url: 'http://codepad.org/{id}/raw.txt' kpaste.net: archive-url: 'http://kpaste.net/' archive-regex: '" href="/(\w+)">' download-url: 'http://kpaste.net/{id}?raw' ideone.com: archive-url: 'http://ideone.com/recent' archive-regex: '#' download-url: 'http://ideone.com/plain/{id}' pastebin.ru: archive-url: 'http://pastebin.ru/' archive-regex: '' download-url: 'http://pastebin.ru/{id}' pastebin.fr: archive-url: 'http://pastebin.fr' archive-regex: '' # download-url: 'http://pastie.org/pastes/{id}/text' # pastebin.ca: # archive-url: 'http://pastebin.ca' # archive-regex: 'rel="/preview.php\?id=(\d+)' # download-url: 'http://pastebin.ca/{id}' # nopaste.me: # archive-url: 'http://nopaste.me/recent' # archive-regex: '' # download-url: 'http://nopaste.me/download/{id}.txt' # cdv.lt: # pastie-classname: PastieCdvLt # archive-url: 'http://cdv.lt/snippets' # archive-regex: '[0-9]' # download-url: 'http://cdv.lt/api/snippet/{id}' # snipt.net: # pastie-classname: PastieSniptNet # archive-url: 'https://snipt.net/public/?rss' # archive-regex: 'https://snipt.net/(.+)/' # download-url: 'https://snipt.net/{id}/' # quickleak.se: # archive-url: 'http://www.quickleak.se/last-pastes.html' # archive-regex: '' # download-url: 'http://www.quickleak.se/{id}' # safebin.net: # FIXME not finished # archive-url: 'http://safebin.net/?archive' # archive-regex: '' # download-url: 'http://safebin.net/{id}' # update-max: 60 # update-min: 50 # TODO # http://www.safebin.net/ # more complex site # http://www.heypasteit.com/ # http://www.heypasteit.com/clip/0IZA => incremental # http://hastebin.com/ # no list of last pastes # http://sebsauvage.net/paste/ # no list of last pastes # http://tny.cz/ # no list of last pastes # https://pastee.org/ # no list of last pastes # http://paste2.org/ # no list of last pastes # http://0bin.net/ # no list of last pastes # http://markable.in/ # no list of last pastes ##### # Configuration section to configure proxies # Currently only HTTP proxies are permitted # proxy: random: no file: 'proxies.txt' ##### # Configuration section for User-Agents # user-agent: random: no file: 'user-agents.txt'