- ベストアンサー
レンタルサーバーのセキュリティについて。
クライアントから、住宅情報をweb上で公開できるサイトを作りたいというお話が出ました。 問題として、セキュリティを確保してほしいとのことでした。物件情報にもれては困る情報があるとのことで。 こういった場合、レンタルサーバーを使うこと自体問題なのでしょうか。自社にサーバーを立てなければいけないのでしょうか。 ちなみに、そのクライアントにもこちらにもサーバーを管理できる人材はおりません。 理想としては、セキュリティがしっかりしているレンタルサーバーを借りるのが一番コストも抑えれると考えますが、一般的にはこういうお話が出た場合、みなさんはどのようにお話を進めていかれるのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> もともとイントラで構築するって言うお話が、 > 急に変更でネットからも見れるようにって言う話になったんですね。 あるある! よくある。心中お察しします。 > VBで作られたデータをバッチでサーバに > アップするなんてできるのでしょうか? そうねぇ、こういう場合の常套手段としては、 1.何はなくともFTP。 FTPでファイルを送信すればオッケーというつくりにすればこれが一番楽かと。VPNくらいは張る方が良いでしょう。 Webの方もDBを使う場合、レンタルサーバでは大抵シェルの開放は無いのでこの方法は使えない。ファイルをアップロードしてもそれをDBに突っ込むプログラムが動かないといけないからね。今回はMySQLを使うという事だそうで、まぁ類似案件の参考程度に。 2.VPNを張ってもらって、Web側のDBを直接たたく。 これが可能ならこれが最高でしょう。ただ、ほとんど(データセンタ業者に)許してもらえない。できてもめちゃ高いでしょう。 3.HTTPは動くじゃん。じゃあVBがWebを叩けば良い。 PHPで受け口を作って、VB6ならInetコントロール(Internet Transfer Control)、VB.NETならSystem.Net.HttpWebRequestクラスで「HTTPSポスト」でデータを受け渡すというもの。 イメージ図: イントラVB←→イントラDB←→データアップロードVB←HTTPS→受け口PHP←→WebDB←→参照系PHP←→Flash Webが参照系(データの保存をしない)の場合、データロックも何もあまり考えんで良いのでVBのプログラムからどんどんデータを差し替えていけばよい。もちろん、受け口となるPHPには強めのガードをかけておくべき。例えば、HTTPSでないと弾く、BASIC認証を使う、HTTPS経由で独自のやりとり(Webサービスとか)を行うなど。 もちろん、VPNを張れるのが技術的には楽。セキュリティはVPNに任せて、HTTPでやり取りできるからね。 やたらVPN+HTTPにこだわる理由を述べておくと、多くのレンタルサーバは、インターネット側もVPN側もHTTP、HTTPS、SMTP、POP3、FTP、この5つくらいしかあけてくれない。VPN側くらい全開放してくれりゃええのんにね。という訳で、VPN経由でも「データのやり取り+サーバ側で何らかの処理を走らせたい」という場合、Webアプリを作ってHTTPでキックするくらいしか手がないんだね~。 まぁ経路の安全性をレンタルサーバ側で責任持ってくれるくらいの効果か。もちろんお金はかかる(VPNオプション費用)ので、それをケチるなら表からHTTPSなどを使って自分で経路の安全性もデータのやり取りも処理しなきゃいけない。どこにお金を使ってどこに技術力を使うのかのトレードオフですな。 二度にわたり長文で申し訳ない。短く簡潔にまとめるというのがなかなか難しい。
その他の回答 (2)
- anmochi
- ベストアンサー率65% (1332/2045)
> クライアント側の管理者だけが見れる情報 > たとえば賃貸の大家さんの情報などもデータベースの中に入れます。 そっちかぁ! いやぁ・・・・想定外。いや、なにね。あの~、不動産屋さんって、「もっといい物件無いの? 無いの?」って言いつづけたら、「それではですね」って奥の方からマルヒ物件みたいなの出してくるじゃないすか。あれかと思ってた。なので会員制かどうかを尋ねてみた次第でした。ポイント制かなんかで、上得意になったらマルヒ物件が出てくるような仕組みかなって。 私ならこういう場合、 1.社内用システムとして普通情報と特秘情報を一緒に管理、メンテナンスできるシステム 2.バッチかリアルタイムかでレンタルサーバのデータと普通情報だけを同期するシステム 3.物件検索Webアプリ を作るね。特秘情報なんてWebアプリで使わないどころか見られちゃいけないデータをレンタルサーバにストアする事自体が考えられない。まぁ、クライアントさんの予算やデータストアを一つにまとめたいなどの兼ね合いもあるでしょうけど・・・・。個人情報保護法だなんだでみなさん神経過敏になっている昨今、データは可能な限りより安全な所に保存するというか必要の無い限りわざわざ外の方へ出さない方が私は良いと思うのです。 ・クライアントさんに固定IPを持ってもらって、管理画面ページはそのIPからしか開けないようにする+HTTPS レンタルサーバ会社によっては、オプションでサーバの裏口へのVPNが用意されている所も多いので、管理画面はVPN経由でのみ開けるようにする方が楽で安心でしょう(もちろんランニングコストはあがる)。 ・Webアプリの作りこみはしっかりと(SQL Injectionなどなど) Webブラウザ側がHTMLだろうとAppletだろうとFlashだろうと、リクエストを受けてデータを渡すのはPHPになる。なので、「HTTPクライアントを信用しない」作りこみが必要です。あなたが作る「正規のアプリ」はFlashで正規のリクエストを出すでしょうが、悪意のあるユーザはHTTPクライアントのPOSTやリクエストヘッダをいくらでも偽装できるので、数字が入るべき変数に文字が入っていないかなど、(Flash側で文字チェックをしていても)PHPで再チェックする仕組が必要です。 釈迦に説法でしたか。まぁ一応工数を弾く前に再確認されてはどうかと。
お礼
flashで、ロゴのところをdrugoutすると極秘物件の裏ページに入れますよって(笑)いうのでもないです。 やはり怖いですよね、レンタルサーバにデータをおくなんて。 そうですね、みられても良い情報だけをサーバにあげるというのは良いですね。 ちなみにvbで作ってもらう予定なんですよ、というかもともとイントラで構築するって言うお話が、急に変更でネットからも見れるようにって言う話になったんですね。 VBで作られたデータをバッチでサーバにアップするなんてできるのでしょうか? お礼のつもりが、質問の補足になってしまいました。 ありがとうございました。
- anmochi
- ベストアンサー率65% (1332/2045)
> 一般的にはこういうお話が出た場合、 > みなさんはどのようにお話を進めていかれるのでしょうか。 一番肝心な事が書かれていない・・・・。 ・どんなサイトを作るの? ・会員制? ・静的ページなの? Webアプリなの? ・もれては困る情報って何が、どう、いつ、誰に漏れると困るの? この辺が分からないとレンタルと宅内の判断はできませんぞよ。Webアプリなら確保すべき要件はレンタルか否かよりもアプリの作りこみにあるし、会員制でも単にBASIC認証+HTTPSを使うような静的コンテンツサイトならレンタルサーバにコンテンツをアップロードする時の経路も問題になるだろうし。
補足
ありがとうございます。 まず、イメージ的にはたとえばエイブルの賃貸検索 http://www.able.co.jp/kensaku/jutaku/0101.html のようなものです。 会員制ではなく、どなたでも見れるようにします。 登録内容は、管理画面からクライアントの方が入力します。いまのところですが、予定としてflashでインターフェースをつくり、php、mysqlで構築する予定です。 もれては困るのは、このデータベース内の情報です。ここには、だれても見れる情報とは別に、クライアント側の管理者だけが見れる情報たとえば賃貸の大家さんの情報などもデータベースの中に入れます。それは一般の人には見れないようにします。 それではよろしくお願いいたします。
お礼
いえいえ、本当にありがとうございます。 とっても参考になりました。 クライアントの予算がぜんぜんみえず、こちらとしてもどこまでのものを作ればよいのか思案しているところなんですね。 なんとなくイメージつかめました。 助かりました、また質問するときはよろしくお願いいたします。