Postorius
Postorius は、Mailman の管理インターフェースのための Django ベースのツールです。
インストール
Postorius を使うためには、動作する ウェブサーバー のセットアップが必要です (例えば、Apache を使って WSGI に直接転送するか、Nginx を使ってリクエストを UWSGI のようなアプリケーションサーバーに転送します。)
設定
Web アプリケーションは、/etc/webapps/postorius/settings_local.py
で設定されます。これは、/usr/share/webapps/postorius/settings.py
のデフォルト設定に含まれています。
アプリケーションのデフォルトのシークレットを変更します。
/etc/webapps/postorius/settings_local.py
SECRET_KEY = 'something-very-secret'
運用環境で実行する場合は、必ずデバッグを無効にしてください。
/etc/webapps/postorius/settings_local.py
DEBUG = False
実行中の mailman インスタンスを設定できるようにするには、REST API の設定オプションを postorius の構成に追加する必要があります。
/etc/webapps/postorius/settings_local.py
MAILMAN_REST_API_URL = 'http://localhost:8001' MAILMAN_REST_API_USER = 'rest_admin' MAILMAN_REST_API_PASS = 'rest_admin_password'
有効な電子メール設定を追加します (Django アプリケーションが購読者を確認できるようにします)。
/etc/webapps/postorius/settings_local.py
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'localhost' EMAIL_PORT = 25 EMAIL_HOST_USER = username EMAIL_HOST_PASSWORD = password
アプリケーションの有効なホスト名またはドメイン名を定義する必要があります。
/etc/webapps/postorius/settings_local.py
ALLOWED_HOSTS = [ 'localhost', 'lists.example.com' ]
ホスティング
Nginx と uWSGI
Postorius は /etc/uwsgi/postorius.ini
にある動作する uWSGI 設定ファイルが付属しています。
nginx と uwsgi-plugin-python をインストールし、uWSGI のアプリケーションごとのソケットを作成し (UWSGI#Accessibility of uWSGI socket を参照)、uwsgi-secure@postorius.socket
を有効化してください。
ローカルのテストセットアップで、http://127.0.0.1:80/postorius で Postorius を提供するには、以下の Nginx 設定をセットアップに追加します:
/etc/nginx/postorius.conf
server { listen 80; server_name localhost; charset utf-8; client_max_body_size 75M; root /usr/share/webapps/postorius; access_log /var/log/nginx/access.postorius.log; error_log /var/log/nginx/error.postorius.log; location /postorius_static { alias /var/lib/postorius/static; } location ~^/(accounts|admin|postorius)/(.*)$ { include /etc/nginx/uwsgi_params; uwsgi_pass unix:/run/postorius/postorius.sock; } }
セットアップ
初回インストール後、データベースを生成することを確認してください:
[postorius]$ django-admin migrate --pythonpath /usr/share/webapps/postorius/ --settings settings
その後、アプリケーションの静的データを収集する必要があります:
[postorius]$ django-admin collectstatic --pythonpath /usr/share/webapps/postorius/ --settings settings
Django アプリケーションのスーパーユーザーアカウントを作成します:
[postorius]$ django-admin createsuperuser --pythonpath /usr/share/webapps/postorius/ --settings settings
ヒントとテクニック
エイリアスドメインを設定する
postfix と共に 仮想エイリアスドメイン のセットアップでドメインを使用するためには、ドメインの Alias Domain
を設定する必要があります。ドメイン名は実在しなくても構いません。
Alias Domain
を設定するためには、管理ユーザーでログインします (デフォルトでは postorius
) し、Domains
メニューでドメインの設定を変更します。
参照
- Postorius ドキュメンテーション - アップストリームのドキュメンテーション
- Mailman Suite ドキュメンテーション - Mailman Suite (Mailman, Hyperkitty および Postorius) 全体に関する (高レベルの) アップストリームドキュメンテーション