ある企業に下記のサイトを提供予定です。
・ユーザー向けWEBサイト(例:www.hoge.com)
・ユーザーWEBサイトの管理サイト(例:www.hoge.com/admin/)
下記のような状況で、ユーザーサイトと管理サイトのドメインは分けるべきでしょうか?
ユーザー向けWEBサイトには企業のお客様が訪問して、商品を買ったりします。
ユーザーWEBサイトの管理サイトは、企業の管理者が利用し、
商品ページの公開・非公開、価格の変更などの制御や
ユーザーのアクセス数の確認などレポーティングに利用します。
URLは例のとおりで、管理者サイト(例:www.hoge.com/admin/)で
ユーザーサイト(例:www.hoge.com)と同じドメインです。
セキュリティーを考慮して、管理者サイトのベーシック認証を付けたりしようと思っています。
上記のような状況ですが、ユーザーサイトと管理サイトをドメイン下に設置することで
セキュリティーなどデメリットやアドバイスがあれば教えていただけないでしょうか?
思い付きですが、
・管理サイト(たとえば、/admin/以下)に企業からしかアクセスできないような
IPアドレス制限をかける。(技術的に可能かどうか教えていただきたいです。)
・URLはたとえば、www.hoge.com/admin/と分かりやすいものでなく、
外部に推測されにくいURL (たとえば、www.hoge.com/ireie2343/などにした方がいい
などが適切かどうか、それ以前にドメインが同じなのは言語同断なのかも含め、
アドバイスいただければ幸いです。
私も提供先の企業側も知識があまりないため、お知恵を借りれればありがたいです。
よろしくお願いいたします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+2
同じサーバの同じドメイン上に管理画面を置いた場合のリスクは、第三者が管理画面(少なくともログイン画面に)にアクセスしやすくなってしまうと言うことです。もし、管理画面へ誰でもログインできるような脆弱性があった(どんなに慎重に作成しても脆弱性が存在する可能性を完全に0にはできません)場合は、悪意ある第三者がログインして、情報の盗み出しや改竄等がされてしまう可能性があります。
たぶん、上のことは認識済みかと思います。特にWordPressやEC-CUBEのようなメジャーなWebアプリを用いている場合、デフォルトの管理画面のURLが誰でも知っているものになるため、脆弱性が発見され次第、世界中からログインされる可能性があります。
第1の方法として、それを防ぐために、ドメインを変える、管理画面のURLを/admin/など類推されるもの以外に変える、はある程度有効だと思います。ただ、この方法は数打ちゃ当たる方式で攻撃するような悪意がある第三者には有効ですが、その企業を標的にしている場合は、どこからしか情報が漏れて、管理画面のURLを知られてしまいます。無いよりはマシかも程度の対策です。
第2の方法として、上記に加えて、Apache上でアクセス制限(管理者が所属する企業のIPアドレス以外からはアクセスできないようにするということ、URL単位で設定できますので/adamin/の場合でも可能です)した場合ですが、これは極めて有効です。この制限を打ち破るにはApacheの脆弱性を打ち破るしかありません。逆に言えば、Apacheにアクセス制限に対する脆弱性があった場合は、同じように入り込まれてしまう可能性があります。ただ、もっと留意すべきなのはApacheの設定ミスです。一部だけ制限すると言った場合は全体を制限するよりも設定が複雑になり、設定ミスで制限がかかっていない状態になっていたという場合があります。
第3の方法として、さらに制限をするため、管理サイトは全く別のサーバに持っていくという物です。管理サイトはiptablesと言ったファイアウォールレベルでアクセス制限をかけ、第三者に接続することすら許さないようにします。Apache側も制限をかけておけば、「iptablesによる制限」+「Apacheの設定による制限」+「管理画面のログインによる制限」と3重の壁で守られるため、一つや二つの脆弱性で突破される可能性を限りなく低くすることができます。この方法の問題は、サーバをもう一つ立てることになるため、費用がかかるという点です。
費用対効果を考えて、どこまでするかになると思います。ただ、「第1の方法」は守っているように見えて余りそうではありません。近年は、企業にとって標的型攻撃の方が問題であり、そういった場合は「第1の方法」は防御の体をなしているとは言えません。むしろ、システムの改修や管理が複雑になるなどデメリットが発生する可能性があります。「第1の方法」は簡単にできるのであればする程度で、「第2の方法」を中心に据えた方が良いと思います。そして、予算に余裕があれば、「第3の方法」を検討してみてください。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+2
セキュリティー・ポリシーを決定するのはどなたでしょうか?
責任の所在をはっきりさせたほうが良いです。
今のままだと、提言をしたあなた(orあなたの会社)に責任が発生しそうですが、大丈夫ですか?
セキュリティ対応はやろうと思えば、いくらでもやることがあります。
基準となるポリシーを定め、コストと期間からどこまでやるかを決定する必要があります。
今の知識レベルで、納品可能なモノを作成できるとは思えませんので、できれば外部のコンサルタントに責任を押し付けることを検討されてはいかがでしょうか。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+1
ドメインを分けるのと同じだと、分けた方が大元のアクセス量が減るのでセキュリティは確実に向上します。
ドメイン毎にドキュメントルートも分ける。
ユーザアクセス用のドキュメントルートには管理者用のログインスクリプトはおかない
管理者側の方には接続元IPを固定する(海外からアクセス出来ないようにするだけでも随分違う)
管理者側のドメインはDNSのGeoRouting(Route53等で提供されている接続元地域ごとに名前解決のIPを変更する機能)で海外からは名前解決出来なくする
別のサーバにして、管理者機能が必要な時だけ起動する
という感じに、同じドメインにするよりは対応出来る幅が増えます。
*.htaccessやapacheのconfで対応可能なところも多くあります。が、設定はドメイン毎に分けられた方がシンプルになりますね。
デメリットとしては、
ドメイン取得及び管理のコスト
SSL証明書のコスト
DNSのレコード管理コスト
等があったりします。
ただ、セキュリティ対策は上限が無いので、
例えばIPAが発表している指針やチェック表
https://www.ipa.go.jp/security/vuln/websecurity.html
等をベースに、どこまで対応するかの方向性を先に決めてそれをクリアするには
どう対応するのが良いかという観点で進める方が良いかと思います。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.35%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2016/06/09 09:02