自堕落な技術者の日記

基本は喰ってるか飲んでるかですが、よく趣味でカラオケ・PKI・署名・認証・プログラミング・情報セキュリティをやっています。旅好き。テレビ好きで芸能通

windows

SHARP Brain 購入(私のじゃないですが)

3cf93cfa.jpg息子が勉強で電子辞書が欲しいというので、先週秋葉原に下見に行ってやはり2chでWindows CEの任意アプリが使えてしまったと話題のSHARP Brainの学生向けモデルPW-GC590がイイかなと、、、、で値段は秋葉原のどこでも29000円ちょいぐらいで違いはポイントぐらいのものでした。(どこも17〜18ポイントぐらい)

個人的にポイントが使いやすいヤマダLABIは在庫切れで変な色1色(グリーン)しか残っていなく、ソフマップも何だかなぁ、、、という感じだったのでヨドバシに行ったら色数も豊富で店員さんの感じも良くて同じく学割2000円引が使えるそうで、今度息子と買いに行こうと決めていました。

で昨日、息子を連れて学生証持ってヨドバシ行きました。(息子が行くのを面倒臭がるので)電話で近所のヤマダにも聞いてみたんですが全然高く学割も無く話にならなくて、電車代使ったとしても全然オトクだったと思います。延長保証もつけました。

ヨドバシにいた時間は10分ぐらいのもんだったと思います。他をうろうろすると息子がブーたれたりするのでソッコーで帰ってきました。普段息子は全く勉強はしませんが、早速使って宿題してたみたいです。

今、出かけちゃった隙にPCと繋ぐソフトやら環境設定やらをしています。Brainは、PCと繋いで別途有償の電子書籍やアプリなどをダウンロードして使え、そのアプリのフォルダをコピーして名前つけかえ、実行ファイルを任意Windows CEのものにできるようです。何かソフト買わないといけないみたいなのでAcrobat Reader LEでも買っとくかな、、、潰しが利くし、、、、人によっては路線図なんかをPDFで入れといて見たりしているそうです。

ガジェットとして遊べる時間は少ないですが、使い物になったらここで報告したいと思います(−−;

この製品は充電式なんですが、予備バッテリー買おうとすると1万もするんですよね〜〜。これって普通定価販売ですよね〜〜〜。本体購入価格の4割ってどんだけ〜〜〜〜〜(T_T)バッテリーが延命できるように使い方工夫させとかないと、、、、自宅で使うときはAC電源で使ったほうがいいかもですね、、、

コンパクトなLDAPサーバー

あるテスト用にOpenSSLやEasyCertやChallenge PKI Test SuiteなどLDAPリポジトリを必要としないで使えるCAを使っていたんですが、後になってデモ環境用にLDAPが必要となってしまいました。

Windows上で動作するコンパクトで構築・設定がGUI使えて簡単かつフリーなLDAPサーバー探してみました。使えそうなソフトの一覧は英語版WikipediaのLDAPのエントリで良くまとまっていました。

今回の選定条件のまとめはこんなの、、、
・できればフリー
・Windows上でネイティブで動作
・インストールが簡単
・使用ディスクサイズが極力小さい
・設定がGUIでできる
・ActiveDirectory環境に同居するので使用ポートが変えられる

今回の要件ではボツになったソフトウェア



cygwin上のOpenLDAP
今まではcygwin上のOpenLDAPを使っていたんですが、cygwinから入れちゃうとデフォルトでは余計なcygwinのソフトウェアまで入ってしまうし、設定もそれなりに面倒なので今回はボツ
Sun Java Directory Server
正統派で使い慣れているんですが、デカイので今回はやめにします
Apache Directory Server
これも要Javaでデカクなるのでやめにしました


Alpha Centauri SIDVault LDAP Server


これはWebで設定でき簡単でコンパクトそうなんでちょっと入れてみました。確かにインストールは簡単でWeb設定画面も一通り充実していましたが、設定画面がかなり安っちいです。良く見たら試用期間が1ヶ月程度でライセンスもちゃちい割にそれなりなので速攻でアンインストールしました。トホホ。

Windowsバイナリ版OpenLDAP


Lucas Bergmansさんが作ってくれていたWindowsバイナリ版でNTサービスとしても動作するOpenLDAP 2.2.29のバイナリがあったのでこれを使わせてもらうことにしました。
http://download.bergmans.us/openldap/openldap-2.2.29/openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.exe
Berkley DBも込み込みなのでセットアップは簡単です。更新日が2006年1月とかなり古いですが、贅沢は言えないっす。脆弱性情報があってもデモ環境なんで我慢します。Lucasさんは、もはやWindowsのユーザじゃないのでWindowsのバイナリなんて作る意味が無いとのことで更新が無いんだそうです。

セットアップウィザードは設定するところはこれだけです。私はNTサービス仕立てを選択してみました。

o01



最後にセットアップ終了と同時にサービス起動するか聞かれますが、slapd.confの設定がまだなんで起動はしないでおきます。

slapd.confなど設定ファイルはデフォルトでは "C:\Program Files\OpenLDAP" にあります。"slapd.conf"はとりあえずDN関連だけ2つ変更しておきました。
suffix "o=example,c=JP"
# 管理者用IDのDN
rootdn "cn=Manager,o=example,c=JP"


LDAPのデフォルトポートは389でslapdは通常、"-h"コマンドラインオプションで指定することにより設定できますが、slapdがNTサービスになっている場合にはレジストリでこれを設定します。(知らずにちょっとハマった)

o03



REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OpenLDAP-slapd\Parameters]
"Urls"="ldap://192.168.25.135:3389/"


