Webapp to manage mail server domains, users and aliases.
Project description
mailserver-admin
This application manages domains, users and aliases of a mail server.
This has been tested with dovecot, using either mysql or postgresql database.
The main goal was to enhance/replace Jeffrey Boehm’s PHP mailserver-admin application because I didn’t want to have a mail server administration application in PHP and I wanted to have administration account per domain.
Environment variables
Required:
DJANGO_SECRET_KEY: at least 40 characters. Should be specified for production.DJANGO_DB_TYPE:postgresormysql, default tomysql.DJANGO_DB_HOST: database hostname, default todb(for use in docker-compose).DJANGO_DB_PORT: database port, default to empty (default port).DJANGO_DB_NAME: database name, default tomailserver.DJANGO_DB_USER: database user, default tomailserver.DJANGO_DB_PASSWORD: database password, default tochangeme.
Optional:
DJANGO_DEBUG: defaultFalse. Set toTrueto enable debug toolbar, more logs and static files served.DJANGO_LOG_LEVEL: default toWARNING(INFOifDJANGO_DEBUG).DJANGO_RUNSERVER_LOG_LEVEL: default toINFO(DEBUGifDJANGO_DEBUG). Used only when run withrunserverorrunserver_plus.DJANGO_TZ: timezone, defaut toUTC.DJANGO_WEBMAIL_URL: webmail url to show in the footer, default to no link.DJANGO_VENDOR_NAME: any vendor name you want to appear on the footer, default to Sources.DJANGO_VENDOR_URL: any url you want to be linked to your vendor name, default to this repository url. Set to empty to disable the link.DJANGO_HIDE_VERSION: defaultFalseifDJANGO_DEBUGelseTrue. Set toTrueto hide themailserver-adminversion.
Install from PyPi
VirtualEnv and Dependencies
Minium python version is 3.9.
Use:
pipenv install mailserver-admin
to install it without any database backend.
If you want to install the mysql or postgresql database backend alongside, use for instance:
pipenv install mailserver-admin[mysql]
Configuration
Define the required environment variables then:
export DJANGO_SETTINGS_MODULE=mailserveradmin.config.settings
pipenv run django migrate
pipenv run django createsuperuser
TODO
You can now server the application using any WSGI server pointing to $(VISUAL='readlink -f' pipenv open mailserveradmin|tail -n1)/config/wsgi.py.
Don’t forget to also serve static ressources located at $(VISUAL='readlink -f' pipenv open mailserveradmin|tail -n1)/to_serve folder.
You can of course make symlinks to those locations to simplify configuration.
Install from sources
VirtualEnv and Dependencies
Use:
pipenv sync -d
to install dependencies. Default python version is 3.9.
Installation
You should also install a database driver, either mysqlclient or psycopg2-binary:
pipenv run pip install mysqlclient
Configuration
Define the required environment variables then:
pipenv run ./manage.py migrate
pipenv run ./manage.py createsuperuser
pipenv run ./manage.py collectstatic
You can now server the application using any WSGI server pointing to the config/wsgi.py file.
Don’t forget to also serve the static/ folder.
Alternatively, you can test the application with pipenv run ./manage.py runserver_plus but this should only be used for testing/development.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mailserver-admin-0.9.0.tar.gz.
File metadata
- Download URL: mailserver-admin-0.9.0.tar.gz
- Upload date:
- Size: 1.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd8c287c0be723878fcd2adeddf7bfcf4f520e8a458eead713ffc56a4535a17f
|
|
| MD5 |
5aa63fca07d64c7ed7c7cc595ce3bb9a
|
|
| BLAKE2b-256 |
a253b08e0a3e5aa541da98786449fe4841e73d5efa17ed6e90d0d4db13459d57
|
File details
Details for the file mailserver_admin-0.9.0-py3-none-any.whl.
File metadata
- Download URL: mailserver_admin-0.9.0-py3-none-any.whl
- Upload date:
- Size: 1.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
440b1c02dff10ab06837d459bffbf5a0c8a60907812f5a8dbb3e0c5f528620de
|
|
| MD5 |
7793f73b0d2b7bf6650a50c2a6760ceb
|
|
| BLAKE2b-256 |
3594d00904b91d8b442da683fa6f2b23ce8e884297615a332f5ae099a1d87442
|