Giter VIP home page Giter VIP logo

gulag's People

Contributors

chillout2k avatar

Watchers

 avatar

gulag's Issues

DB auto-init@entrypoint

Check if DB is initialized (select something expected from DB?) in entrypoint and source /gulag.sql if necessary.

Wrap failed imports into 'failed' mailbox/folder

The original email gets wrapped by an outer message with details on the exception/reasons of failure. Currently the IMAP UID-MOVE command is being used, which made it necessary to upgrade the docker base image to debian:buster (python 3.7), as the imaplib module on debian:stretch (python 3.5) does not support the MOVE command.

Trivial web UI on top of the REST API

  • SPA/jqgrid (overview)
  • Basic authentication with external LDAP support or local passwd file (two accounts: read-only and admin)
  • Release feature
  • Bounce feature (for discarded mails)
  • pdf preview feature
  • Download email/attachments (zip password-secured)
  • Execute attachments/URIs in sandbox
  • Scan attachments with opswat API
  • Scan attachments/uris with virustotal API
  • Feed IoCDB with FQDNs, URIs and files

What about a Milter?

Compare new incoming email messages against quarantined messages by SSDEEP. Finally, let the MTA decide to accept, or to reject (soft/hard) the incoming email.

API key management through REST

The admin's API key is the only one, which is managed outside the app. All other API keys should be managed by REST API and stored in backend (database)

Gulag-specific dovecot container

Gulag quarantine should not rely on an external IMAP server. The base config could consist of at least two accounts, one for inbound and the other one for outbound quarantine mailbox. Both email addresses should be configured by ENV vars as well as their passwords. All account information will be stored in a passwd like file dedicated for dovecot.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.