1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612
|
.\" Copyright 1994 Dr. Greg Wettstein, Enjellic Systems Development.
.\" May be distributed under the GNU General Public License
.\" Sun Aug 30 11:35:55 MET: Martin Schulze: Updates
.\"
.\" Japanese Version Copyright (c) 1996,1998 MAEHARA Kohichi
.\" all rights reserved.
.\" Translated Tue Feb 10 00:00:00 JST 1998
.\" by MAEHARA Kohichi <maeharak@kw.netlaputa.ne.jp>
.\" Updated Thu Aug 10 03:59:38 JST 2000 by Kentaro Shirakata <argrath@ub32.org>
.\" Updated Wed Mar 28 14:04:30 JST 2001 by Kentaro Shirakata <argrath@ub32.org>
.\"
.TH SYSKLOGD 8 "12 October 1998" "Version 1.3" "Linux System Administration"
.SH 名前
sysklogd \- Linux システムロギングユーティリティ
.SH 書式
.B syslogd
.RB [ " \-a "
.I socket
]
.RB [ " \-d " ]
.RB [ " \-f "
.I config file
]
.RB [ " \-h " ]
.RB [ " \-l "
.I hostlist
]
.RB [ " \-m "
.I interval
]
.RB [ " \-n " ]
.RB [ " \-p"
.IB socket
]
.RB [ " \-r " ]
.RB [ " \-s "
.I domainlist
]
.RB [ " \-v " ]
.LP
.SH 説明
sysklogd はシステムロギングとカーネルメッセージの確保という二つの機能
を提供するユーティリティである。
このユーティリティではインターネットと UNIX ドメインの両方のソケットが
利用可能なので、ローカルとリモートの両方で記録可能である。
このシステムの記録を提供する
.BR syslogd (8)
は BSD のソースコードに由来しているものである。
カーネルロギング機能は
.BR klogd (8)
ユーティリティによって提供され、スタンドアロン形式、syslogd
クライアントのどちらの形式でも動作する。
syslogd は最近の多くのプログラムにロギングの手段を提供する。
記録されるメッセージは少なくとも時間の情報とホスト名を持ち、
通常はそれらに加えてプログラム名のフィールドも持っている。
しかしながら記録される内容の信頼性については
それぞれのプログラムに依存する。
.B syslogd
のソースコードは激しく変更されながらも二つの特徴についてはそれを維持し
つづけている。まず第一に、その基本となる、一般的な BSD らしい挙動への
追随を保証することの系統的な意図の維持である。第二の重要な特徴は、この
版の syslogd が標準ライブラリに含まれる syslog と透過的に相互に影響し
あっていることである。もし標準の共有ライブラリがリンクされたバイナリコ
ードが正常に機能しないならば、作者達にその異様な挙動の例を送って欲しい。
起動時にその主設定ファイルである
.I /etc/syslog.conf
かまたは代替として
.B "\-f"
オプションであたえられる名前のファイルが読み込まれる。その各行のうち、
シャープ記号 (``#'') ではじまるものと空行は無視する。その行の解析におい
てエラーを生じた行もまた無視する。
.LP
.SH オプション
.TP
.BI "\-a " "socket"
この引数を使って、
.B syslogd
が listen する追加のソケットを指定できる。
これはデーモンを chroot() 環境で動作させようとする時に必要である。
追加のソケットは 19 個まで指定できる。
もしもっと多くのソケットが必要なら、syslogd.c ファイルの
.B MAXFUNIX
シンボルの値を増やす必要がある。
chroot() デーモンの例としては OpenBSD の人が記した
http://www.psionic.com/papers/dns.html
がある。
.TP
.B "\-d"
デバッグモードを有効にする。このときデーモンは自身をバッググラウ
ンドに推移させるための
.BR fork (2)
を使用せずにフォアグラウンドに留まり、豊富なデバッグ情報を現在有効な
tty へ出力する。このマニュアルページのデバッギングの章に詳細な解説があ
るので参照すること。
.TP
.BI "\-f " "config file"
既定値の
.I /etc/syslog.conf
ファイルの代替として、指示された名前のファイルを使用する。
.TP
.B "\-h "
syslogd の既定値の設定では、リモートのホストから受信したメッセージをそ
れ以上転送することはない。コマンドラインからこのスイッチを使用するとデ
ーモンはリモートホストから受信したメッセージをさらに別に定義されるホス
トへ転送する。
.TP
.BI "\-l " "hostlist"
記録するホストとして、FQDN ではなく単純にホスト名のみを指定する。
コロン(``:'')を区切りに用いて複数のホストを指定することもできる。
.TP
.BI "\-m " "interval"
.B syslogd
に定期的にタイムスタンプを記録させる。
二行の \fI-- MARK --\fR を記録する間隔
.I interval
の既定値は 20 分であり、このオプションで変更可能である。
.I interval
を 0 にすると、-- MARK -- 行を全く出力しない。
.TP
.B "\-n"
自動的なバックグラウンドへの移行を抑止する。これは
.B syslogd
が
.BR init (8)
により起動および制御される場合にのみ必要である。
.TP
.BI "\-p " "socket"
.I /dev/log
の代りに指定した UNIX ドメインソケットを利用する。
.TP
.B "\-r"
このオプションで、ネットワーク上でインターネットドメインソケットにより
syslog サービス(
.BR services (5)
を参照せよ)を使用してメッセージを受信する機能が有効になる。既定
値ではネットワークからのいかなるメッセージも受信しない。
このオプションは sysklogd パッケージの version 1.3 で導入された。既定
値の挙動がより以前の版の挙動の反対となっていて(ネットワーク越しに受信
するには)このオプションを利用しなければならないという点にどうか注意し
ていただきたい。
.TP
.BI "\-s " "domainlist"
記録する際に剥ぎ取るドメイン名を指定する。
コロン(``:'')を区切りに用いて複数のドメインを指定することもできる。
ドメインの一部ではなく、ドメイン全体を指定することに注意すること。
例えば、
.B "\-s north.de"
と指定して、ログを記録するホスト名が satu.infodrom.north.de だった場合、
ドメインは剥ぎ取られない。このような場合、
.B "\-s north.de:infodrom.north.de"
のように二つのドメインを指定しなければならない。
.TP
.B "\-v"
バージョンを出力し、終了する。
.LP
.SH シグナルの処理
.B syslogd
はシグナルに反応する。
.B syslogd
に簡単にシグナルを送るには次のように実行すればよい:
.IP
.nf
kill -SIGNAL `cat /var/run/syslogd.pid`
.fi
.PP
.TP
.B SIGHUP
このシグナルは
.B syslogd
に再初期化を指示する。全ての開いていたファイルを閉じ、設定ファイル(既
定値では、
.IR /etc/syslog.conf ")"
を再度読み込んで、
.BR syslog (3)
の機能を再び有効にする。
.TP
.B SIGTERM
.B syslogd
は終了する。
.TP
.BR SIGINT ", " SIGQUIT
デバッグモードが有効である場合は無視するが、そうでなければ
.B syslogd
は終了する。
.TP
.B SIGUSR1
デバッグモードのオン/オフを切り替える。この動作は
.B syslogd
がその起動時に
.B "\-d"
オプションが指示されている場合にのみ有効。
.TP
.B SIGCHLD
メッセージの一斉通知のために、子プロセスがあればその終了を待つ。
.LP
.SH 設定ファイル文法の差異について
.B syslogd
の設定ファイル文法はオリジナルの BSD のソースコードとは微妙に差異があ
る。オリジナルでは、指示されたものとそれ以上の優先順位をもつメッセージ
は全てログファイルに記録される。
.IP
たとえば、下記の例は daemon facility を使用する「全て (debug は最低の
優先順位なので、それ以上の全てが適合するわけである)」のデーモンからの
出力が
.I /usr/adm/daemons
に記録される:
.IP
.nf
# syslog.conf のサンプル
daemon.debug /usr/adm/daemons
.fi
.PP
新しい仕組みのもとでもこの記述は全く同じ動作をもたらす。
アスタリスク(\fB*\fR)、イコール記号(\fB=\fR)、エクスクラ
メーションマーク(\fB!\fR)、マイナス記号(\fB-\fR)の四つの新たな記述子が
追加された相異点である。
\fB*\fR を指定すると、指示した facility に関するの全てのメッ
セージを一つに集めることができる。この動作は特定の priority レベルに対
するデバッグに支障がでるかもしれない点に注意すること。このアスタリスク
記法はより直観的なものであることがわかるだろう。
\fB=\fR ワイルドカードは記録を指示された priority のもののみに限定する。
たとえば特定のロギングについて、デバッグメッセージのみを集めることが可
能となる。
.IP
下記の
.I syslog.conf
の記述例はすべての debug メッセージを
.I /usr/adm/debug
に記録する。
.IP
.nf
# syslog.conf のサンプル
*.=debug /usr/adm/debug
.fi
.PP
.\" The \fB!\fR as the first character of a priority inverts the above
.\" mentioned interpretation.
.\" priority の最初の文字としての ! は上記の解釈を逆転する。
priority の先頭に付く \fB!\fR は、上記の priority、記述子の解釈を
反転する(訳注:すなわち、!info なら info 未満の priority を表す)。
.IP
以下の例では、priority が info であるものを除くすべての mail facility
のメッセージが
.I /usr/adm/mail
ファイルに記録される。そして news.info(これは含む) から news.crit(こち
らは含まれない)までのすべてのメッセージが
.I /usr/adm/news
ファイルに記録される。
.IP
.nf
# syslog.conf のサンプル
mail.*;mail.!=info /usr/adm/mail
news.info;news.!crit /usr/adm/news
.fi
.PP
除外する指示子はもっと直観的にも利用できる。上述の例はもっと簡単にでき
る。たとえば…
.nf
mail.none
.fi
であるとか
.nf
mail.!*
.fi
であるとか
.nf
mail.!debug
.fi
と記述すると mail facility によるすべてのメッセージが除外される。もっ
と楽しむ余地もあるよね :-)
\fB-\fR をファイル名に接頭すると書き込み時のファイルシステムバッファの
フラッシュ動作を抑制することができる。
純粋な BSD 的挙動からは多少順応した結果なのかもしれないが、
使う立場からすれば、BSD 的挙動よりもよりいくらかでも柔軟であることがわ
かるだろう。これらの変更は標準的な
.BR syslog.conf (5)
ファイルにはなんら影響を及ぼしていない点に注意せよ。拡張機能を利用する
には明示的に設定ファイルを調整する必要がある。
.LP
.SH リモートロギングサポート
syslogd の機能にネットワークへのサポートを提供する変更点がいくつかある。
ネットワークサポートとは、syslogd が稼働しているあるホストでのメッセー
ジを別の syslogd が稼働しているホストへ転送し、そこで実際にディスクの
ファイルに記録するようにできる、ということである。
この機能を有効にするにはコマンドラインで
.B "\-r"
オプションを指定する。
.B syslogd
の既定の動作はネットワークを関知しない。
syslogd はローカルに生成されるメッセージについて UNIX ドメインソケット
を監視する方法を用いる。この方法が syslogd に標準 C ライブラリに含まれ
る syslog との協調動作を可能にしている。同時に syslogd は他のホストか
ら送信されるメッセージのために標準の syslog ポートを監視している。正し
い動作のためには
.BR services (5)
ファイル (普通
.I /etc
にある)に次のエントリが必要である:
.IP
.nf
syslog 514/udp
.fi
.PP
もしこのエントリがなければ、UDP ポートが開設できないために
.B syslogd
はリモートのメッセージを受信することも他へ送信することもできない。この
場合、
.B syslogd
は即座に終了する代りにエラーメッセージを出力する。
メッセージを送信するべきホスト名に @ を接頭して
.I syslog.conf
ファイルの通常のファイル名のかわりに記述することで、他のホストへメッセ
ージを送信することができる。
.IP
たとえば「すべて」のメッセージをリモートのホストへ送信するには、
.I syslog.conf
に次のように記述する:
.IP
.nf
# メッセージをすべてリモートのホストへ
# 送信するための syslogd 設定ファイルの例
*.* @hostname
.fi
すべての \fBカーネル\fP メッセージをリモートのホストに送信するには
(syslog.conf に)次のように記述する:
.IP
.nf
# カーネルメッセージをリモートのホストへ
# 送信する設定ファイルの例
kern.* @hostname
.fi
.PP
起動時にネームサーバ(通常、syslogd よりも後から起動する)が応答しないた
めにリモートのホストネームが名前解決できなくても問題はない。
.B syslogd
はホスト名の問い合わせを 10 回繰り返し、そののちにエラーメッセージ出す。
あるいはこの問題を回避するために、
.IR /etc/hosts
ファイルに当のホスト名を記述しておくという方法もある。
普通の
.B syslogd
では、リモートホストが実は自分自身であった場合
(または、より複雑な三角関係とか、そんなの) syslog-loop が発生する。
たとえば作者のドメイン(Infodrom Oldenburg)でもたった一つのメッセージが
われわれのディスクをあふれかえさせるという事故が起きたことがある :-(
これをさけるべく、リモートホストから(または自分自身)から発信されたメッ
セージはそれ以上転送されない。これでもまだ問題があるような状況があるの
なら作者(Joey) まで連絡してほしい。
もしリモートのホストが
.B syslogd
が稼働しているホストと同じドメインに属しているのであれば、FQDN ではな
くて単純にホスト名のみが記録される。
ローカルネットワークにおいて、重要な情報のすべてを一台のコンピュータに
集めるための中央ロギングサーバを提供することができる。もしネットワーク
が複数のドメインからなっているような場合には、単純なホスト名ではなくて
FQDN で記録されるが、それが嫌な場合は、
.B \-s
でそのサーバで strip-domain 機能を使えばよい。これで
.B syslogd
はサーバが属するドメイン以外であっても剥ぎ取って単純にホスト名のみを記
録する。
.B \-l
オプションを使用するとローカルのコンピュータとしてのホスト名を定義でき
る可能性が生じる。この場合でもやはり FQDN ではなくて単純なホスト名だけ
を記録する。
リモートホストへメッセージを転送したり、リモートホストからメッセージを
受け取るために用いられる UDP ソケットは、
それが必要な時にだけオープンされる。
1.3-23 より前のリリースでは UDP ソケットは毎回オープンされていたが、
読み込み用あるいは転送用という形ではなかった。
.SH 名前付きパイプ(FIFO)への出力
この版の syslogd は複数の名前付きパイプ(FIFO) へのログ出力も可能である。
記録するメッセージをFIFO あるいは名前付きパイプで記録するには、ファイ
ル名の前にパイプ記号(``|'')を付ける。これはデバッグに役に立つ。使用す
る FIFO は syslogd の起動に先立って mkfifo コマンドで作成しておかなけ
ればならない点に注意すること。
.IP
下記はカーネルのデバッグメッセージを FIFO で記録する為の設定例である。
.IP
.nf
# 名前付きパイプとしての /usr/adm/debug へ
# カーネルのデバッグメッセージを記録するための
# 基本的な設定例
kern.=debug |/usr/adm/debug
.fi
.LP
.SH インストール関連
この版の syslogd をインストールする場合において、重要な考察を要す
る点が多分一つだけある。この版の syslogd は syslog ファンクションによ
るメッセージのフォーマットが適切なものであることを前提としている。共有
ライブラリにより提供される syslog ファンクションの動作内容は、
libc.so.4.[2-4].n の範囲のなかだけでもどこかしら変更されている。なかで
も明らかな変更は
.I /dev/log
ソケットへ出力される際にメッセージが NUL-terminate (\\0 で終端される
こと) されるようになった
ことである。よって、この版の syslogd はメッセージが \\0 で終端されてい
ることに依存することとなった。
この問題は、概して、システム上で古いスタティックにリンクされたバイナリ
コードを動作させるときにあらわになる。古い syslog ファンクションを用い
るバイナリコードは、メッセージ中の最初の文字が削除されたメッセージを記
録し、空行を(複数)作ってしまう。この問題を修正するには、新しい版の共有
ライブラリを用いてリンクしなおすしかない。
.BR syslogd "(8) と " klogd (8)
の両方とも
.BR init (8)
を用いる起動でも rc.* の中で起動でもどちらでも可能である。もし、init
を用いる場合は \fI\-n\fR オプションを必ず設定すること、さもなくばたく
さんの syslog デーモンが起動してしまう。これは
.BR init (8)
がプロセス ID に依存しているためである。
.LP
.SH セキュリティ上の注意
syslogd デーモンは使用不能攻撃の抜け道として利用されてしまう潜在的な可
能性を持っている。Jon Morrison (jmorrison@rflab.ee.ubc.ca) がこの可能
性を警告した。ごろつきのプログラマ(達)が、 syslog メッセージを
syslogd デーモンに殺到させて、その結果、ログファイルで全ての利用可能な
ファイルシステムを埋め尽すことが簡単にできるようになっていた。インター
ネットドメインソケットを用いるロギングを有効にすることはローカルのコ
ンピュータの上のプログラムや、他の誰かによる外部からの危険にシステムを
さらすことになりうる。
コンピュータを守るための手段がいくつかある:
.IP 1.
514/UDP ソケットにアクセスすることができるホストやネットワークを制限す
るファイアウォールをカーネルに実装する。
.IP 2.
ログの出力先をもしそれが破壊されてもコンピュータを損なうことはないよう
な独立しているかまたはルート (/) ではないファイルシステムにする。
.IP 3.
ext2 ファイルシステムはそのうちの特定の割合を root だけが使用可能とす
る制限を設定することができる。\fB注意\fP この方法は syslogd を root で
はないプロセスで実行する必要がある。\fBさらに注意\fP この方法は
syslogd が 514/UDP ソケットと接続できなくなるので、リモートロギングが
不可能となる。
.IP 4.
ローカルのコンピュータへの危険を制限するためにインターネットドメインソ
ケットを無効にする。
.IP 5.
ステップ 4 を用いてもなお問題が残っていて、それが 3.5 フィート(だいた
い 1 メートル)の吸出し棒(注)を持ったごろつきのプログラム/デーモンどこ
ろのさわぎではないようであれば、 問題を起しているユーザとおしゃべりし
てみるしかないね。
注:吸出し棒とは \(em 3/4、7/8、1 インチ の鋼鉄の棒で両端に吸い口が付
いている。もともとは西ノースダコタの油田などで使われた油井から油を`吸
い出す'ポンプで使われているもののことである。それが転じて牧場で牛に餌
をあたえるため、また時には反抗的だったり喧嘩腰だったりする牛を追うため
に使われている棒を差す。
.LP
.SH デバッギング
.B "\-d"
オプションを用いてデバッグモードを有効にすると
.B syslogd
はとてつもなく饒舌になって、いまなにがおこっているかを標準出力に出力す
る。設定ファイルが再度読み込み込まれ解釈され直すときはいつでもテーブル
化された内部データ構造が出力される。このテーブルは四つのフィールドから
成っている:
.TP
.I number
このフィールドは 0 から始まるシリアル番号である。
この番号は内部データ構造上(すなわち配列)での位置をあらわす。
もし番号がないときは、
.I /etc/syslog.conf
の対応する行にエラーがある。
.TP
.I pattern
このフィールドは巧妙で正確に内部構造を表現している。各列は facility(
.BR syslog (3)
を参照)を表わす。
以前使用されていたいくつかの facility もまだ残っているが、使用されてい
るものだけがある。
列の各フィールドは priority(
.BR syslog (3)
を参照)をあらわす。
.TP
.I action
このフィールドには(facility/priority の)パターンに一致するメッセージを
受信したときの action の詳細が記述される。
全ての action については
.BR syslog.conf (5)
マニュアルページを参照すること。
.TP
.I arguments
このフィールドは action の最後のフィールドによる付加的な引数を示す。
ファイルロギングではログファイルとするファイル名;
ユーザロギングでは(ログ出力を通知する)ユーザの一覧;
リモートロギングではログを配信するコンピュータのホスト名;
コンソールロギングでは使用されるコンソール;
ttyロギングでは指定された tty;
一斉通知の場合は付加引数はなし。
.SH ファイル
.PD 0
.TP
.I /etc/syslog.conf
.B syslogd
の設定ファイル。
正確な情報は
.BR syslog.conf (5)
を見ること。
.TP
.I /dev/log
ローカル syslog メッセージを読み出す UNIX ドメインソケット。
.TP
.I /var/run/syslogd.pid
.B syslogd
のプロセス ID を保持するファイル。
.PD
.SH バグ
ある行にエラーがあると全てのルールを無視してしまう。
.B syslogd
はその処理過程のどの時点においてもログファイルのファイルモードを変更し
ない。もしファイルが誰でも読み書きできるように作成されていても、である。
もしこのことによる問題を回避したいのであれば作成時に管理者のみがあつか
えるように変更する必要がある。
これは、
.B smail
3.x の配布に含まれる
.BR savelog (8)
によるログファイルのローテーションと連携して都合がよい。auth.* メッセ
ージはパスワードが含まれていることがあり、それが誰にでも読めるというこ
とは重大なセキュリティホールになるという点を忘れないように。
.LP
.SH 関連項目
.BR syslog.conf (5),
.BR klogd (8),
.BR logger (1),
.BR syslog (2),
.BR syslog (3),
.BR services (5),
.BR savelog (8)
.LP
.SH 協力
.B syslogd
は BSD のソースコードに由来していて、Greg Wettstein
(greg@wind.enjellic.com) が Linux に移植し、Martin Schulze (joey@linux.de)
が幾つかのバグの修正と新しい機能追加を実装した。
.B klogd
のオリジナルは Steve Lord (lord@crya.com)によって書かれ、Greg
Wettstein が多くの改善を施した。
.PD 0
.TP
Dr. Greg Wettstein
.TP
Enjellic Systems Development
.TP
Oncology Research Division Computing Facility
.TP
Roger Maris Cancer Center
.TP
Fargo, ND
.TP
greg@wind.enjellic.com
.TP
Stephen Tweedie
.TP
Department of Computer Science
.TP
Edinburgh University, Scotland
.TP
sct@dcs.ed.ac.uk
.TP
Juha Virtanen
.TP
jiivee@hut.fi
.TP
Shane Alderton
.TP
shane@ion.apana.org.au
.TP
Martin Schulze
.TP
Infodrom Oldenburg
.TP
joey@linux.de
.PD
.zZ
|