<< 2024/04 >> | 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 |
|
Windows 用の Syslog サーバーでも作ろうかと思ったら。
11/09/18 00:49 / その他のソフト
以前、PMail Server のユーザー様から「Windows サーバー用の IPv6 対応 Syslog サーバー欲しい。あったら買う」とか言われまして、8月中旬くらいに作ろうかと思っていたのですが、本業が立て込んで中々手を付けられなかったのですがようやく着手しました。
と言っても、数時間で出来ちゃった訳です。 さすがに 0 からで数時間では無理なので PMail Server のコアソースを流用しました。 UDP Socket のサーバー側を書くのは久しぶり(UDP クライアント側は DNS Client で触る)なので、SOCK_DGRAM の所を SOCK_STREAM にしたままにして「なんで動かないん?」とか、FD_READ で処理する所を「FD_ACCEPT 飛んでこないやん!(UDP なので当然)」とか、少しボケをかましましたが。 一応動いているっぽいです。上のログは送信元のIPアドレスとポートを出力し忘れています(^-^; で、サーバー本体側を作った後に、RFC をきちんと読もうと色々とググっていたのですが・・・ 元々は RFC3164 (BSD syslog) だったらしいのですが、2009年に RFC5424 に代わっていて RFC3164 は廃止されたようです。 じゃぁ、RFC5424 を見てみますと、なんだかメンドクサイことが書いてあります。 原文はこちら。 All implementations of this specification MUST support a TLS-based transport as described in [RFC5425]. げー、MUST かよ。 超意訳すると「全ての実装は RFC5425 に書かれているように、TLSベースの転送を実装【しなければならない(MUST)】。」 えっと?ログを記録するのに TLS 通信をしろ、と。 UDP ベースで TLS はムリムリ(後述)なので TCP 通信になりますね?更に読むと All implementations of this specification SHOULD also support a UDP-based transport as described in [RFC5426]. 超意訳すると「全ての実装は RFC5426 に書かれているように、UDPベースの転送を実装【した方がいいんでない?(SHOULD)】。」 なるほど。UDP に追加して、TCP も使うと。んで、TCP の場合は SSL 通信しないとならない、と。 「ログを取る目的だけの為に」 大事なのでもう一度言いますと「ちゃんとやる場合、認証局にお金出して証明書発行して貰って、証書をインストールしないと、自前のログを取ることもできませんよー。必須だからねー」ってことですね? オレオレ認証局ならお金はかかりませんが・・・ なんだか一気にやる気が失せました(^-^; 別に UDP & TCP で SSL/TLS 通信するのは別にいいんですが、対費効果を考えると相当微妙に思えます。 SHOULD ならまだわかるんですが、MUST にする意図が・・・ ついでに言うと、なんか syslog は特許関係で問題がちょっとあるらしくて、下手に作って公開すると「RFC の実装が足りないよ!」とか「特許関係クリアしていますか?」とか突っ込みを食らいそうなんで、やめておくことにしました。 久しぶりにフリーで公開する予定だったのですが(ロガーでお金取るなら実装は完全にしないと、とても有償にする勇気はありません。GIFの特許の時のように後で問題になっても困りますし)残念無念です。 どんなアイコン作ろうかななんて楽しみにしていたのですが。 後述: 到達が保障されていない UDP で TLS は無理があるだろうと思ったら、RFC4347 で DTLS なる UDP で TLS を実現する方法があるらしい・・・が、これがまた面倒。 UDP ででかいパケットを送る為に分割方法とかまで定義されて、届かないことがあるから再送タイマーとかも用意してあるようで。 つーか、ここまでコストかけるなら TCP でいいじゃないかと思う。 確かに UDP は TCP よりかコスト低いけどさ。 ストリーミングなんかは UDP の方が良いのもわかるんだけどさ。 [更新日付:2011/09/18 00:49:49]
トラックバックを見る(0) Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+7002724c93041ee4def75d794d84dc2763a82c25] TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+7002724c93041ee4def75d794d84dc2763a82c25] 記事へのコメント 名前 : H.Matsuda (2011/09/20 17:17:27) 確かに、割と最近のルーターとかでも、RFC3164ベースで送ってくる物が多いような気がするので、適当実装で良ければOKなんですが。せっかく作ったことですし。 RFC3164 自体が今では結構曖昧でして(BSD syslog とあるように、BSD に特化した仕様?で、Apache とかは独自拡張していたりして、サーバーよりもログ解析するツールの方が大事だったりします)きっちり作ると言っても、受信して記録するだけだったりします。(本当の意味できっちり作る場合は、syslog の中継まで作った方がいいんですが) 無責任実装でフリー公開するかもしれません(笑) 名前 : noppo (2011/09/20 15:41:36) こんにちは。 RFC3164ベースの実装をきっちり行って実用上十分使えるのであれば、それで良いような気もしますが、どうなんでしょうか? よくわかりませんけどね。 |
@AKISoftOfficialをフォロー
掲示板 サポートBBS PMailServer BBS アクセスの多い記事
最新記事(カテゴリ別)
PMailServer2 Version 2.53 をリリースしました。
04/08 00:50 フリー版からの製品版移行時の MTA 並列数について 02/17 23:52 メールサーバーの開発を始めて20年 02/07 21:46 PMailServer2 Version 2.52a をリリースしました。 12/26 14:02 PMailServer2 Version 2.52 をリリースしました。 10/01 10:48 PMailServer2 Version 2.51b をリリースしました。 09/19 01:43 PMailServer2 Version 2.51b(仮) Memo 09/12 00:33 PMailServer2 Version 2.51a をリリース、及び脆弱性についてのお知らせ 09/05 01:15 PMailServer2 Version 2.51a Memo 08/21 00:48 アドレスV125(K5)のスターターリレーの交換 08/04 10:10 最新コメント
UUアクセス数
今日は 203回
昨日は 203回 トータル 303505回 3ヶ月記事別ランキング
プロフィール
Z80から68系、8086系を経由して
Pascalに移行。現在は Delphiをメインに C/C#も囓ってみたり。 「無い物は作れ」の精神で年がら年中なにかを作っています。 すぐ自前で作りたがるので無駄に工数が上がったりして自爆してみたりもします。 好きな物は麺類とお煎餅 Blom内検索
BLOM Version 1.39 ©2007-15 A.K.I Software all rights reserved. |