49

私は Flower ( https://github.com/mher/flower ) を使用して、ドキュメント ( http://docs.celeryproject.org/en/latest /userguide/monitoring.html#flower-real-time-celery-web-monitor )。ただし、私はこれに慣れていないため、Flower のページが HTTPS ではなく HTTP のみに基づいている方法について少し混乱しています。古いユーザーがログイン不要の Web サイトhttp://flowerserver.com:5555にアクセスして何かを変更できないように、Celery タスクのセキュリティを有効にするにはどうすればよいですか?

これに関するCelery独自のドキュメントを検討しましたが、残念ながらFlowerのAPIまたはWeb UIを保護する方法については言及されていません. それが言うすべて:[Need more text here]

ありがとう!

更新:私の質問の一部はここの複製です: How do I add authentication and endpoint to Django Celery Flower Monitoring?

ただし、同じリモート マシン上で nginx、gunicorn、および celery をすべて含む環境を使用して実行する方法を尋ねることで、ここで彼の質問を明確にします。私もFlowerの外部からアクセス可能なURLを設定する方法について疑問に思っていますが、可能であればhttpではなくhttpsのようなものを好むでしょう(またはwebuiを保護してリモートでアクセスする方法)。また、Flower を実行したままにしておくことは、Flower の内部 API にアクセスする可能性のある人にとって重大なセキュリティ リスクになるかどうか、またこれを保護するための最善の方法は何か、または完全に無効にして as-必要な基礎。

4

7 に答える 7

11

Web サーバーのサブディレクトリに花が必要だったので、nginx リバース プロキシ構成は次のようになりました。

location /flower/ {
    proxy_pass http://localhost:5555/;
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Protocol $scheme;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_http_version 1.1;

    auth_basic  "Restricted";
    auth_basic_user_file  /etc/nginx/.htpasswd;
}

これで www.example.com/flower 経由で flower (パスワード保護) にアクセスできます

これのほとんどは、nginx リバース プロキシの構成に関する Flower のドキュメント ページから派生したものです。

http://flower.readthedocs.org/en/latest/reverse-proxy.html

于 2014-11-10T13:52:31.910 に答える
1

そうです、ブローカーと通信しているだけなので、flower には認証はありませんが、SSL 経由で実行する場合は、基本認証で十分です。

于 2013-11-28T01:11:54.787 に答える