(57)【要約】【課題】セキュリティに関連する処理を適切に実行する。【解決手段】通信装置は、第１の外部装置から第１の要求を受信する第１の受信部と、第１の外部装置からの第１の要求の受信に応じて、通信装置へのデータ送信を要求する第２の要求を、通信装置とインターネットを介して接続される第２の外部装置に対して送信する送信部と、第２の要求の送信後に、第２の要求に応じて、通信装置とインターネットを介して接続される第３の外部装置から、特定のデータを受信する第２の受信部と、特定のデータの受信に応じて、セキュリティに関連する特定の処理を実行する実行部と、を備える。第１の要求は、第１の外部装置をクライアントとし、通信装置をサーバとして、受信される。第２の要求は、通信装置をクライアントとし、第２の外部装置をサーバとして、送信される。特定のデータは、第３の外部装置をクライアントとし、通信装置をサーバとして、受信される。【選択図】  図３
2018088645.tif 000002
【特許請求の範囲】
【請求項１】
通信装置であって、
第１の外部装置から第１の要求を受信する第１の受信部であって、前記第１の要求は、前記第１の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第１の受信部と、
前記第１の外部装置からの前記第１の要求の受信に応じて、前記通信装置へのデータ送信を要求する第２の要求を、前記通信装置とインターネットを介して接続される第２の外部装置に対して送信する第１の送信部であって、前記第２の要求は、前記通信装置をクライアントとし、前記第２の外部装置をサーバとして、送信される、前記第１の送信部と、
前記第２の要求の送信後に、前記第２の要求に応じて、前記通信装置と前記インターネットを介して接続される第３の外部装置から、特定のデータを受信する第２の受信部であって、前記特定のデータは、前記第３の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第２の受信部と、
前記特定のデータの受信に応じて、セキュリティに関連する特定の処理を実行する実行部と、
を備える、通信装置。
【請求項２】
請求項１に記載の通信装置であって、
前記実行部は、前記第１の送信部による前記第２の要求の送信に基づく特定期間内に、前記第２の受信部によって前記特定のデータが受信される場合に、前記特定の処理を実行する、通信装置。
【請求項３】
請求項２に記載の通信装置であって、さらに、
前記特定期間内に、前記第２の受信部によって前記特定のデータが受信されない場合に、前記第１の要求に対する応答を、前記第１の外部装置に対して送信する第２の送信部を備える、通信装置。
【請求項４】
請求項１または２に記載の通信装置であって、さらに、
前記第２の受信部によって前記特定のデータが受信されるか否かに関わらずに、前記第１の要求に対する応答を、前記第１の外部装置に対して送信する第３の送信部を備え、
前記実行部は、前記第３の送信部による前記応答の送信後に、前記第２の受信部によって前記特定のデータが受信される場合に、前記特定の処理を実行する、通信装置。
【請求項５】
請求項１〜４のいずれかに記載の通信装置であって、
前記第１の送信部は、前記通信装置にて実行可能な特定のアプリケーションを示す特定のポート番号を示す番号情報を含む前記第２の要求を送信し、
前記第２の受信部は、前記特定のポート番号を宛先ポート番号として指定して送信される前記特定のデータを受信する、通信装置。
【請求項６】
請求項５に記載の通信装置であって、
前記特定のポート番号は、前記第１の要求にて指定されている前記宛先ポート番号である、通信装置。
【請求項７】
請求項５または６に記載の通信装置であって、
前記特定の処理は、前記第１の外部装置が、前記特定のポート番号に対応するポートを利用不可能な状態に変更する処理である、通信装置。
【請求項８】
請求項１〜７のいずれかに記載の通信装置であって、
前記第１の外部装置は、特定のゲートウェイを経由して前記通信装置と通信する装置であり、
前記通信装置は、さらに、前記第１の要求を受信する場合に、前記第１の要求が前記特定のゲートウェイを経由して受信されるか、前記特定のゲートウェイを経由せずに受信されるかを判断する判断部と、
前記第１の要求が前記特定のゲートウェイを経由せずに受信される場合に、前記第１の要求に対する応答を、前記第１の要求の送信元の装置に対して送信する第４の送信部と、
を備え、
前記第１の送信部は、
前記第１の要求が前記特定のゲートウェイを経由して受信される場合には、前記第２の要求を前記第２の外部装置に対して送信し、
前記第１の要求が前記特定のゲートウェイを経由せずに受信される場合には、前記第２の要求を前記第２の外部装置に対して送信しない、通信装置。
【請求項９】
請求項１〜８のいずれかに記載の通信装置であって、さらに、
前記第２の外部装置と前記第３の外部装置とは、同一の装置である、通信装置。
【請求項１０】
通信装置のためのコンピュータプログラムであって、
第１の外部装置から第１の要求を受信する第１の受信機能であって、前記第１の要求は、前記第１の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第１の受信機能と、
前記第１の外部装置からの前記第１の要求の受信に応じて、前記通信装置へのデータ送信を要求する第２の要求を、前記通信装置とインターネットを介して接続される第２の外部装置に対して送信する第１の送信機能であって、前記第２の要求は、前記通信装置をクライアントとし、前記第２の外部装置をサーバとして、送信される、前記第１の送信機能と、
前記第２の要求の送信後に、前記第２の要求に応じて、前記通信装置と前記インターネットを介して接続される第３の外部装置から、特定のデータを受信する第２の受信機能であって、前記特定のデータは、前記第３の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第２の受信機能と、
前記特定のデータの受信に応じて、セキュリティに関連する特定の処理を実行する実行機能と、
をコンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、インターネット介して外部装置に接続される通信装置の制御に関する。
【背景技術】
【０００２】
特許文献１に開示された技術は、ＷＥＢサーバを内蔵するビデオカメラがＷＥＢサーバをインターネットに公開しようとする場合に、ＷＥＢサーバの動作確認を行うための技術である。ＷＥＢサーバをインターネットに公開するために、ユーザが「接続」ボタンを押下すると、ビデオカメラは、自身のＩＰアドレスをインターネット上のアプリケーションサーバに送信する。アプリケーションサーバは、該ＩＰアドレスを受信すると、クライアントとして、該ＩＰアドレス宛に所定のコンテンツの要求を送信する。ビデオカメラは、コンテンツの要求を受信する場合に、ＷＥＢサーバとして、アプリケーションサーバに所定のコンテンツを返送する。ビデオカメラは、所定の時間内に、コンテンツの要求を受信しない場合に、エラーメッセージを表示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２７９４３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、一般的には、通信装置がインターネットを介して、クライアントとして動作する第三者の装置であって、通信装置のユーザが想定していない第三者の装置からの通信が可能な場合、通信装置はセキュリティ上の問題を有している場合がある。上記技術は、ビデオカメラがＷＥＢサーバをインターネットに公開しようとした場合に、クライアントとして動作するアプリケーションサーバからの要求を受信する構成を採用しているが、上記技術では、通信装置がセキュリティ上の問題を有している可能性がある場合に、クライアントとして動作する外部装置からデータを受信する状況を想定していないため、セキュリティに関連する処理を適切に実行できない可能性があった。
【課題を解決するための手段】
【０００５】
本明細書は、通信装置がセキュリティ上の問題を有している可能性がある場合に、クライアントとして動作する外部装置からデータを受信することで、セキュリティに関連する処理を適切に実行することができる技術を開示する。
【０００６】
［適用例１］通信装置であって、前記第１の外部装置から第１の要求を受信する第１の受信部であって、前記第１の要求は、第１の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第１の受信部と、前記第１の外部装置からの前記第１の要求の受信に応じて、前記通信装置へのデータ送信を要求する第２の要求を、前記通信装置とインターネットを介して接続される第２の外部装置に対して送信する第１の送信部であって、前記第２の要求は、前記通信装置をクライアントとし、前記第２の外部装置をサーバとして、送信される、前記第１の送信部と、前記第２の要求の送信後に、前記第２の要求に応じて、前記通信装置と前記インターネットを介して接続される第３の外部装置から、特定のデータを受信する第２の受信部であって、前記特定のデータは、前記第３の外部装置をクライアントとし、前記通信装置をサーバとして、受信される、前記第２の受信部と、前記特定のデータの受信に応じて、セキュリティに関連する特定の処理を実行する実行部と、を備える、通信装置。
【０００７】
特定のデータをクライアントとして動作する第３の外部装置から受信する場合には、インターネットを介して接続される外部装置がクライアントとして通信装置に通信可能であることが解る。上記構成によれば、通信装置が、第１の外部装置から第１の要求を受信することに応じて、第１の外部装置に第２の要求が送信される。そして、特定のデータをクライアントとして動作する第３の外部装置から受信することに応じて、セキュリティに関連する特定の処理が実行される。この結果、通信装置がセキュリティ上の問題を有している可能性がある場合であっても、第１の外部装置から第１の要求を受信することを契機として、クライアントとして動作する第３の外部装置から特定のデータを受信することで、セキュリティに関連する特定の処理を適切に実行することができる。
【０００８】
なお、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、画像処理装置、これら装置の機能を実現するための方法、コンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【０００９】
【図１】システム１０００の構成を示すブロック図である。
【図２】ポートフォワード設定テーブルＦＴの一例を示す図である。
【図３】第１実施例の設定確認処理のフローチャートである。
【図４】第１実施例の設定確認処理の第１のシーケンス図である。
【図５】設定確認処理で用いられる要求と応答の一例を示す図である。
【図６】第１実施例の設定確認処理の第２のシーケンス図である。
【図７】第１実施例の設定確認処理の第３のシーケンス図である。
【図８】第２実施例の設定確認処理のフローチャートである。
【発明を実施するための形態】
【００１０】
Ａ．第１実施例
Ａ−１：システム１０００の構成
次に、実施の形態を実施例に基づき説明する。図１は、システム１０００の構成を示すブロック図である。
【００１１】
システム１０００は、通信装置としての複合機２００と、端末装置１０Ａ〜１０Ｃと、サーバ３００と、中継装置３０Ａ〜３０Ｂと、を備える。中継装置３０Ａ〜３０Ｂは、２個のローカルエリアネットワークＬＮ１、ＬＮ２を含む組織内ネットワークＩＮを構成している。組織内ネットワークＩＮは、社内ネットワークや学校内ネットワークなどの同一組織内に構築されたネットワークである。
【００１２】
具体的には、複合機２００と、端末装置１０Ａと、は、第１ローカルエリアネットワークＬＮ１に接続されている。第１ローカルエリアネットワークＬＮ１は、中継装置３０Ａを介して、中継装置３０Ｃに接続されている。端末装置１０Ｂ、１０Ｃと、は、第２ローカルエリアネットワークＬＮ２に接続されている。第２ローカルエリアネットワークＮ２は、中継装置３０Ｂを介して、中継装置３０Ｃに接続されている。中継装置３０Ｃは、中継装置３０Ａと、中継装置３０Ｂと、にそれぞれ接続されている。これらの組織内ネットワークＩＮ内の接続は、例えば、イーサネット回線（イーサネットは登録商標）を用いた接続である。
【００１３】
中継装置３０Ｃは、さらに、図示しないインターネットサービスプロバイダを介して、インターネット８０と接続されている。したがって、組織内ネットワークＩＮ上の装置は、中継装置３０Ｃを介して、インターネット８０上の装置と通信可能である。
【００１４】
ここで、本明細書では、複合機２００が属するローカルエリアネットワークＬＮ１上の装置、具体的には、端末装置１０Ａを、内部装置とも呼ぶ。複合機２００が属するローカルエリアネットワークＬＮ１とは異なるネットワーク上の装置、具体的には、端末装置１０Ｂ、１０Ｃ、サーバ３００、インターネット８０に接続された第三者（例えば、悪意のある攻撃者）の計算機４００を、外部装置とも呼ぶ。外部装置は、ローカルエリアネットワークＬＮ１のゲートウェイとして機能する中継装置３０Ａを経由して、複合機２００と通信する装置である、と言うことができる。
【００１５】
外部装置のうち、複合機２００が属する組織内ネットワークＩＮ上の装置、具体的には、第２ローカルエリアネットワークＬＮ２上の端末装置１０Ｂ、１０Ｃを第１種の外部装置とも呼ぶ。外部装置のうち、組織内ネットワークＩＮに属さない装置、すなわち、複合機２００とインターネット８０を介して接続される装置、具体的には、サーバ３００、計算機４００を第２種の外部装置とも呼ぶ。
【００１６】
複合機２００は、複合機２００のコントローラとしてのＣＰＵ２１０と、ＲＡＭなどの揮発性記憶装置２２０と、ハードディスクドライブやフラッシュメモリなどの不揮発性記憶装置２３０と、液晶ディスプレイなどの表示部２４０と、液晶パネルと重畳されたタッチパネルやボタンなどの操作部２５０と、通信部２７０と、スキャナ部２８０と、プリンタ部２９０と、を備えている。
【００１７】
スキャナ部２８０は、ＣＣＤやＣＭＯＳなどの光電変換素子を用いて光学的に文書等の対象物を読み取ることによって、読み取った画像を表すスキャンデータを生成する。プリンタ部２９０は、所定の方式（例えば、レーザ方式や、インクジェット方式）で、用紙（印刷媒体の一例）上に画像を印刷する装置である。
【００１８】
揮発性記憶装置２２０は、ＣＰＵ２１０が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域を提供する。不揮発性記憶装置２３０には、コンピュータプログラムＰＧ１と、設定情報データベースＳＩと、宛先情報データベースＤＩと、が格納されている。揮発性記憶装置２２０や不揮発性記憶装置２３０は、複合機２００の内部メモリである。
【００１９】
コンピュータプログラムＰＧ１は、複合機２００の製造時に不揮発性記憶装置２３０に予め格納されて提供され得る。これに代えて、コンピュータプログラムＰＧ１は、例えば、インターネットを介して接続されたサーバからダウンロードされる形態、あるいは、ＣＤ−ＲＯＭなどに記録された形態で提供され得る。
【００２０】
ＣＰＵ２１０は、コンピュータプログラムＰＧ１を実行することにより、複合機２００の制御を実行する。例えば、ＣＰＵ２１０は、ユーザの指示に従って、印刷処理や読取処理やファクシミリ処理を実行する。印刷処理は、プリンタ部２９０に画像を印刷させる処理である。読取処理は、スキャナ部２８０に対象物を光学的に読み取らせて、スキャンデータを生成させる処理である。ファクシミリ処理は、読取処理を用いて生成されるスキャンデータを、電話回線を介してＦＡＸデータとして送信する処理や、電話回線を介して受信したＦＡＸデータを用いて、プリンタ部２９０に画像を印刷させる処理を含む。また、コンピュータプログラムＰＧ１は、サーバプログラムＳＰＧを含んでいる。ＣＰＵ２１０は、サーバプログラムＳＰＧを実行することによって、ＷＥＢサーバ機能を実行することができる。
【００２１】
このＷＥＢサーバ機能は、ＨＴＴＰ（Hypertext Transfer Protocolの略）に準拠したサーバとしての機能である。例えば、このＷＥＢサーバ機能は、クライアントに対して、複合機２００に関する設定情報データベースＳＩに格納された設定情報の変更や取得を行う設定管理サービスを提供する。
【００２２】
複合機２００のＷＥＢサーバ機能は、組織内ネットワークＩＮ上の内部装置および第１種の外部装置、具体的には、第１ローカルエリアネットワークＬＮ１上の端末装置１０Ａ（内部装置）と、第２ローカルエリアネットワークＬＮ２上の端末装置１０Ｂ、１０Ｃ（第１種の外部装置）と、をクライアントとしてサービスを提供することを想定している。複合機２００のＷＥＢサーバ機能は、インターネット８０を介して、第２種の外部装置にサービスを提供することは、想定していない。このために、セキュリティの観点からは、第２種の外部装置が、インターネットを介して、複合機２００に、ＨＴＴＰリクエストを送信できないことが好ましい。
【００２３】
設定情報データベースＳＩには、複合機２００に関する設定情報は、例えば、画像処理に関する設定情報と、ネットワークに関する設定情報と、表示部２４０や操作部２５０に関する設定情報と、を含む様々な設定情報が格納されている。
【００２４】
画像処理に関する設定情報は、印刷処理に関する設定情報や読取処理に関する設定情報を含む。画像処理に関する設定情報には、個人情報が含まれ得る。例えば、読取処理に関する設定情報は、複数個の読取処理に関する設定値をグループ化した情報であるスキャンプロファイルを含む。スキャンプロファイルは、生成されるスキャンデータの解像度、色数（モノクロ、フルカラーなど）に加えて、生成されるスキャンデータの宛先を示すメールアドレスなどの個人情報を含む。
【００２５】
ネットワークに関する設定情報は、複合機２００に割り当てられるＩＰアドレスや、サブネットマスクやデフォルトゲートウェイを示す情報などのＴＣＰ／ＩＰに準拠した通信のための一般的な設定情報を含む。
【００２６】
宛先情報データベースＤＩは、例えば、ファクシミリ処理において、ＦＡＸデータの宛先となるＦＡＸ番号や、スキャンデータの宛先となるメールアドレスなどの宛先情報を含む。
【００２７】
通信部２７０は、外部装置とデータ通信を行うためのインタフェースを含む。本実施例では、第１ローカルエリアネットワークＬＮ１に接続するためのインタフェース、具体的には、イーサネット（登録商標）やＷｉ−Ｆｉ規格に準拠した有線や無線のインタフェースを含む。
【００２８】
サーバ３００は、複合機２００のベンダによって提供されるサーバである。サーバ３００は、サーバ３００のコントローラとしてのＣＰＵ３１０と、ＲＡＭなどの揮発性記憶装置３２０と、ハードディスクドライブなどの不揮発性記憶装置３３０と、インターネットＩＴと接続するための通信部３７０と、を備えている。
【００２９】
揮発性記憶装置３２０は、ＣＰＵ３１０が処理を行う際に生成される種々の中間データを一時的に格納するバッファ領域を提供する。不揮発性記憶装置３３０は、サーバプログラムＰＧ２を格納している。ＣＰＵ３１０は、サーバプログラムＰＧ２を実行することによって、複合機２００と協働して、後述する設定確認処理を実現する。
【００３０】
端末装置１０Ａ〜１０Ｃは、パーソナルコンピュータやスマートフォンなどの公知の計算機である。端末装置１０Ａ〜１０Ｃは、組織内ネットワークＩＮを介して、複合機２００と通信を行って、複合機２００を利用することができる。例えば、端末装置１０Ａ〜１０Ｃは、印刷ジョブを複合機２００に送信して、複合機２００に印刷を実行させることができる。端末装置１０Ａ〜１０Ｃは、複合機２００のＷＥＢサーバ機能と通信して、複合機２００の設定情報の変更や取得を行うことができる。
【００３１】
中継装置３０Ａは、ハブとしての機能と、ルータとしての機能と、を備えている。ハブは、第１ローカルエリアネットワークＬＮ１上の装置間、例えば、端末装置１０Ａと、複合機２００と、の間の通信を中継する。ルータは、第１ローカルエリアネットワークＬＮ１上の装置と、中継装置３０Ａを介して接続される他のネットワーク（例えば、第２ローカルエリアネットワークＬＮ２やインターネット８０）上の装置と、の間の通信を中継する。
【００３２】
中継装置３０Ｂは、中継装置３０Ａと同様に、ハブとして、第２ローカルエリアネットワークＬＮ２上の装置間の通信を中継し、ルータとして、第２ローカルエリアネットワークＬＮ２上の装置と他のネットワーク上の装置との間の通信を中継する。
【００３３】
中継装置３０Ｃは、ルータとしての機能と、回線終端装置としての機能と、を備えている。中継装置３０Ｃは、ルータとして、中継装置３０Ａと、中継装置３０Ｂと、の間の通信、および、中継装置３０Ａ、３０Ｂと、インターネット８０上の装置と、の間の通信を中継する。中継装置３０Ｃは、回線終端装置として、組織内ネットワークＩＮで用いられる信号（具体的には、イーサネット回線の信号）と、中継装置３０Ｃとインターネットサービスプロバイダとの間の通信で用いられる信号（例えば、光回線やＡＤＳＬ回線の信号）と、を変換する。回線終端装置は、例えば、光回線の場合はＯＮＵ（Optical Network Unitの略）であり、ＡＤＳＬ回線の場合はモデムである。
【００３４】
中継装置３０Ｃのルータ、回線終端装置としての機能は、本実施例のように１個の装置で実現されても良いし、２個の装置でそれぞれ実現されても良い。中継装置３０Ａ、３０Ｂのハブ、ルータとしての機能についても同様である。
【００３５】
Ａ−２．ネットワーク設定
組織内ネットワークＩＮ上の装置２００、１０Ａ〜１０Ｃ、３０Ａ〜３０Ｃには、それぞれ、組織内ネットワークＩＮ内での通信のために、互いに異なるローカルＩＰアドレス（プライベートＩＰアドレスとも呼ぶ）が割り当てられている。ここで、複合機２００に割り当てられているローカルＩＰアドレスを「ＬＩＰ＿Ｍ」とし、端末装置１０Ａ、１０Ｂに割り当てられているローカルＩＰアドレスを、それぞれ、「ＬＩＰ＿Ｔａ」、「ＬＩＰ＿Ｔｂ」とする。
【００３６】
インターネット８０と接続される中継装置３０Ｃには、さらに、インターネット８０を介した通信を行うために、インターネット上の装置間で重複しない一意のアドレスであるグローバルＩＰアドレス「ＧＩＰ＿Ｒ」が割り当てられている。後述する設定確認処理において、複合機２００からＨＴＴＰリクエストを受信することが想定されているサーバ３００には、グローバルＩＰアドレス「ＧＩＰ＿Ｓ」が割り当てられている。
【００３７】
中継装置３０Ｃでは、インターネット８０と接続されているため、ルータとしての機能の一部として、ＮＡＴ（Network Address Translation）やＮＡＰＴ（Network Address Port Translation）と呼ばれるアドレス変換機能が動作している。アドレス変換機能は、組織内ネットワークＩＮからインターネット８０へと送信される要求を中継する際に実行される送信元ＩＰアドレス変換処理と、インターネット８０から組織内ネットワークＩＮへと送信される応答を中継する際に実行される宛先ＩＰアドレス変換処理と、を含む。複合機２００がインターネット８０上の第２種の外部装置に、要求（例えば、ＨＴＴＰリクエスト）を送信し、該要求に対する応答（例えば、ＨＴＴＰレスポンス）を、第２種の外部装置から受信するケースを想定する。中継装置３０Ｃは、複合機２００から第２の外部装置への要求の送信を中継する際には、該要求の送信元ＩＰアドレスを、複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」から、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」に変換する（送信元ＩＰアドレス変換処理）。このとき、中継装置３０Ｃは、当該ＩＰアドレスの変更履歴を記録する。中継装置３０Ｃは、第２種の外部装置から複合機２００への応答の送信を中継する際には、記録された変更履歴を参照して、該応答の宛先ＩＰアドレスを、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」から、複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」に変換する（宛先ＩＰアドレス変換処理）。中継装置３０Ｃは、このとき参照された変更履歴を、該応答の中継後に削除する。
【００３８】
中継装置３０Ｃでは、さらに、ルータとしての機能の一部として、ポートフォワード機能が有効にされている場合には、ポートフォワード機能が動作している。ポートフォワード機能は、ポートフォワード設定テーブルＦＴ（図１）を参照して行われる。
【００３９】
図２は、ポートフォワード設定テーブルＦＴの一例を示す図である。ポートフォワード設定テーブルＦＴには、対象宛先ＩＰアドレスと、対象ポート番号と、転送先ＩＰアドレスと、が対応付けて記録されている。ポートフォワード機能が有効である場合には、中継装置３０Ｃは、第２種の外部装置からインターネット８０を介して要求（例えば、ＨＴＴＰリクエスト）を受信すると、該要求の宛先ＩＰアドレスと宛先ポート番号を取得する。中継装置３０Ｃは、該要求の宛先ＩＰアドレスが、ポートフォワード設定テーブルＦＴに設定された対象ＩＰアドレスであり、かつ、宛先ポート番号が、ポートフォワード設定テーブルＦＴに設定された対象ポート番号であるか否かを判断する。中継装置３０Ｃは、宛先ＩＰアドレスが、対象ＩＰアドレスであり、かつ、宛先ポート番号が対象ポート番号である場合には、該要求の宛先ＩＰアドレスを、ポートフォワード設定テーブルＦＴにて該対象ポート番号に対応付けられた転送先ＩＰアドレスに変換する。中継装置３０Ｃは、該変換後の要求を、転送先ＩＰアドレスに従ってルーティングして転送する。この結果、該要求は、転送先ＩＰアドレスが割り当てられた装置に送信される。図２の例では、宛先ＩＰアドレスが「ＧＩＰ＿Ｒ」であり、かつ、宛先ポート番号が特定ポート番号ＰＮｗｅｂである要求がインターネット８０を介して中継装置３０Ｃ宛に送信された場合に、該要求は、ローカルＩＰアドレス「ＬＩＰ＿Ｍ」が割り当てられた複合機２００に送信される。特定ポート番号ＰＮｗｅｂは、本実施例では、複合機２００のＷＥＢサーバ機能が実行する設定管理サービスを示すポート番号である。このために、該要求は、設定管理サービスに対する要求として複合機２００によって受信される。
【００４０】
推奨設定は、上述したアドレス変換機能が有効であり、かつ、図２のポートフォワード設定テーブルＦＴに示すように、宛先ポート番号が特定ポート番号ＰＮｗｅｂである要求が複合機２００に送信されるように設定されたポートフォワード機能（以下、特定ポートフォワード機能とも呼ぶ）が無効な状態である。
【００４１】
推奨設定では、先に、複合機２００から第２種の外部装置に要求が送信されて、中継装置３０ＣにＩＰアドレスの変換履歴が記録された後でなければ、基本的に、第２種の外部装置から複合機２００にデータを送信できない。したがって、複合機２００をクライアントとし、第２種の外部装置をサーバとして、複合機２００側が先に第２種の外部装置に要求を送信することは可能であるが、複合機２００をサーバとし、第２種の外部装置をクライアントとして、第２種の外部装置が先に要求を送信することはできない。このため、推奨設定では、第三者（例えば、悪意のある攻撃者）の第２種の外部装置（例えば、図２の計算機４００）は、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」と、特定ポート番号ＰＮｗｅｂと、を認識したとしても、複合機２００と通信を行うことは、困難である。
【００４２】
ここで、上記推奨設定とは異なるネットワーク設定（非推奨設定とも呼ぶ）が、行われる場合がある。非推奨設定では、上述したアドレス変換機能が有効であり、かつ、上述した特定ポートフォワード機能が有効な状態である。非推奨設定では、第２種の外部装置が、グローバルＩＰアドレス「ＧＩＰ＿Ｍ」と特定ポート番号ＰＮｗｅｂとを認識していれば、複合機２００をサーバとし、第２種の外部装置をクライアントとして、第２種の外部装置が先に要求を送信することができる。このために、非推奨設定では、第三者の第２種の外部装置は、推奨設定と比較して、容易に、複合機２００と通信を行うことができる。その結果、第三者によって、複合機２００が提供する上述した設定管理サービスが利用されて、設定情報データベースＳＩ内の設定情報の改ざんや、宛先情報データベースＤＩ内の宛先情報の盗難などが行われる可能性も高くなる。したがって、非推奨設定は、推奨設定よりもセキュリティのレベルが低く、セキュリティ上の問題がある設定である、と言うことができる。このような非推奨設定は、例えば、複合機２００の管理者の知識が不十分である場合などに、行われ得る。
【００４３】
Ａ−３：システム１０００の動作
第１実施例では、上記推奨設定が行われているか、非推奨設定が行われているかを確認する設定確認処理が行われる。設定確認処理は、複合機２００のＣＰＵ２１０とサーバ３００のＣＰＵ３１０とによって実行される。この設定確認処理は、複合機２００が、特定ポート番号ＰＮｗｅｂを宛先ポート番号とするＨＴＴＰリクエストＡ、すなわち、複合機２００のＷＥＢサーバ機能宛のＨＴＴＰリクエストＡを受信したことに応じて実行される。このＨＴＴＰリクエストＡは、送信元の装置をクライアントとし、複合機２００をサーバとして、送信される。
【００４４】
図３は、第１実施例の設定確認処理のフローチャートである。このフローチャートは、設定確認処理のうち、複合機２００が実行する部分を示している。Ｓ１１０にて複合機２００のＣＰＵ２１０がＨＴＴＰリクエストＡを受信すると、Ｓ１１５では、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置は、同一ネットワーク内の装置、すなわち、内部装置であるか否かを判断する。具体的には、複合機２００に割り当てられているＩＰアドレス「ＬＩＰ＿Ｍ」と、サブネットマスクと、に基づいて、複合機２００が属するローカルエリアネットワークＬＮ１のネットワークアドレスが特定される。ＨＴＴＰリクエストＡの送信元ＩＰアドレスと、サブネットマスクと、に基づいて、ＨＴＴＰリクエストＡの送信元の装置が属するネットワークのネットワークアドレスが特定される。ローカルエリアネットワークＬＮ１のネットワークアドレスと、ＨＴＴＰリクエストＡの送信元の装置が属するネットワークのネットワークアドレスと、が一致する場合には、ＨＴＴＰリクエストＡの送信元の装置は、同一ネットワーク内の内部装置であると判断される。内部装置は、上述したようにローカルエリアネットワークＬＮ１上の装置（例えば、端末装置１０Ａ）である。これらのネットワークアドレスが一致しない場合には、ＨＴＴＰリクエストＡの送信元の装置は、外部装置であると判断される。外部装置は、上述したように、第２ローカルエリアネットワークＬＮ２上の第１種の外部装置（例えば、端末装置１０Ｂ、１０Ｃ）、あるいは、インターネット８０を介して複合機２００と接続される第２種の外部装置（例えば、計算機４００）である。なお、ＨＴＴＰリクエストＡの送信元の装置が、同一ネットワーク内の装置であるか否かの判断は、ＨＴＴＰリクエストＡが、ローカルエリアネットワークＬＮ１のゲートウェイである中継装置３０Ａを経由せずに受信されるか、中継装置３０Ａを経由して受信されるかの判断である、と言うことができる。
【００４５】
ＨＴＴＰリクエストＡの送信元の装置が、同一ネットワーク内の装置でない場合には（Ｓ１１５：ＮＯ）、換言すれば、ＨＴＴＰリクエストＡの送信元の装置が、外部装置である場合には、ＨＴＴＰリクエストＡの送信元の装置は、設定管理サービスのクライアントとして想定されていない第２種の外部装置である可能性がある。このために、この場合には、ＣＰＵ２１０は、Ｓ１２０〜Ｓ１３５の処理を実行して、推奨設定が行われているか、非推奨設定が行われているかを確認する。ＨＴＴＰリクエストＡの送信元の装置が、同一ネットワーク内の装置、すなわち、内部装置である場合には（Ｓ１１５：ＹＥＳ）、ＨＴＴＰリクエストＡの送信元の装置が、第２種の外部装置である可能性はないために、ＣＰＵ２１０は、Ｓ１２０〜Ｓ１３５を行うことなく、Ｓ１４５に処理を進める。
【００４６】
Ｓ１２０では、ＣＰＵ２１０は、サーバ３００に対して、確認用のＨＴＴＰリクエストＢを送信する。Ｓ１２５では、ＣＰＵ２１０は、所定の待機期間ＷＴをカウントするためのタイマーを起動する。待機期間ＷＴは、例えば、数秒程度の期間とされる。
【００４７】
Ｓ１３０では、ＣＰＵ２１０は、サーバ３００から、ＨＴＴＰリクエストＢに応じて送信されるＨＴＴＰリクエストＥを受信したか否かを判断する。ＨＴＴＰリクエストＥを受信していない場合には（Ｓ１３０：ＮＯ）、Ｓ１３５にて、ＣＰＵ２１０は、所定の待機期間ＷＴが経過したか否かを判断する。所定の待機期間ＷＴが経過していない場合には（Ｓ１３５：ＮＯ）、ＣＰＵ２１０は、Ｓ１３０に戻って、サーバ３００からのＨＴＴＰリクエストＥを待つ。なお、このＨＴＴＰリクエストＥは、サーバ３００をクライアントとし、複合機２００をサーバとして送信される。所定の待機期間ＷＴ内に受信されたＨＴＴＰリクエストが、サーバ３００からのＨＴＴＰリクエストＥであるか否かは、例えば、受信されたＨＴＴＰリクエストの送信元ＩＰアドレスが、サーバ３００のグローバルＩＰアドレス「ＧＩＰ＿Ｓ」であるか否かによって判断される。
【００４８】
ＨＴＴＰリクエストＥを受信した場合には（Ｓ１３０：ＹＥＳ）、インターネット８０を介して、第２種の外部装置が、クライアントとして、複合機２００に要求を送信することができること、すなわち、非推奨設定が行われていることが確認できる。このために、この場合には、ＣＰＵ２１０は、Ｓ１３７にてタイマーを停止し、Ｓ１４０にて、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止して、設定確認処理を終了する。すなわち、端末装置１０Ｂや計算機４００などの外部装置が、特定ポート番号ＰＮｗｅｂに対応するポートを利用不可能な状態に変更する（該ポートをクローズするとも言う）。この後に、ＣＰＵ２１０は、内部装置（例えば、端末装置１０Ａ）から特定ポート番号ＰＮｗｅｂ宛のＨＴＴＰリクエストを受信した場合には、端末装置１０Ａへの設定管理サービスの提供を行う。一方、ＣＰＵ２１０は、外部装置（例えば、端末装置１０Ｂ、計算機４００）から特定ポート番号ＰＮｗｅｂ宛のＨＴＴＰリクエストを受信した場合には、端末装置１０Ａへの設定管理サービスの提供を行わない。この結果、本来は、設定管理サービスのクライアントとして想定している第１種の外部装置（例えば、端末装置１０Ｂ）に対して、設定管理サービスを提供できなくなるが、クライアントとして想定していない第２種の外部装置（例えば、計算機４００）に設定管理サービスを利用される可能性を低減できる。
【００４９】
ＨＴＴＰリクエストＥを受信することなく、所定の待機期間ＷＴが経過した場合には（Ｓ１３５：ＹＥＳ）、ＣＰＵ２１０は、Ｓ１４５に処理を進める。この場合には、インターネット８０を介して、第２種の外部装置が、クライアントとして、複合機２００に要求を送信することができないこと、すなわち、推奨設定が行われていることが確認できる。この場合には、ＨＴＴＰリクエストＡの送信元の装置は、設定管理サービスのクライアントとして想定されている第１種の外部装置（例えば、端末装置１０Ｂ）であると考えられる。このために、ＣＰＵ２１０は、上述したＳ１４０を行うことなく、Ｓ１４５に処理を進める。
【００５０】
Ｓ１４５では、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置に対して、ＨＴＴＰリクエストＡに対する応答として、ＨＴＴＰレスポンスＣを送信する。その後、Ｓ１５０では、ＣＰＵ２１０は、ＷＥＢサーバとしてＨＴＴＰリクエストＡの送信元の装置との通信を行い、ＨＴＴＰリクエストＡの送信元の装置に対して設定管理サービスを提供する。
【００５１】
Ａ−３−１：外部装置からＨＴＴＰリクエストが送信される場合の動作（推奨設定時）
図３を参照して概要を説明した設定確認処理について、さらに、説明する。図４は、第１実施例の設定確認処理の第１のシーケンス図である。第１のシーケンス図は、ネットワーク設定として上述した推奨設定が行われている状態で、外部装置からＨＴＴＰリクエストＡが複合機２００に対して送信される場合のシーケンス図である。このシーケンス図では、外部装置である端末装置１０Ｂから送信されるＨＴＴＰリクエストＡを複合機２００が受信したことに応じて上述の設定確認処理が実行される。図５は、設定確認処理で用いられる要求と応答の一例を示す図である。
【００５２】
図４のＳ１２では、端末装置１０Ｂは、ＨＴＴＰリクエストＡを複合機２００に対して送信する。図５（Ａ）に示すようにＨＴＴＰリクエストＡのＩＰヘッダに含まれる送信元ＩＰアドレスは、端末装置１０ＢのローカルＩＰアドレス「ＬＩＰ＿Ｔｂ」であり、宛先ＩＰアドレスは、複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」である。また、ＨＴＴＰリクエストＡのＴＣＰヘッダに含まれる宛先ポート番号は、特定ポート番号ＰＮｗｅｂである。このＨＴＴＰリクエストＡは、一般的なルーティングによって、複合機２００に受信される。
【００５３】
ＨＴＴＰリクエストＡが受信されると（図３のＳ１１０）、図４の例では、ＨＴＴＰリクエストＡの送信元の装置は、端末装置１０Ｂであるので、図３のＳ１１５にて、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置は、端末装置１０ＢのローカルＩＰアドレス「ＬＩＰ＿Ｔｂ」に基づいて同一ネットワーク内ではないと判断する（図４のＳ１４）。この結果、図３のＳ１２０にてＣＰＵ２１０は、ＨＴＴＰリクエストＢを送信する。図５（Ｂ）に示すように、ＨＴＴＰリクエストＢのＩＰヘッダに含まれる送信元ＩＰアドレスは、複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」であり、宛先ＩＰアドレスは、サーバ３００のグローバルＩＰアドレス「ＧＩＰ＿Ｓ」である。また、ＨＴＴＰリクエストＢのＨＴＴＰボディには、ＨＴＴＰリクエストＡの宛先ポート番号（図５（Ａ）の例では特定ポート番号ＰＮｗｅｂ）が、指定ポート番号として、含められる（図５（Ｂ））。ＨＴＴＰリクエストＢには、さらに、リクエスト送信命令が含まれる。リクエスト送信命令は、複合機２００へのＨＴＴＰリクエストの送信をサーバ３００に対して指示する命令（コマンド）である。リクエスト送信命令は、ＨＴＴＰリクエストＢのボディに含められても良いし、ＨＴＴＰヘッダの宛先ＵＲＬに、リクエスト送信命令を意味する特定のＵＲＬとして含められても良い。ＨＴＴＰリクエストＢは、ルーティングによって、中継装置３０Ａを介して中継装置３０Ｃに受信される。
【００５４】
ＨＴＴＰリクエストＢを送信すると、Ｓ１７にて、ＣＰＵ２１０は、所定の待機期間ＷＴをカウントするためのタイマーを起動する。待機期間ＷＴは、例えば、数秒程度の期間とされる。
【００５５】
中継装置３０Ｃでは、アドレス変換機能が動作している。このため、中継装置３０Ｃは、ＨＴＴＰリクエストＢを受信すると、Ｓ１８にて、上述したように、送信元ＩＰアドレス変換処理を実行する。すなわち、該ＨＴＴＰリクエストＢのＩＰヘッダに含まれる送信元ＩＰアドレスは、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」に変更される。また、ＩＰアドレスの変更記録が中継装置３０Ｃ内に記録される。
【００５６】
Ｓ２０では、中継装置３０Ｃは、ＨＴＴＰリクエストＢの送信元ＩＰアドレスを変更して得られるＨＴＴＰリクエストＣ（図５（Ｃ））をインターネット８０上に送信する。ＨＴＴＰリクエストＣは、インターネット８０を介して、サーバ３００によって受信される。
【００５７】
Ｓ２２では、サーバ３００のＣＰＵ３１０は、受信したＨＴＴＰリクエストＣのＩＰヘッダに含まれる送信元ＩＰアドレスと、ＨＴＴＰボディに含まれる指定ポート番号と、を取得する。図６の例では、送信元ＩＰアドレスとして、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」が取得され、指定ポート番号として、特定ポート番号ＰＮｗｅｂが取得される。
【００５８】
Ｓ２４では、ＣＰＵ３１０は、受信したＨＴＴＰリクエストＣに対する応答として、ＨＴＴＰレスポンスＡ（図５（Ｄ））をインターネット８０上に送信する。ＨＴＴＰレスポンスＡのＩＰヘッダに含まれる送信元ＩＰアドレスは、サーバ３００のグローバルＩＰアドレス「ＧＩＰ＿Ｓ」である。ＨＴＴＰレスポンスＡのＩＰヘッダに含まれる宛先ＩＰアドレスは、Ｓ２２で取得したグローバルＩＰアドレス、すなわち、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」である。ＨＴＴＰレスポンスＡは、インターネット８０を介して、中継装置３０Ｃによって受信される。
【００５９】
中継装置３０Ｃは、ＨＴＴＰレスポンスＡを受信すると、Ｓ２６にて、上述したように、宛先ＩＰアドレス変換処理を実行する。すなわち、Ｓ１８の送信元ＩＰアドレス変換処理において記録された変更記録を参照して、該ＨＴＴＰレスポンスＡのＩＰヘッダに含まれる宛先ＩＰアドレスは、複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」に変更される。参照された変更記録は削除される。
【００６０】
Ｓ２８では、中継装置３０Ｃは、ＨＴＴＰレスポンスＡの宛先ＩＰアドレスを変更して得られるＨＴＴＰレスポンスＢ（図５（Ｅ））を、該変更後の宛先ＩＰアドレス「ＬＩＰ＿Ｍ」に従って送信する。ＨＴＴＰレスポンスＢは、中継装置３０ＡとローカルエリアネットワークＬＮ１とを介して複合機２００によって受信される。
【００６１】
Ｓ１６、Ｓ２０のＨＴＴＰリクエストＢ、Ｃの送受信と、Ｓ２４、Ｓ２８のＨＴＴＰレスポンスＡ、Ｂの送受信と、は、複合機２００をクライアントとし、サーバ３００をサーバとして行われる通信である。
【００６２】
サーバ３００のＣＰＵ３１０は、Ｓ３０にて、ＨＴＴＰリクエストＣ（図５（Ｃ））に含まれるリクエスト送信命令に応じて、ＨＴＴＰリクエストＤ（図５（Ｆ））をインターネット８０上に送信する。ＨＴＴＰリクエストＤの送信元ＩＰアドレスは、サーバ３００のグローバルＩＰアドレス「ＧＩＰ＿Ｓ」である。ＨＴＴＰリクエストＤのＩＰヘッダに含まれる宛先ＩＰアドレスは、Ｓ２２で取得したグローバルＩＰアドレス、すなわち、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」である。したがって、ＨＴＴＰリクエストＤは、中継装置３０Ｃに受信される。ＨＴＴＰリクエストＤのＴＣＰヘッダに含まれる宛先ポート番号は、Ｓ２２で取得した特定ポート番号ＰＮｗｅｂである。
【００６３】
Ｓ３０のＨＴＴＰリクエストＤの送信は、複合機２００をサーバとし、サーバ３００をクライアントとして行われる通信である。このように、複合機２００とサーバ３００とは、ＨＴＴＰに準拠するクライアントとサーバとの両方として動作可能である。
【００６４】
中継装置３０Ｃは、ＨＴＴＰリクエストＤを受信すると、宛先ＩＰアドレスが中継装置３０Ｃ宛であることを認識するが、対応する送信元ＩＰアドレス変換処理を行った変更記録がない。このために、中継装置３０Ｃは、宛先ＩＰアドレス変換処理を行わない。また、推奨設定では、特定ポートフォワード機能は無効であるので、ＨＴＴＰリクエストＤの宛先ポート番号が、特定ポート番号ＰＮｗｅｂであっても、ポートフォワード処理は行われない。したがって、中継装置３０Ｃは、ＨＴＴＰリクエストＤを中継せずに、ＨＴＴＰリクエストＤを破棄する。
【００６５】
Ｓ３２では、中継装置３０Ｃは、ＨＴＴＰリクエストＤの宛先が間違えていることを示すエラー情報を含むエラーレスポンス（図５（Ｇ））をインターネット８０上に送信する。該エラーレスポンスの送信元ＩＰアドレスは、中継装置３０ＣのグローバルＩＰアドレス「ＧＩＰ＿Ｒ」であり、宛先ＩＰアドレスは、サーバ３００のグローバルＩＰアドレス「ＧＩＰ＿Ｓ」である。したがって、該エラーレスポンスは、サーバ３００によって受信される。
【００６６】
以上のように、推奨設定が行われている場合には、複合機２００から送信されるＨＴＴＰリクエストＢに含まれるリクエスト送信命令に応じてサーバ３００から送信されるＨＴＴＰリクエストＤは、複合機２００に到達しない。すなわち、推奨設定が行われている場合には、複合機２００をサーバとし、サーバ３００をクライアントとして行われる通信では、ＨＴＴＰリクエストは、複合機２００に到達しない。このために、ＨＴＴＰリクエストが複合機２００によって受信されないまま、待機期間ＷＴが経過する。
【００６７】
待機期間ＷＴが経過すると、図３のＳ１３５から解るように、図４のＳ３４にて、複合機２００のＣＰＵ２１０は、Ｓ１７にて起動したタイマーのカウントに基づいて、待機期間ＷＴが経過したと判断する。この場合には、現在のネットワーク設定は、推奨設定であり、特定ポートフォワード機能は、無効であると判断できる。したがって、セキュリティ上の問題はないと判断できるので、図３のＳ１４５、Ｓ１５０にて説明したように、ＣＰＵ２１０は、端末装置１０Ｂから受信したＨＴＴＰリクエストＡに対するＨＴＴＰレスポンスＣを、端末装置１０Ａに送信し（Ｓ３６）、設定管理サービスを端末装置１０Ｂに対して提供する（Ｓ３８）。
【００６８】
Ａ−３−２：外部装置からＨＴＴＰリクエストが送信される場合の動作（非推奨設定時）
図６は、第１実施例の設定確認処理の第２のシーケンス図である。第２のシーケンス図は、ネットワーク設定として上述した非推奨設定が行われている状態で、外部装置からＨＴＴＰリクエストＡが複合機２００に対して送信される場合のシーケンス図である。このシーケンス図では、外部装置である端末装置１０Ｂから送信されるＨＴＴＰリクエストＡを複合機２００が受信したことに応じて上述の設定確認処理が実行される。
【００６９】
図６のＳ１２〜Ｓ３０の処理は、図４のＳ１２〜Ｓ３０の処理と同一の処理である。非推奨設定では、中継装置３０Ｃにおいて、特定ポートフォワード機能が有効である。このために、図６のＳ３０にてサーバ３００から送信されるＨＴＴＰリクエストＤを受信した中継装置３０Ｃは、Ｓ３２Ｂにて、ポートフォワード処理を実行する。具体的には、中継装置３０Ｃは、ＨＴＴＰリクエストＤの宛先ＩＰアドレスが、中継装置３０Ｃ自身のグローバルＩＰアドレス「ＧＩＰ＿Ｍ」であり、かつ、宛先ポート番号が、ポートフォワード設定テーブルＦＴに設定された対象ポート番号である特定ポート番号ＰＮｗｅｂであることを認識する。このために、中継装置３０Ｃは、ＨＴＴＰリクエストＤの宛先ＩＰアドレスを、ポートフォワード設定テーブルＦＴにて特定ポート番号ＰＮｗｅｂの転送先ＩＰアドレスとして対応付けられた複合機２００のローカルＩＰアドレス「ＬＩＰ＿Ｍ」に変換する。変換後のＨＴＴＰリクエストは、図５（Ｈ）のＨＴＴＰリクエストＥである。
【００７０】
このために、図３にて説明したように（図３の１３０にて：ＹＥＳ、Ｓ１３７、Ｓ１４０）、ＨＴＴＰリクエストＥを受信した複合機２００のＣＰＵ２１０は、図６のＳ３６Ｂにてタイマーを停止し、Ｓ３８Ｂにて、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する。
【００７１】
Ａ−３−３：内部装置からＨＴＴＰリクエストが送信される場合の動作
図７は、第１実施例の設定確認処理の第３のシーケンス図である。このシーケンス図では、内部装置である端末装置１０Ａから送信されるＨＴＴＰリクエストＡを複合機２００が受信したことに応じて上述の設定確認処理が実行される。この場合には、ネットワーク設定として、推奨設定が行われているか非推奨設定が行われているかに関わらずに同一の処理が行われる。
【００７２】
具体的には、図７のＳ１２では、端末装置１０Ａは、ＨＴＴＰリクエストＡを複合機２００に対して送信する。ただし、この場合には、ＨＴＴＰリクエストＡの送信元ＩＰアドレスは、端末装置１０ＢのローカルＩＰアドレス「ＬＩＰ＿Ｔｂ」ではなく、端末装置１０ＡのローカルＩＰアドレス「ＬＩＰ＿Ｔａ」である（図示省略）。
【００７３】
ＨＴＴＰリクエストＡが受信されると（図３のＳ１１０）、図７の例では、ＨＴＴＰリクエストＡの送信元の装置は、端末装置１０Ａであるので、図３のＳ１１５にて、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置は、端末装置１０ＡのローカルＩＰアドレス「ＬＩＰ＿Ｔａ」に基づいて同一ネットワーク内であると判断する（図７のＳ１４Ｃ）。この場合には、ＨＴＴＰリクエストＡの送信元の装置が、内部装置であり、第２種の外部装置である可能性はないために、ＣＰＵ２１０は、図３のＳ１２０〜Ｓ１３５は行われない。したがって、ＣＰＵ２１０は、図３のＳ１４５、Ｓ１５０にて説明したように、ＣＰＵ２１０は、端末装置１０Ａから受信したＨＴＴＰリクエストＡに対するＨＴＴＰレスポンスＣを、端末装置１０Ａに送信し（図７のＳ３６Ｃ）、設定管理サービスを端末装置１０Ｂに対して提供する（図７のＳ３８Ｃ）。
【００７４】
以上説明した第１実施例によれば、外部装置（例えば、端末装置１０Ｂ）から送信されるＨＴＴＰリクエストＡ（図５（Ａ））の受信（図６のＳ１２）に応じて、複合機２００は、複合機２００へのデータ送信を要求するリクエスト送信命令を含むＨＴＴＰリクエストＢ（図５（Ｂ））を、インターネット８０を介して接続されるサーバ３００に対して送信する（図６のＳ１６）。ＣＰＵ２１０は、ＨＴＴＰリクエストＢの送信後に、ＨＴＴＰリクエストＢに応じて送信される特定のデータ、具体的には、ＨＴＴＰリクエストＥ（図５（Ｈ））を、サーバ３００から受信する（図６のＳ３４Ｂ）。ＣＰＵ２１０は、ＨＴＴＰリクエストＥの受信に応じて、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する（図６のＳ３８Ｂ）。この結果、複合機２００がセキュリティ上の問題を有している可能性がある場合、であっても、例えば、上述の非推奨設定が行われている場合であっても、外部装置からＨＴＴＰリクエストＡを受信することを契機として、クライアントとして動作するサーバ３００からＨＴＴＰリクエストＥを受信することで、セキュリティ上の問題を有している可能性を認識できる。したがって、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する処理を適切に実行することができる。
【００７５】
さらに、第１実施例によれば、複合機２００は、ＨＴＴＰリクエストＢの送信後から、カウントされる待機期間ＷＴ内に、ＨＴＴＰリクエストＥが受信される場合に、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する処理を実行する。待機期間ＷＴ内に、ＨＴＴＰリクエストＥが受信された場合には、当該ＨＴＴＰリクエストＥは、インターネット８０を介して送信されたものである可能性が非常に高い。したがって、インターネット８０を介して接続される第２種の外部装置（例えば、第三者の計算機４００）がクライアントとして複合機２００と通信可能な状態にある可能性が高く、セキュリティ上の問題がある可能性が高い。このために、第１実施例によれば、セキュリティ上の問題がある可能性が高い場合に、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する処理を適切に実行することができる。
【００７６】
さらに、上記第１実施例によれば、待機期間ＷＴ内に、ＨＴＴＰリクエストＥが受信されない場合に、ＨＴＴＰリクエストＡに対する応答であるＨＴＴＰレスポンスＣを、ＨＴＴＰリクエストＡの送信元の装置（例えば、端末装置１０Ｂ）に対して送信する（図４のＳ３６）。待機期間ＷＴ内に、ＨＴＴＰリクエストＥが受信されない場合には、インターネット８０を介して接続される第２種の外部装置（例えば、第三者の計算機４００）がクライアントとして複合機２００と通信可能な状態にある可能性は低く、セキュリティ上の問題がある可能性は低い。この結果、セキュリティ上の問題がある可能性は低いことを確認後に、ＨＴＴＰレスポンスＣを行うので、セキュリティを向上することができる。
【００７７】
さらに、第１実施例によれば、複合機２００は、複合機２００にて実行可能なＷＥＢサービス機能を示す特定ポート番号ＰＮｗｅｂ示す番号情報（図５（Ｂ）の指定ポート番号）を含むＨＴＴＰリクエストＢをサーバ３００に送信する（図６のＳ１６）。複合機２００は、該特定ポート番号ＰＮｗｅｂを宛先ポート番号として指定して送信されるＨＴＴＰリクエストＥ（図５（Ｈ））を受信する（図６のＳ３４Ｂ）。非推奨設定の場合には、特定ポートフォワード機能が有効であるので、インターネットを介して接続される第２種の外部装置が、特定ポート番号ＰＮｗｅｂを宛先ポート番号として指定することによって、複合機２００と通信可能である。上記実施例によれば、このような場合であっても、ＨＴＴＰリクエストＥを受信することを契機として、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する処理を適切に実行することができる。
【００７８】
例えば、仮に、サーバ３００から確認用に複合機２００に送信されるＨＴＴＰリクエストの宛先ポート番号に、特定ポート番号ＰＮｗｅｂを指定しないとする。この場合には、中継装置３０Ｃの特定ポートフォワード機能が有効である場合（非推奨設定である場合）であっても、該ＨＴＴＰリクエストは、複合機２００まで到達しない。この結果、非推奨設定が行われていても、非推奨設定が行われていないことを複合機２００が認識できない。上記実施例によれば、このような不都合を抑制することができる。なお、他の非推奨設定として、複合機２００にグローバルＩＰアドレスが割り当てられており、中継装置３０ＣにてＮＡＴやＮＡＰＴなどのアドレス変換機能が動作していないケースがある。このようなケースでは、サーバ３００から確認用に複合機２００に送信されるＨＴＴＰリクエストの宛先ポート番号に、特定ポート番号ＰＮｗｅｂが指定されていなくても、該ＨＴＴＰリクエストは、複合機２００まで到達する。したがって、このような非推奨設定である場合には、ＨＴＴＰリクエストの宛先ポート番号に、特定ポート番号ＰＮｗｅｂが指定されていなくても、複合機２００は、該非推奨設定が行われていることを認識できる。第１実施例によれば、中継装置３０Ｃの特定ポートフォワード機能が有効である場合と、複合機２００にグローバルＩＰアドレスが割り当てられている場合と、のいずれの非推奨設定であっても、該非推奨設定が行われていることを適切に認識することができる。
【００７９】
さらに、上記第１実施例によれば、特定ポート番号ＰＮｗｅｂは、ＨＴＴＰリクエストＡにて指定されている宛先ポート番号である（図５（Ａ））。この結果、第２種の外部装置が、特定ポート番号ＰＮｗｅｂを宛先ポート番号として指定することによって複合機２００と通信可能である場合であっても、特定ポート番号ＰＮｗｅｂを宛先ポート番号として指定するＨＴＴＰリクエストＡを受信することを契機として、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する処理を適切に実行することができる。例えば、第２種の外部装置が、特定ポート番号ＰＮｗｅｂによって示される設定管理サービスを利用することを適切に防止することができる。
【００８０】
さらに、上記第１実施例によれば、複合機２００は、ＨＴＴＰリクエストＡを受信した場合に、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク内の装置であるか否かを判断する（図３のＳ１１５、図４、図６のＳ１４、図７のＳ１４Ｃ）。複合機２００は、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク外の装置である場合に（図３のＳ１１５：ＹＥＳ、図７のＳ１４Ｃ）、ＨＴＴＰレスポンスＣを、ＨＴＴＰリクエストＡの送信元の装置（例えば、端末装置１０Ａ）に対して送信する（図７のＳ３６Ｃ）。この場合には、複合機２００は、ＨＴＴＰリクエストＢをサーバ３００に対して送信しない。複合機２００は、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク外の装置である場合に（図３のＳ１１５：ＮＯ、図４、図６のＳ１４）、ＨＴＴＰリクエストＢをサーバ３００に対して送信する（図４、図６のＳ１６）。この結果、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク内の装置である場合には、速やかに該送信元の装置に、ＨＴＴＰレスポンスＣを送信することができる。従って、同一ネットワーク内の装置（例えば、端末装置１０Ａ）に対して、速やかに設定管理サービスを提供することができる。
【００８１】
以上の説明から解るように、図５（Ａ）のＨＴＴＰリクエストＡは、第１の要求の例であり、図５（Ｂ）のＨＴＴＰリクエストＢは、第２の要求の例であり、端末装置１０Ｂや計算機４００は、第１の外部装置の例であり、サーバ３００は、第２の外部装置と第３の外部装置の例である。
【００８２】
Ｂ．第２実施例
図８は、第２実施例の設定確認処理のフローチャートである。このフローチャートは、図３と同様に、設定確認処理のうち、複合機２００が実行する部分を示している。第２実施例では、Ｓ２１０にて複合機２００のＣＰＵ２１０がＨＴＴＰリクエストＡを受信すると、Ｓ２４５にて、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置に、ＨＴＴＰレスポンスＣを送信し、Ｓ２５０にて、設定管理サービスの提供を開始する。このために、ＨＴＴＰリクエストＡの送信元の装置が、外部装置であるか否かに関わらずに、設定管理サービスの提供が開始される。
【００８３】
Ｓ２４５、Ｓ２５０の処理と並行して、ＣＰＵ２１０は、Ｓ２１５にて、図３のＳ１１５と同様に、ＨＴＴＰリクエストＡの送信元の装置は、同一ネットワーク内の装置であるか否かを判断する。ＨＴＴＰリクエストＡの送信元の装置が、同一ネットワーク内の装置でない場合には（Ｓ２１５：ＮＯ）、換言すれば、ＨＴＴＰリクエストＡの送信元の装置が、外部装置である場合には、ＣＰＵ２１０は、Ｓ２２０に処理を進める。ＨＴＴＰリクエストＡの送信元の装置が、同一ネットワーク内の装置である場合には（Ｓ２１５：ＹＥＳ）、ＣＰＵ２１０は、Ｓ２２０〜Ｓ２４０の処理を行わない。この時点で、並行して行われる設定管理サービスの提供（Ｓ２５０）が終了していない場合には、そのまま継続して実行される。
【００８４】
Ｓ２２０〜Ｓ２３５の処理は、図３のＳ１２０〜Ｓ１３５の処理と同一である。Ｓ２３５にて、ＨＴＴＰリクエストＥを受信することなく、所定の待機期間ＷＴが経過した場合には（Ｓ２３５：ＹＥＳ）、Ｓ２３７、Ｓ２４０の処理は行われない。この時点で、並行して行われる設定管理サービスの提供（Ｓ２５０）が終了していない場合には、そのまま継続して実行される。
【００８５】
Ｓ２３０にて、ＨＴＴＰリクエストＥを受信した場合には（Ｓ２３０：ＹＥＳ）、ＣＰＵ２１０は、は、図３のＳ１３７、Ｓ１４０と同様に、Ｓ２３７にてタイマーを停止し、Ｓ２４０にて、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止する。すなわち、この後の設定管理サービスの提供は禁止される。この時点で、並行して行われる設定管理サービスの提供（Ｓ２５０）が終了していない場合には、直ちに、その提供が中断される。
【００８６】
以上説明した第２実施例によれば、Ｓ２３０にて複合機２００によってＨＴＴＰリクエストＥが受信されるか否かに関わらずに、ＨＴＴＰリクエストＡに対する応答であるＨＴＴＰレスポンスＣが、ＨＴＴＰリクエストＡの送信元の装置に対して送信される（Ｓ２４５）。そして、該ＨＴＴＰレスポンスＣの送信後に、ＨＴＴＰリクエストＥが複合機２００によって受信される場合に（Ｓ２３０：ＹＥＳ）、外部装置からの特定ポート番号ＰＮｗｅｂ宛の通信が禁止される（Ｓ２４０）。この結果、ＨＴＴＰリクエストＡに対するＨＴＴＰレスポンスＣを速やかに送信することができる。この結果、設定管理サービスを提供するクライアントとして想定されている第１種の外部装置（例えば、端末装置１０Ｂ）に対して、速やかに設定管理サービスを提供することができる。そして、ＨＴＴＰリクエストＥが受信された場合には、設定管理サービスの提供が中断されるので、設定管理サービスを提供するクライアントとして想定されていない第２種の外部装置が設定管理サービスを利用することを抑制することができる。
【００８７】
Ｃ．変形例
（１）上記各実施例では、複合機２００から中継装置３０Ｃを経由して送信されるＨＴＴＰリクエストＣを受信する外部装置と、ＨＴＴＰリクエストＤを送信する外部装置とは、ともに同一の装置（サーバ３００）である。これに代えて、ＨＴＴＰリクエストＣを受信する外部装置とＨＴＴＰリクエストＤを送信する外部装置とは異なる装置であっても良い。例えば、一の外部装置は、ＨＴＴＰリクエストＣを受信すると、ＨＴＴＰリクエストＣに含まれる送信元ＩＰアドレスと、指定ポート番号と、を他の外部装置に対して送信する。他の外部装置は、送信元ＩＰアドレスと、指定ポート番号と、を受信すると、これらの情報を用いて、ＨＴＴＰリクエストＤをインターネット８０上に送信しても良い。
【００８８】
（２）上記各実施例では、特定ポート番号ＰＮｗｅｂは、設定管理サービスを提供するＷＥＢサーバ（ＨＴＴＰに準拠したアプリケーション）を示すポート番号である。これに限らず、特定ポート番号ＰＮｗｅｂは、他のサービスを提供する他のアプリケーションを示すポート番号であっても良い。例えば、特定ポート番号は、ＦＴＰ（File Transfer Protocol）に準拠したアプリケーションや、ＩＰＰ（Internet Printing Protocol）に準拠したアプリケーションを示すポート番号であっても良い。一般的には、特定ポート番号は、ＯＳＩ参照モデルのアプリケーション層に対応するプロトコルに準拠したアプリケーションを示すポート番号であることが好ましい。
【００８９】
（３）図３のＳ１４０や図８のＳ２４０では、ＣＰＵ２１０は、セキュリティに関連する特定の処理として、外部機器からの特定ポート番号ＰＮｗｅｂ宛の通信を禁止している。これに代えて、あるいは、これとともに、セキュリティに関連する特定の処理として、他の処理が実行されても良い。例えば、特定ポート番号ＰＮｗｅｂ宛のＨＴＴＰリクエストを受信した場合に、パスワードなどの認証情報を要求し、適切な認証情報が入力される場合に限って、以降の特定ポート番号ＰＮｗｅｂ宛の通信を許容する認証機能を有効に切り替える処理が実行されても良い。また、非推奨設定が行われていることを示すメッセージを含む警告画面を表示部２４０に表示する処理や、該メッセージを含むＥメールを予め登録されているユーザのメールアドレスに送信する処理が、実行されても良い。
【００９０】
（４）複合機２００から送信されるＨＴＴＰリクエストＢや、サーバ３００から送信されるＨＴＴＰリクエストＤは、他のプロトコル、例えば、ＦＴＰに準拠するリクエストであっても良い。用いられるプロトコルは、複合機２００とサーバ３００とのうちの一方の装置をクライアントとし、他方の装置をサーバとして、リクエストを送信可能なプロトコルであれば良い。
【００９１】
（５）複合機２００から送信されるＨＴＴＰリクエストＢは、指定ポート番号（図５（Ａ））を含まなくても良く、サーバ３００から送信されるＨＴＴＰリクエストＤは、宛先ポート番号を指定ポート番号としなくても良い。この場合には、中継装置３０Ｃの特定ポートフォワード機能が有効であるような非推奨設定が行われている場合には、該非推奨設定が行われていることを認識できないが、複合機２００にグローバルＩＰアドレスが割り当てられる非推奨設定が行われている場合には、該非推奨設定が行われていることを適切に認識することができる。
【００９２】
（６）上記各実施例では、ＣＰＵ２１０は、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク内の装置である場合に、ＨＴＴＰリクエストＢをサーバ３００に送信しないが、ＨＴＴＰリクエストＡの送信元の装置が同一ネットワーク内の装置であるか否かに関わらずに、ＨＴＴＰリクエストＢをサーバ３００に送信しても良い。
【００９３】
（７）第２実施例では、ＣＰＵ２１０は、複合機２００から送信されるＨＴＴＰリクエストＡを送信した後において、待機期間ＷＴが経過後に、ＨＴＴＰリクエストＥを受信した場合であっても、セキュリティに関連する特定の処理を実行しても良い。この場合には、待機期間ＷＴのカウントは省略されても良い。
【００９４】
（８）上記各実施例では、通信装置として、複合機２００が採用されているが、単体のスキャナやプリンタ、あるいは、デジタルカメラなどの他の画像処理装置が、通信装置として、採用されても良い。また、画像処理装置に限らず、他の種類の通信装置、例えば、ストレージなどの記憶装置や、パーソナルコンピュータなどが採用されても良い。
【００９５】
（９）サーバ３００は、ネットワークを介して互いに通信可能な複数個の装置（例えば、コンピュータ）を含む、いわゆるクラウドサーバであっても良い。
【００９６】
（１０）上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【００９７】
（１１）本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体（例えば、一時的ではない記録媒体）に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体（コンピュータ読み取り可能な記録媒体）に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやＣＤ−ＲＯＭのような携帯型の記録媒体に限らず、各種ＲＯＭ等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
【００９８】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【００９９】
１０Ａ〜１０Ｃ...端末装置、３０Ａ〜３０Ｃ...中継装置、８０...インターネット、２００...複合機、２１０...ＣＰＵ、２２０...揮発性記憶装置、２３０...不揮発性記憶装置、２４０...表示部、２５０...操作部、２７０...通信部、２８０...スキャナ部、２９０...プリンタ部、３００...サーバ、３１０...ＣＰＵ、３２０...揮発性記憶装置、３３０...不揮発性記憶装置、３７０...通信部、４００...計算機、１０００...システム、Ｎ１、Ｎ２...ローカルエリアネットワーク、ＳＩ...設定情報データベース、ＤＩ...宛先情報データベース、ＩＮ...組織内ネットワーク、ＩＴ...インターネット、ＦＴ...ポートフォワード設定テーブル、ＰＧ１...コンピュータプログラム、ＰＧ２...サーバプログラム
【図１】
2018088645.tif 000003
【図２】
2018088645.tif 000004
【図３】
2018088645.tif 000005
【図４】
2018088645.tif 000006
【図５】
2018088645.tif 000007
【図６】
2018088645.tif 000008
【図７】
2018088645.tif 000009
【図８】
2018088645.tif 000010