(View this PageEdit this PageUploads to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide)
[blog] [ML] [todo] [CVS] [bug] [apache log] [swiki log] [statistics] [map] [man] [info] [アンテナ]

Jitterbug

注意 Kondara Projectが解散して、JitterBug-i18nは行方不明です。ソース見つけた方は、教えて下さい。


なんか同名のバンドか何かがあるみたいですが、ここはあくまで
バグトラッキングシステムの1つである Jitterbugの解説です。

このソフトウェアは、SAMBAチームで書かれたようです。で、それが独立して
GPLで配布されるようになりました。JiterBugは、C言語で書かれたCGIに
なります。

JitterBugは、カスタマイズされていろんなところでつかわれているようで、
Kondara-ProjectsやRubyのバグトラッキングシステムとしても
つかわれているようです。

JitterBugには、Kondaraで日本語かされた「バグ宙太」があります。
「バグ宙太」とJitterBug国際化版 JitterBug-i18nは同一のものです。

-----------

JitterBugのインストール

前回は、挫折したJitterBugのインストールですが、
今日は少し時間もあるので、ちゃんとやってみる。

  1. 最新版をDLする。
  2. tar玉を展開。
  3. ソース(source)ディレクトリに移動して、いつものおまじない。

ここまでは、OK、バイナリは誰が(どのユーザで)作成してもよいです
(当然ですが)

以下が肝心の設定

-----------

JitterBugの設定。

JittterBugではセキュリティ上の問題はおいておいて、chrootします。
ですので、オーナーをrootにして、setuidするためにsuidビットを立て
る必要があります。

まず、JitterBugを動作させるユーザアカウントを決める必要があります。
メール送信上の利便性から、個別にアカウント作ると吉とのことですが、
面倒なので、私は既存のアカウントを使用することにしました。

以降の文書では、JitterBugを動作させるアカウントをaccountとします。

 1. jitterbugのデータを配置するディレクトリを作成する。
     ・jitterbugのデータを配置するディレクトリを作成します。
     ・Webからアクセスできない場所に作成してください。(セキュリティ上の配慮です)
     ・chrootで移動するので、どこでも構わないのですが、ここでは
       ~/JitterBugとします。
           su account
           cd ~
           mkdir JitterBug

 2. Webから一般の人がアクセスできるものと、管理者 及び 関係者のみが
    アクセス可能なインターフェイスを作成します。
     ・簡単に設定するには、apacheの基本認証を使用します。
     ・一般のWeb閲覧者からのアクセスは、/cgi-bin/JitterBug/bug-trackingで、関係者のアクセス用には
       /cgi-bin/JitterBug/bug-tracking.privateで対応させるようにします。(あくまでも一例ですよ)
     ・apacheの場合、下記のように設定します。
       
       [ httpd.confに追加 ]
          <Location /cgi-bin/JitterBug/bug-tracking.private>
          AuthType Basic
          AuthName bug-tracking
          AuthUserFile /etc/httpd/conf/apache.auth
          <Limit GET POST>
          require user ユーザ名称
          </Limit>
          </Location>

          AddHandler cgi-script .private
          管理者用のものが動かない場合、上記を設定しましょう、

       [ apache.auth ]
          作成するには、専用コマンドを使用します。
          htpasswd -c /etc/httpd/conf/apache.auth ユーザ名称
          この後で2回パスワードを聞いてくるので、同一のパスワードを
          入力します

       このあとで、apacheを再起動します。
          ・apacheにHUPシグナル送るか、起動スクリプトをrestartで実行します。
          ・私の場合、/etc/rc.d/init.d/httpd restart

 3. 設定ファイルを設置する。
      ・カスタマイズしない設定ファイルを1で作成したディレクトリ配下に設置します。
      ・アーカイブのconf以下をcp -r でコピーします。

 4. バイナリを設置する。
      ・cgi-bin/JitterBug/にjitterbug(作成したバイナリ)をコピーします。
      ・この設定の場合、jitterbugをbug-trackingにリネームします。
      ・同様に、bug-trackingをbug-tracking.privateにコピーします。

 5. パーミッションの変更
      ・設置したバイナリの所有者をrootにグループをapache用ゲストグループ(通常nobody)に設定します。
           chown root.nobody bug-tracking bug-tracking.private
      ・パーミッションの変更とsuidビットの設定をします。
            chmod 04710 bug-tracking bug-tracking.private
      ・パーミッションが正しく設定されているか確認しましょう。
        これはs間違って設定された場合、簡単にroot権限を取得できる可能性があります。
        くれぐれもご注意を。

 6. jitterbugの管理ファイルの作成
      ・/etc/jitterbugというディレクトリを作成します。
          mkdir /etc/jitterbug; cd /etc/jitterbug
      ・上記パスに、bug-trackingというファイルをtouchします。
          touch bug-tracking
      ・作成したファイルを編集して、(とりあえず)以下の内容とします。
          from address = account@your.host.name
          chroot directory = /home/account/JitterBug(1で作成した絶対パス)
          base directory = /
          guest gid = 65534(nobodyのUID)
          guest uid = 65534(nobodyのGID)
          uid = XXXX(accountのUID)
          gid = YYYY(accountのGID)
      ・同様の内容で、bug-tracking.privateを作成します。(コピーします)

 7. 早速ゲスト用画面の確認をする。
      ・ブラウザで、http://localhost//cgi-bin/JitterBug/bug-trackingを開きます。
      ・ここまでが正常であれば、ゲスト用のページが開きます。
      ・ブラウザで、http://localhost//cgi-bin/JitterBug/bug-tracking.privateを開くと
        基本認証画面になります。

 8. メールインターフェイスの設定
      ・ここでは、qmailを使っている人を対象にしています。
      ・jitterbug用アカウント用にqmailの設定を施す。
          Maildirを作成します。
              /var/qmail/bin/maildirmake $HOME/Maildir
              echo ./Maildir/ > ~/.qmail(とりあえずローカルのmailboxにもいれる)
      ・作成されたJitterBugのnew_messageバイナリをホームディレクトリにコピーする。
        (当然パーミッションを然るべき設定に変更します)
      ・~./qmailに |$HOME/new_message bug-trackingの行を追加します。


以上が基本設定なのですね。(超ながったるい...)

-----------

JitterBugの設定(設定ファイルによる設定)

      ・docsのCONFIG.txtをみるべし。

-----------

JitterBug-i18nの設定




-----------

関連サイト

-----------

Links to this Page