PR

opendkimでパーミッションエラーが消えない場合の最終対処法

サーバ設定(Linux)

昨晩はVPSの移転作業を行っていました。
その際に旧サーバから新サーバにpostfixとopendkimの設定を移植していたのですが、新サーバでのopendkimの設定にハマりまくったので解決策を書いておきます。
旧サーバ作るときには同じ問題は起こらなかったんですけどね・・。

まず出たエラーの内容は

can't load key from /etc/opendkim/keys/example.com/default.key: Permission denied
xxxxxxx opendkim[2582]: 440E5806CC: error loading key 'default._domainkey.example.com'

まぁそーなんだ。って思うじゃないですか。

ちゃんと設定やってんけどな~。と思いながら見直すも、所有権は所有者とグループともにopendkimになってるし、パーミッションは600だから読めないってことはないだろ?て思いながら744とかにしてみたりしながら様子を見ていたんですが、問題が解決しない。
どうパーミッションを設定すればいいのかわからね~!とこの辺で思い始めます。

ネットで調べると、キーファイルに実行権限が必要(な場合がる?)だとか、SELinuxが有効になっているとエラーが出るぞとか書いてある。なお、今回SELinuxは元からDisabledになっているんで関係なし。

もういっそのことフルでパーミッション与えてやるよ!と、777に設定をしたら今度は

Starting OpenDKIM: opendkim: /etc/opendkim.conf: /etc/opendkim/keys/example.com/default.keycan be read or written by other users opendkim.

とかエラーが出るんですよ。ザッケンナコラーですわ。いやまぁ言いたいことはわかるけどね??

で、最終的にどうしたかというと、キーファイルのパーミッション緩くした上でopendkim.confに以下の行を書き足しました。

RequireSafeKeys false

取り合えず動いた!

いや、良くない対処なのはわかってますけどね?とりあえずの対応です、はい。
リスクを分かっている人のみ参考にしてください。取り合えず他人と共用のサーバとかでは使わないように(今どきそんなのあるのか知らんけど)。

Photo by Taylor Vick on Unsplash

コメント

  1. すが より:

    RequireSafeKeys falseを書いただけだとエラーメッセージは出続けるんですよね。
    キーのパーミッションは600が正解です。

タイトルとURLをコピーしました