ホーム > GNU/Linux > www.msmrrenda.net リプレース計画day2

www.msmrrenda.net リプレース計画day2

いままではごちゃまぜに置いていた非公開ページを別ホストに分離しようとしてはまった件。

通常、公開用ページは ~/public_html に置きますが、ホームは全ホスト共有です。
したがって、非公開ページを ~/private_html に分離しました。

ところが、なにやってもcgiが呼び出せません。

Mar 4 22:22:24 ainya suexec[1158]: command not in docroot (/home/renda/private_html/env.cgi)

で、suexec -V とかしてみるとこんなことが書いてあります。

-D AP_DOC_ROOT="/var/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="apache"
-D AP_LOG_SYSLOG
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=500
-D AP_USERDIR_SUFFIX="public_html"

public_htmlでしか動かないんかーい。
安全上このディレクトリ設定はハードコードされており変更できないようです。
選択肢は二つ。apache全体のリビルドか、バイナリ弄ってGORIOSHI。
ま、手間的に後者かな!!!!

public_htmlよりもprivate_htmlの方が1文字長いので、この際private_htmになっていただきました。が、なぜか動かない。

Mar 4 22:50:08 ainya suexec[1375]: uid: (500/renda) gid: (500/renda) cmd: env.cgi
Mar 4 22:50:08 ainya suexec[1375]: failed to setgid (500: env.cgi)

あれ?suidかsgidでもついてたかなん?と思い、他ホストと見比べます。cap2
cap3
パーミッションは変わらないけどなんか赤い。これはいったい・・・。最悪apacheのリビルドも覚悟し、srpmの中身を覗いてみたら・・・

%caps(cap_setuid,cap_setgid+pe) %attr(510,root,%{suexec_caller}) %{_sbindir}/suexec

そっかー。
cap1

# setcap 'cap_setgid,cap_setuid+ep' /sbin/suexec

したら動きましたとさ。善い子の皆さんは横着せずにapacheをrpmbuildしましょう・・・

広告
カテゴリー:GNU/Linux タグ:
  1. まだコメントはありません。
  1. No trackbacks yet.

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。