2005-01-11 (Tue)

_ [debian] mozilla-firefox 1.0+dfsg.1-2vd1

vd_bugzilla-jp_bug-1476_attachment-1656_for-mozfx-0.9.3.patchvd_mozfx-0.10.1_without-gnome-and-gconf.patchmozilla-1.8a5-gtk2-composition-fix.diff を当てて作成。

_ [debian] heimdal-kdc 0.6.3-6 変

MIT krb5 は Kerberos5 の MIT リファレンス実装で、Kerberos5 の free 実装版の Heimdal のほうを使ったほうが Debian 的にはいいようだ。というか MIT krb5 ってアメリカの輸出規制にひっかかってるんだっけ? ということで Heimdal のほうを試しに入れてみようかとしたら、heimdal-kdc 0.6.3-6 の install で

Section realms::REALM.ORG doesn't exist
Cannot parse command line

と失敗してしまった。探してみると #289295 にひっかかってしまったようだ。示されている patch を /usr/share/doc/heimdal-kdc/examples/kdc.conf に当てて突破。

_ [comp] Heimdal テスト

Krb5DebianKrb5Plamo を見つつ、やってみる。 いろいろ設定して試したけど、kinit で Kerberos V5 のチケットしか取ってないのだが、ktelnet は Kerberos V4 でしかつなぎに行かない。どうなってんだろ、これ。–without-krb4 でパッケージを作ってみたけど、やはり Kerberos V5 で認証している気配がない。設定ミスか? と思ったら、kftp のほうはきちんと行けた。よくわからん。NFSv4 もできたので、手順をメモ。 構成などは Kerberos5 テスト に準じる。 まず Heimdal を install。

# apt-get install heimdal-kdc heimdal-servers heimdal-clients

realm 名と KDC の password を聞かれるので設定。 /etc/krb5.conf は MIT krb5 のそれと同じ。/var/lib/heimdal-kdc/kdc.conf は MIT krb5 の /etc/krb5kdc/kdc.conf とほぼ同じ。 KDB は install 時に、kstash 及び kadmin -l init REALM の実行によって作成されているのでパス。 管理 principal を登録。

# kadmin -l
> add foo/admin

password を聞かれるので設定する。/var/lib/heimdal-kdc/kadmind.acl で ACL を設定。

foo/admin@EXAMPLE.JP        all        *

foo の user principal を追加。

# kadmin -l
> add foo

password を聞かれるので設定する。 server で server, client 両方の nfs principal を追加。

# kadmin -l
> add -r nfs/server.example.jp
> ext_keytab nfs/server.example.jp@EXAMPLE.JP
> add -r nfs/client.example.jp
> ext_keytab nfs/client.example.jp@EXAMPLE.JP

/etc/krb5.keytab が生成されたことを確認。 server で client 用の keytab を生成。

# kadmin -l
> ext_keytab -k /tmp/keytab nfs/server.example.jp@EXAMPLE.JP
> ext_keytab -k /tmp/keytab nfs/client.example.jp@EXAMPLE.JP

server:/tmp/keytab を client:/etc/krb5.keytab としてコピー。 この後の作業は MIT krb5 の場合 と同様。 なお、MIT krb5 でも Heimdal でも、

client# mount -t nfs4 -o sec=krb5 server:/ /mnt

はきちんと動作しなかった。何かが足りない?

_ [comp] dnsmasq

お手軽 DNS キャッシュ用に dnsmasq を入れてみる。

2005-01-10 (Mon)

_ [debian] xdvik-ja 22.84.8-j1.21-1vd1

sazanami に依存して作成。

2005-01-09 (Sun)

_ [comp] 続・ircd-irc2 2.11.0 変

dancer-ircd や ircd-hybrid を試してみたけれど、前者は日本語 topic が化ける、後者は ircd.conf の書式が全然違うので面倒、ということで ircd-irc2 の問題を調べてみることにする。

  1. 最初に出る「Please wait while we process your connection.」は 020 RPL_HELLO というやつらしい。
  2. RPL_HELLO を出しているのは s_bsd.c の read_listener。
  3. RPL_HELLO を出した後に詰まるので、これの後に呼び出される関数を探す。
  4. s_bsd.c の read_message で read_listener を呼んでいる。
  5. read_listener を呼んだ後にいろいろと処理があるが、DoingAuth が怪しい。
  6. DoingAuth はマクロで、クライアントのフラグに FLAGS_AUTH がセットされているかどうかをチェックしている。
  7. クライアントのフラグに FLAGS_AUTH をセットしているところを探す。
  8. クライアントのフラグに FLAGS_AUTH をセットしているのは s_auth.c の start_auth。
  9. start_auth 内の遅い原因と思われる処理は #ifndef NO_IDENT 〜 #endif でくくられている。
  10. ということは NO_IDENT を define すればよい。

config.h を見ると NO_IDENT 及び NO_PREFIX を define するのは「a VERY bad idea」と警告が書かれているが、無視。 NO_IDENT と NO_PREFIX を define してみると、「Please wait while we process your connection.」の後で詰まることはなくなった。

_ [debian] ircd-irc2 2.11.0-1vd3

irc2.11.0-2.11.0+jp8.patch がひっそりと置かれていたのでそれを当て、config.h で NO_IDENT と NO_PREFIX を define して作成。

_ [comp] 続・Tabbrowser Extensions から乗り換え

miniT-drag を使えば、ドラッグ&ドロップでタブの並べ替えができるようだ。