日々是戯言。
今日の目標:
ssl対応のWeb鯖(Apache+ssl)を立ち上げよう。
前提条件:
portsだとうまく動かないので自力インスト。
-
* いち。「opensslを入れよう」
* え? FreeBSD4.2にはデフォで入ってるんじゃ?<openssl>と思われる向きも多かろうけど、なんか4.2に入ってるopensslは少しバージョンが古くてパッチ当てんとApache+sslには使えないんだそーだ。どっひゃあ(笑)
* で、仕方がないので新しいの落としてインストール・・・・・・て、何でエラーが出ますかアナタ(笑)
* えーと、俺何か間違ったっけ? Webで調べた通りにやったはずなんだが・・・・仕方がない、なるべく英語は読みたくなかったのだが(ぉぃ、こうなったらちゃんとINSTALLマニュアルを見よう。どれどれ・・・・・・・・あ、最初のconfigから間違ってるじゃないか、俺(笑)
教訓:ちゃんとマニュアルは読もう。
-
* に。「Apacheを入れよう」
* んーと。今のApacheの最新版は1.3.19か。んじゃそれを・・・・・・・・・
* ・・・・・・・・・・・・・・・・おや?
うわ、apache+sslの方が最新で1.3.14までしか対応してない(笑)
* がーん、んじゃこの落とした1.3.19はムダですかい(笑)
教訓:先に必要なものを確認しよう。
-
* さん。「Apacheにsslパッチを当てよう」
* ・・・・・・ああっ!!
またWebの情報が間違ってる!!!(爆)
教訓:だからマニュアル読めって。
-
* よん。「CA認証させよう」
* ・・・・・・メンドくさいんだ、これが(笑)
* 情報ページ見ながらちまちま。無事成功したのでこの項目は教訓無し(笑)
-
* ご。「configファイルを書こう」
* これもメンドくさいんだ(笑)
* まあでも、言っても始まらないのでこれも情報調べながらちまちま。んで、プログラム本体に読み込ませてチェック・・・・・・
* ・・・・・・・・・・・・・・・あら?
* configファイルを読み込まないなあ。ちうか、httpsd.conf読みに行かなきゃならんのにhttpd.conf読みに行ってる。はて、何故に??
* まあ、httpsd.confからhttpd.confにリンク張れば済むけど・・・・ちと検索。む?何々、「sslのパッチは一カ所腐っててconfファイル間違える」とな。これか(笑)
* まあこのままでもいいけど、せっかくだからふにふに修正して、再コンパイル。
教訓:あまりパッチを信用しすぎない事(笑)
-
* ろく。「起動させてみよう」
* さて、configファイルのテストも無事終わったので、今度は起動。/usr/local/apache/bin/httpsdctl start、と。
-
* ・・・・・・・・・・・・・・・・・・・・・・・起動しません(爆)
-
* あー、はいはい。今度はなんですか?(いい加減悟りの境地)
* Keyの読み込みまでは行ってるから、その近所でなんか起こってるんだろなあ・・・・あ、ファイル名書き間違えてら(笑)
* 修正して、今度こそようやく起動。しかしこー、こーゆーミスはconfigtestした時に警告してもらいたいよなあ(笑)
教訓:ファイルパスは正確に。
-
* なな。「起動時のパスフレーズをなくそう」
* とりあえず起動はしたものの、今のままだと起動時にパスフレーズ(文字数の多いパスワードだと思いねぇ)入力を要求されるので、自動起動には向かない。かといって、わざわざ俺がログインして実行する、なんて事したら俺が忙しい時なんかは「Web鯖が落ちたっきり」になりかねん。そーゆー訳で、パスフレーズ無しで起動するようにしてみたい・・・・・んだけど、これまた情報が無いんだ(笑)
* mod_ssl使ってるならSSLPassPhraseDialogいじれば出来るみたいなんだけどなあ・・・・・・・この情報検索すんのに1時間以上かかったり。はぁ、やれやれ。
* まあでもとりあえず、
目標コンプリート♪
* そしてその頃外はもう朝なのであった(笑)
* ・・・・・・・・・・・・・・・・・おにーさんは疲れたよ(笑)
* opensslに関してはパス(笑) 単に./config; make; make installで行くし。
* Apacheのパッチ当ても、
* でおしまい。その際opensslのソースディレクトリ指定する必要があるんじゃけど、大抵は勝手に見つけてくれるみたいで問題なし。
* で、ややこしいのがCA認証。
* まずは秘密鍵を作成。てきとーなディレクトリ(/usr/local/bin/apache/etc/ssl/keyにしてみた)掘って、そん中で
* って感じに。file1〜file5はてきとーなファイルをフルパス指定。無くてもなんとかなるみたいだけど。で、この時パスフレーズも指定。このディレクトリはroot以外は読めない様に厳重に管理。
* その次は公開鍵作成。/usr/local/bin/apache/etc/ssl/certを掘って、
* こんな感じで。
* この辺、apache+sslのsrcディレクトリでmake certificateってやったらこれを簡単に作成してくれるスクリプト作ってくれるらしいんじゃけど、今回はやってないので詳細は不明。
* で、configファイル。
* 以上。書き上がってみると大したことないなあ。すげぇメンド臭かったんだが(笑)
* 最後に、
* で、パスフレーズ入れなくてOKに。