Translate

2016年2月3日水曜日

メールによるRedmineチケットの登録をためしたら、ログにPermission deniedと表示され動かない

メールによるRedmineチケットの登録で

SELINUXenforcingであるCentOS7.2上にRedmine3.2.0とpostfix(MX)をインストールしているので、

メールによるチケットの登録
http://redmine.jp/guide/RedmineReceivingEmails/

をためしてみた。

しかし、上記リンクの「メールサーバからメールを転送」に従って設定して実行してみたら、/var/log/maillogに以下のエラー行がでて登録されない..

Feb  00 00:00:00 mail local[000000]: fatal: execvp /path/to/redmine/extra/mail_handler/rdm-mailhandler.rb: Permission denied


/etc/aliasesのパイプで/path/to/redmine/extra/mail_handler/rdm-mailhandler.rbを実行するように書いたのだけど、ファイルの実行権限やユーザ、グループ設定は大丈夫なので、SELINUXがあやしいとおもいためしに

semanage permissive -a postfix_local_t

を実行してpostfix_local_tがらみだけSELINUXPermissiveauditログにはエラーはでるが実行は許可する)にしてみたら動作した..

でも、これだとセキュリティ的に負けた気がする..

で、Permissiveを元に戻して

chcon -R -t postfix_local_exec_t /path/to/redmine/extra/mail_handler/rdm-mailhandler.rb

したのだけど、/var/log/audit/audit.log

type=AVC msg=audit(1454457948.826:11466): avc:  denied  { search } for  pid=10388 comm="local" name="redmine" dev="dm-1" ino=103065422 scontext=system_u:system_r:postfix_local_t:s0 tcontext=unconfined_u:object_r:httpd_sys_rw_content_t:s0 tclass=dir

と出てしまう..
どうもredmine/var/www/html以下ではないパスにインストールしたかったので、/path/to/redmine(パスのredmineのところだけauditログに出ている)に対して

chcon -R -t http_sys_rw_content_t /path/to/redmine

してしまっていたのが災いして、ファイルまで到達できなかったらしい..

どうもchconをイロイロ試してみたが、http系とpostfix_local_t系の二つのSELINUXドメインを共存させることはできないらしい..

とはいえ Redmine を動かすには http_sys_rw_context_t は外すことはできない..

しょうがないので、rdm-mailhandler.rb/another/path/rdm-mailhandler.rbに移動させて

chcon -R -t postfix_local_exec_t /another/to/redmine/extra/mail_handler/rdm-mailhandler.rb

して動かしたらやっと動作した..


そういや日本語の記事であまり有効な情報がなかったなあ..
SELINUXを有効にした状態で、みんな運用していないのかねえ..

0 件のコメント:

既存アプリケーションをK8s上でコンテナ化して動かす場合の設計注意事項メモ

既存アプリをK8sなどのコンテナにして動かすには、どこを注意すればいいか..ちょっと調べたときの注意事項をメモにした。   1. The Twelve Factors (日本語訳からの転記) コードベース   バージョン管理されている1つのコードベースと複数のデプロイ 依存関係 ...