• ベストアンサー

インターネット上に公開されたサーバ間でのファイル送信/受信について

ネットワークについては全く素人となります。 本件に関して、技術的に可能であるかの判断と前提ありでの実現方法をご教授頂きたくお願いします。 ◆実現したいことは、以下となります。 「Aサーバ上に配置(公開)されているファイルA(CSV等のテキストファイル)をBサーバ上に取得し、ファイルAをデータベースサーバに取り込む」 ◆環境 ・Aサーバ  Aプロバイダ上でインターネットへ公開されているサーバ(実際にはX会社のホームページをAプロバイダでホスティングしている) ・Bサーバ  B会社上でインターネットへ公開されているサーバ ◆その他 ・上記処理をすべて自動化したい。 ・インターネット上をファイル通信することによるセキュリティを懸念しております。 ・ファイルAをデータベースに取り込む処理については、SQLServerのDTS機能を利用することで可能だと考えております。 以上となりますが、何卒宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.5

#1,2,4です。 cURLをWindows環境で動作させるにはCygwinを使う必要がありますが、そういう環境が使いづらいとお考えの場合には、ダウンローダで有名なREGET(有償)はHTTPS アドオンを入れてHTTPSに対応させることが可能です。 http://deluxe.reget.com/jp/download.htm 定期実行ができるなど非常に高機能ですが、こういうのは実際に使ってみると融通が利かないと感じるかもしれません。

micky5
質問者

お礼

すっかり間があいてしまいました。 ntaさんの回答大変参考となりました。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (4)

  • nta
  • ベストアンサー率78% (1525/1942)
回答No.4

 AサーバがSSLサーバとして機能できるのであれば認証の設定さえすれば大丈夫だと思います。そのあたりのことはプロバイダに聞いてください。  さて、Bサーバの受信用のソフトとしてはHTTPSに対応できるcURLというクライアントがあります。いろいろなOSで動作するので使えるのではないかと思います。自動化についてはUNIXであればデーモンで定期的に起動するのが最も簡単です。Windowsサーバであればタスクスケジューラ(ATコマンド)などが使えます。  更新の有無のチェックはダウンロード後にファイル比較をすればいいのではないでしょうか。

参考URL:
http://curl.haxx.se/
すると、全ての回答が全文表示されます。
回答No.3

A サーバで非公開のファイルを取得するためには、何らかの Web アプリ(CGI など)を作れば可能です。また A サーバで SSL/TLS(https) が利用可能で、かつ B サーバの IP アドレスが固定であれば、接続元の制限と通信経路の暗号化が可能になります。 B サーバ側では https サーバへ接続してファイルを取得することの出来るアプリケーションがあれば良いだけです。 俗に言う『Web サービス』みたいなものだと思えばよいのではないですかね。参考 URL ほどシッカリしたもので無くても良いので、(あとは業者に)作ってもらったらいかがでしょうか。

参考URL:
http://www.atmarkit.co.jp/icd/root/41/85038141.html
micky5
質問者

補足

hetarepyonさん ありがとうございます。 ところで、 「B サーバ側では https サーバへ接続してファイルを取得することの出来るアプリケーションがあれば良いだけです。」 を業者に依頼するほど難しいですか? できれば、簡単に作成できる情報等ってどこかにありますか?(HTTPSクライアントを作成する?のでしょうか?ちょっと調べてみました。) ご質問だらけですいません・・・。

すると、全ての回答が全文表示されます。
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.2

すみませんがもう少し補足してください。 (1)AサーバはAプロバイダが管理しているサーバであって、簡単にはその設定を変更することはできない。 (2)公開されていないとはいえ少なくともAサーバからネットワークを介してAファイルを(手動であっても)取得できる。 ということでいいのでしょうか。(1)においてそのサーバの設定を自由に変更できるのであれば、方法は色々あります。(2)については「公開されていないのだから、ハッキングする方法でもいいから教えてくれ」というのでは回答することはできません。  セキュリティ通信を実現する方法としてはSSLであればプロバイダでもサービスしている可能性があります。サーバが自由に設定できるのであればSSHやVPN通信もあります。

micky5
質問者

補足

私の記載方法が至らなくて申し訳ないです。 (1)について  プロバイダが管理しているサーバとなります。  その設定をどこまで変更できるかは現時点ではわかりません。但し、どの設定を変更することが可能であればという前提情報をご教授頂ければと考えておりました。 (2)について  誰でも取得可能というわけではなくて、クライアント認証が必要になります。(ご質問を受け、私の質問が非常に曖昧であることに気が付きました。) 結果的には、BサーバよりAサーバへクライアント認証を行い、テキストファイルを暗号化して取得可能であればいいということに気がつきました。 ここでクライアント認証の技術的な方法についてご教授頂けますか?

すると、全ての回答が全文表示されます。
  • nta
  • ベストアンサー率78% (1525/1942)
回答No.1

本当はシステムの専門の方にお答え頂いた方がいいとは思いますが、回答するにしても、質問者の方が問題とされている点が見えてきません。 (1)自動化に関してはいろいろなフリーウエアがあるのでUNIXなりWindowsなりのプラットフォームに合わせて揃えるだけ。 (2)ファイルAが公開されているのであれば、セキュリティに関して何を心配すればいいのか分かりません。 よろしくお願いします。

micky5
質問者

補足

ntaさん お答え頂きありがとうございます。 (1)、(2)について補足致します。 実現したいことを訂正させて頂きます。 「Aサーバ上に配置(公開)されているファイルA・・・」  →「Aサーバ上に配置(公開されていない)されているファイルA・・・」 ※公開されていないが重要でした。  公開されていないファイルに対してもフリーウエアはありますか?(ってどうやってやるんだよ!!なんてところも聞きたいのです・・・。)  ※特定のポートを空け、セキュリティを考慮した通信って可能なのでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A