サロンと美容と情報の保護
この文を読んでいる人の多くは興味がないんじゃないかと思われるけれども今回はエステサロンのサイトのお話。
ここしばらくこのサイト作成のお手伝いをしていたのだが、なんとか公開への運びとなった。
なんでそんな事になっていたかと言うと実はこのエステサロン私の実家というか親が経営しているのだな。「こんど WEBページをつくるのぢゃよー」とか言う話は聞いていたのだけれども、知り合いにアウトソーシングするということだったので基本的にノータッチでいるつもり……だったのだけど。
先日ちょこっと帰省した際にその界隈の話があって「うちのサーバー貸したろか?」といったら巻き込まれる形に。なんせ月々のレンタルサーバー代がかからなくなるわけだから喜んじゃって。で、サーバー管理だけという約束だったんだけど「CGI を使うのでお前がプログラム組め」とかいう話まで湧いてお約束な展開に。まあ、最初「組めるのか?」とか聞かれたので「嘗めるな」とかいう流れになってしまったのだけれども。
まあ、私の目の届くところでなおかつ管理をすることができるというのはこっちとしても色々安心できるしねえ。
その CGI がお客様からの投稿を受け付けるためもので個人情報をいくらか含んでいたあたりが問題の始まり。
「このあたりのセキュリティをどーすんのさ」とかいった感じであれやこれやと手を尽くす。ああ、やっぱり引き受けて正解だったかもしれない。
流石にフォームの記入と送信がプレーンテキストポストなのはまずかろうということで SSL の導入を試みたというのが今回のトピック。
うちのシステムは Debian GNU/Linux 3.0 で Apache を動かしている。
Apache 周りでの SSL 実装というと apache-ssl と mod_ssl の二つ。
前者は apache にパッチ(なんか変な言い回し)をあてて SSL 対応したもので、後者は apache モジュールとして組み込む形。どちらも Debian パッケージになっていて apt-get 一発。
apache-ssl は apache とは別にインストールされてそれぞれのサーバーが2つ存在する形となる。既存サイトの一部を SSL 化というのにはちと不向きに思えたので mod_ssl を選択することに。
mod_ssl のパッケージ名は libapache-mod-ssl。ちょっと見つけにくかった。
インストールは apt-get 一発だけど設定の類は一切してくれない。httpd.conf 内にモジュール名の追加すらしてくれないので注意。そのへんを知るためにはlibapache-mod-ssl-doc を読むのが一番なんだけどめんどくさがって日本語の情報を探す。google で debian-users ML のログがひっかかり事足りる。ありがたい。
http://lists.debian.or.jp/debian-users/200112/msg00163.html
SSL を使うには認証局の証明書が必要になる。「このサイトは信頼できるサイトですよー、私が保証しますよー」という奴である。取り敢えず自前で適当に証明書をでっち上げることにより SSL は動作するがブラウザ側で「このサイトの証明書は信頼できません」という警告が出まくる。当たり前だ。
そうなるとちゃんとした認証局の証明書が欲しくなるところ。身内が使うだけならともかくお客様が見るものなのに「信頼できないサイト」であってはならない。
で、SSL の証明書の発行手順を調べる。有名どころでは VeriSign がその証明書を発行してくれる。
http://www.verisign.co.jp/
んが、この証明書が 81000円/年ほどかかる。
他に国内で安い認証局をさがすと SOK綜合警備保障のサービスが見つかる。
http://cert.sok.co.jp/index.html
大分お安いがそれでも 50000円/年である。他もだいたいそんなあたり。
まあ、確かに一流企業がサイト運営のために認証証明書を入手しようとした場合それくらいの信頼性とお金が必要になるのかもしらん。しかし、しがない個人経営の店主がほそぼそとやるにはちょっと大きめの金額である。しかも毎年かかるわけだし。
で、さらに探しまくって見つけたのがイギリスの企業 COMODO の InstantSSL。
http://www.instantssl.com/
なんと 128bit 証明書が $49(US)/1year から。
こちらの KEY がしっかりしていれば申込書もいらずインターネット経由で証明書を購入できる。そんなに簡単でいいんかい、とか思わなくもないけど、一応信頼性を保証するワランティ制度もあってちゃんとサポートしてくれる様で。
取り敢えず「30日間無料お試しコース」があったので申し込んで証明書を入手。
サーバーに組み込んで期待通りに動く事を確認。よかったよかった。後日正式に購入することにしよう。
ちなみに SSL 証明書を mod_ssl に組み込む設定方法は InstantSSL のサポートページに説明があるのでそれを見るが吉。
といった顛末でエステサロンのページ(の一部)は SSL で保護されて、なおかつ認証局が信頼性を証明してくれる様になりましたとさ。