参考リンクなんかを見ながらLDIFを読み込ませます。

LDAP Admin


http://ldapadmin.sourceforge.net/
OpenLDAPにはディレクトリ管理のためのGUIは無いので何か別のものをと探していたんですがブラウザとして愛用のSofterraのやつはエントリ変更ができるタイプの管理用のやつは有償で結構するんですよね。いちいちLDIFファイル作るのも面倒ですし、、、、で見つかったのがコレです。こりゃなかなか良い!!!

・インストーラー不要
・小さい (1.4MB)
・使い方も簡単
・フリー

言うこと無しですな。インストーラ不要っていうのは個人的にはポイント高くてお客さんのとことか出先で何とかしなきゃならずインストールもできず時間もかけられない緊急の場合とか、障害の場合とか、軟禁(笑)されちゃった時とかこの手のツールセットを持っていると結構助かります。コマンドラインツールも使いますけどね。

起動時はこんな感じ、、、

la01



左のConnectボタンを押せば接続先一覧が出ます。"New Connect"で新しい接続先を登録します。

la02



登録画面はこんな感じ、、、

la03



うまく接続できて、エントリが既にあればこんな感じ、、、、

la04



OUとかの下にユーザを作りたい場合には、OUを右クリックメニューで開きます。

la05



"User..."なんかで作っちゃうとPKI用にはダメなので、汎用的にエントリを作れる "Entry..."を選択します。

la06



左側のところで追加したいObjectClassを幾つも設定できるので、PKI用のリポジトリのユーザ用エントリとしてorganizationnalRoleとpkiUserとか、personとpkiUserとか入れておきます。

la07



右側の太字はObjectClassで入力必須となる属性なのでテキトーに入れておきます。で、ユーザの証明書の登録なんですが、通常 userCertificate にそのまま入れれば良さそうなところですが、それじゃダメで、userCertificate;binaryでサックリ入らないんです。

la08



そこでuserCertificateを右クリックし"Delete row"で一旦これを削除します。でuserPasswordなど最後の属性の下で"userCertificate;binary"とタイプします。隣のValueで右クリックし"Load from file..."を選択

la09



バイナリ形式(ASN.1 DER encoded binary)の証明書を選びます。で、Rdnのところで登録したいRdn(このケースではフツー"CN="ですな)を選択し保存ボタンをクリック。


la10



