makoto_fujimotoのblog

株式会社進角
代表 藤本信のブログです
どうぞよろしくお願いします

Webサイトの立ち上げや運用をやっていると欠かせないのがドメインやDNSの知識です。

サイトの新規立ち上げ時にはそれほどややこしいことは無いのですが、特にサイトのリニューアルや移設あるいは業者移管を行う際には、様々な立場や知識の関係者が絡むことがありコミュニケーションに支障が出ることがあります。

例えば"ドメイン管理"と言っても、レジストラ(お名前.com等)でドメイン利用料を支払ったりWhois情報を管理するのか、あるいはDNSすなわちネームサーバのゾーン情報(ホスト名とIPアドレスが結びついた情報等)を管理するのか二つの意味にとらえられます。なおレジストラはJPRSが認定した指定事業者と呼ばれることもあります。

"ドメイン管理者"が対レジストラなのかゾーン情報まで管理しているのかはケースバイケースです。また"者"が業者を指しているのか個人を指しているかもあいまいです。

"DNSの変更"というのも良く飛び交う言葉ですが、我々システム業者側からするとIPアドレスなどのゾーン情報を変更するのか、DNSそのものを移転するのかがあいまいです。

もうややこしいですね

# あらためて、ここではDNS=ネームサーバーとします。

したがって、サイトリニューアルなどに伴って"ドメインの移設"を行う場合は、以下の点に留意しないと思わぬ障害につながったりします。この中で一点でも懸念があれば要確認する必要があります。

(1) レジストラを移管→する/しない
 →する場合は誰がどこに?
(2) ネームサーバを移管→する/しない
 →する場合は誰がどこに?
(3) ゾーン情報を更新→する/しない
 →する場合は誰がどのように?
(4) Whois情報を更新→する/しない
 →する場合は誰がどのように?
(5) ドメイン管理者(対レジストラ)を移管→する/しない
 →する場合は誰が?
(6) DNS管理者を移管→する/しない
 →する場合は誰がどのように?

                            する/しないの判断が難しい場合は弊社へ :-)

なお、企業で通常業務に使用している需要なドメイン名の料金支払いやDNS管理を誰がやっているか分からない状態は思わぬ経営リスク(失効や搾取や改ざん)になりかねませんので、経営層の方はドメイン管理者の所在は最低限掌握しておくことをおすすめします。

このエントリーを書くべきか少し悩みましたが、初歩的なセキュリティ対策がおろそかになっているWebサイトがあまりにも多いので注意喚起の為にあえて公開します。

Webサイトのセキュリティ対策はおなじみのファイアウォールやアクセス制限などに加えて、運用管理者機能にも適切な制限を掛ける必要があります。しかし現状では簡単に推測できる管理者用URLが一般公開されているサイトを簡単に見つけることでき、一般的なフレームワークや独自の管理者ログイン画面が認証なしに出てきてしまうサイトが沢山あります。そのようなWebサイトはログインID&パスワードも不用心なものが使用されている可能性が高く、ハッカーの格好の餌食になってしまいます。

以下に経験的に狙われやすいURLをリストアップしてみましたので参考にしてください。そもそもこのようなURLを使用しないか最低限IPアドレス制限を掛けることをお勧めします。

/admin/
/admin/wp-login.php
/wp/wp-login.php
/wp-admin/
/wp-login.php
/wordpress/
/wordpress/wp-login.php
/cms/
/cms/wp-login.php
/admin.html
/admin.php
/mt/
/ec-cube/
/eccube/
/kanri/
/phpMyAdmin/
http://admin.ドメイン名/
http://IPアドレス:8443/
http://IPアドレス:10000/
http://IPアドレス/

ちなみに以下のような名前のファイルがアップされていると外部から叩かれる可能性がありますので、見られて困るファイルはサーバに放置しないのが鉄則です。

/test.php
/test/
/phpinfo.php
/index2.php
/index.php.bak
/_index.html
/index.html.bak

ロードバランサを導入するメリットは"サーバの負荷を減らすこと"と思っている方が多いようですが少し違いまして、役割りとしては配下のサーバに適切な負荷がかかるように制御することです。
最近いわゆるクラウドサービスで標準で使えるロードバランサの仕様を調べたら、ちょっとビジネス要件を満たせない仕様だったので、あらためて一般的なロードバランサ製品が実装している機能を整理してみました。

(1) 様々な指標でサーバの重みづけが設定できる
トラフィック、コネクション数、ロードアベレージなどを検知し動的に任意の配分が可能です。負荷以外にもラウンドロビン形式(巡回)での分散も可能です。

(2) サーバのヘルスチェック機能
サーバの様々な障害を検知して故障と判断したら自動的にトラフィックを流さないようにします。また一方のサーバの障害検知をトリガーとして待機サーバにトラフィックを切り替えるホットスペア機能などもあります。

(3) セッション維持機能
cookieやアクセス元のIPアドレスを使用してショッピングカートやユーザ認証状態が維持されるように通信中のサーバを保持し続ける機能があります。

(4) L7機能によってURL判別などができる
通信内容を判別してサーバの振り分けなどを行う機能です。例えばURLに/shop/という文字列があったらショップ専用のサーバにトラフィックを振り分けたりできます。

(5) HTTPS通信の際にアクセス元のソースIPアドレスが判別出来る
Spoof機能がないロードバランサではHTTPS通信時のソースIPアドレスが検知できず、ロードバランサのIPとなってしますので、アクセス元制限やログ解析、調査などに支障があります。

↑このページのトップヘ