こんな調子でPKIのエンドエンティティやCAなんかを登録できます。気に入らなかったら右クリで簡単に削除できます。結局定番の2つを使うことになりましたが、どちらもサクサク動いてコンパクトなのでオススメです。Apache Directory Studioなんかも入れていますが普段Eclipseを使っていないので起動に時間かかり滅多に使いません(^^;

LDAP Adminで一点、惜しいのは接続エラー時のメッセージが乏しいことです。何でうまく繋がらないのかわかりにくいので、そんな時はSofterraで確認した方がいいかもしれまんせん。

参考リンク


Mick's Page:OpenLDAP - NTサービスのレジストリ設定有,COOL!
第19回 OpenLDAPの導入
UNIXな生活:OpenLDAPの使用方法とスキーマ
Manpage of slapd
Manpage of ldap.conf(5)




Windows XPを高速化するeBooster

窓の杜 - 【NEWS】Windows XPでSuperFetch/ReadyBoost技術を実現して高速化「eBoostr」日本語版
(株)コージェンメディアは9日、Windows Vistaに搭載されている“SuperFetch”“ReadyBoost”に相当する技術でWindows XPを高速化できるソフト「eBoostr」の日本語版を公開した。Windows 2000/XP/Server 2003/Server 2003 x64に対応する3,980円(税込み)のシェアウェアで、起動から4時間まですべての機能を試用可能。現在、本ソフトの専用サイトからダウンロードできる。


Vistaで搭載されているReadyBoostとかをXPでも使えるようにするソフトなんだそうな、、、、ノートとかではハードディスクのアクセスが減るので電池も長持ちするようになるらしい、、、、USBメモリの場合これを使ったら気軽には抜けなくなるんですよね、、、、

普段快適に使っていて、別の会議室への移動中、挿していたUSBメモリをドアとかに引っ掛けてOSダウン、、、、とかならないのかな、、、、

X61sになってバッテリーがすごぶる持たないので是非使ってみたいです、、、、

Windows Server 2003とSHA2証明書

どこかのブログか記事でWindows Server 2003はSHA256withRSA等、SHA2シリーズの証明書に対応しているという記事を見て、Windows Server 2003は対応済であると勘違いしていたんですが、昨日、ちょっと試してみてWindows Server 2003 SP1 Standard Editionでは、どうやら対応していないっぽいんです。

SHA256withRSA 2048bitのルート証明書をインポートしようとして表示させてみたんですが、ここで説明したような、Windows XP SP2のときと同じ「証明書は壊れているか、変更されている可能性があります。」というメッセージが表示されます。

また、Windows Server 2003でSP2とかR2とかで対応するようになったという記事も探してみたんですが、見つけることができませんでした。結局Windows Server 2003ではどのような方法を使ってもSHA256withRSA証明書には対応させることはできず、SPなども出ておらず、Windows Server 2008を使いなさいということのようです、、、、残念、

今回の調査にあたって、証明書関連のツールを少し整備しました。Challenge PKI Test Suite(CPKITS)やOpenSSL、AiCrypto、IAIK、BouncyCastle、Entrust Toolkit、または完全自前、等様々なツールで証明書データを作り出すツールを場合によって使い分けていたんですが、現状どれも一長一短というところで、使いやすさでは、CPKITSがとても心地よいのですが、基本はAiCryptoを使っているためにSHA2には対応していません。

そこで、今回用意したツールはSHA1withRSAの証明書やCRLと署名用の鍵を利用して、元の証明書やCRLの構造をそのままに、単にAlgorithmIdentifierをSHA256 or SHA512withRSA等に置き換え、署名値を置き換えるJythonのスクリプトです。

CPKITSがDNや拡張などかなり柔軟な証明書生成に対応しており、これをアルゴリズムと署名値だけ置き換えて、SHA256withRSA、SHA512withRSAの証明書のテストができるようにするためのツールです。

SHA2証明書のテスト用の信頼モデル

certutilのエラー

ThinkPad X61sの環境で

^% certutil -v URLCache CRL

すると

^320.1220.0: 0x8007007a (WIN32: 122)

^320.1316.0: 0x8007007a (WIN32: 122)

^CertUtil: -URLCache command FAILED: 0x8007007a (WIN32: 122)

^CertUtil: システム コールに渡されるデータ領域が小さすぎます。

^301.3128.0: 0x8007007a (WIN32: 122)

というエラーがでるようになってしまった。

一覧が全て表示されているのかどうかもわからない。

とりあえず Dependency Walkerでcertutil.exeが参照している

DLLを、エラーの出ない環境と比較してみることにした。

Dependency Walker

http://www.dependencywalker.com/

Windows Server 2003 Administration Tools Pack

http://www.microsoft.com/downloads/details.aspx?FamilyID=C16AE515-C8F4-47EF-A1E4-A8DCBACFF8E3&displaylang=en

ITPro Windowsコマンド集 certutil

http://itpro.nikkeibp.co.jp/article/Windows/20051013/222768/

NirSoft SocketSniff v1.00

http://www.nirsoft.net/utils/socket_sniffer.html

シンプルなパケットキャプチャソフト

日本語化も可能。下の表示領域のフォントを選べるようにしてほしい、、、、

NTLDR is missingでハマる

どうも先週、出張中に落雷とかがあったらしく、その影響でノートPCがあがらなくなってしまいました。

NTLDR is missing

という困ったメッセージが出ます。これはディスクの問題でしょうね。

http://q.hatena.ne.jp/1112218084
を見てみると、どうもブートに必要なファイルがなくなっている可能性あると思ってUSBでつないでマウントしてみたところ

- ntldr
- NTDETECT.COM
- boot.ini
- bootfont.bin

が必要なようですが、ちゃんとあるこれらのファイルはある、、、、う〜〜〜ん、管理ツールで開いてみると起動パーティション(C)がアクティブになっておらず、データ用にきってあったパーティション(D)がアクティブになっています。なんで書き換わっちゃったんだろう。これじゃブートできないはずだ。アクティブに設定してディスクを元に戻して無事起動を確認、、、、、よかった、、、、
最新記事
Categories
Archives
Twitter
記事Google検索

本ブログ内をGoogle検索
Yahoo!アクセス解析
Travel Advisor
記事検索
QRコード
QRコード
  • ライブドアブログ