JP6205013B1 - Application usage system - Google Patents

Application usage system Download PDF

Info

Publication number
JP6205013B1
JP6205013B1 JP2016106959A JP2016106959A JP6205013B1 JP 6205013 B1 JP6205013 B1 JP 6205013B1 JP 2016106959 A JP2016106959 A JP 2016106959A JP 2016106959 A JP2016106959 A JP 2016106959A JP 6205013 B1 JP6205013 B1 JP 6205013B1
Authority
JP
Japan
Prior art keywords
server
terminal
application
local terminal
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016106959A
Other languages
Japanese (ja)
Other versions
JP2017215630A (en
Inventor
時彦 中村
時彦 中村
勝 秋月
勝 秋月
小島 敏宏
敏宏 小島
Original Assignee
ジェイズ・コミュニケーション株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ジェイズ・コミュニケーション株式会社 filed Critical ジェイズ・コミュニケーション株式会社
Priority to JP2016106959A priority Critical patent/JP6205013B1/en
Application granted granted Critical
Publication of JP6205013B1 publication Critical patent/JP6205013B1/en
Publication of JP2017215630A publication Critical patent/JP2017215630A/en
Active legal-status Critical Current

Links

Images

Abstract

【課題】ローカル端末がインターネットに直接接続することによる情報漏洩及びマルウェア等の悪意のあるプログラムの影響を防止する。【解決手段】アプリケーション利用システム1は、インターネット30に接続されたサーバ10と、ローカルネットワークを介してサーバ10に接続されたローカル端末20とを備える。サーバ10は、ローカル端末20がアプリケーションプログラム18の起動を要求したとき仮想端末14を新規に生成し、仮想端末14内でアプリケーションプログラム18を起動させてアプリケーションプログラム18の画面出力をローカル端末20に転送し、ローカル端末20がアプリケーションプログラム18を終了させたとき仮想端末14を削除する。【選択図】図3An information leakage and a malicious program such as malware caused by a local terminal connecting directly to the Internet are prevented. An application using system includes a server connected to the Internet and a local terminal connected to the server via a local network. The server 10 newly generates a virtual terminal 14 when the local terminal 20 requests to start the application program 18, starts the application program 18 in the virtual terminal 14, and transfers the screen output of the application program 18 to the local terminal 20. When the local terminal 20 ends the application program 18, the virtual terminal 14 is deleted. [Selection] Figure 3

Description

本発明は、アプリケーション利用システムに関し、特に、ローカル端末によるアプリケーションの利用を通じたインターネットアクセスを無害化するシステムに関するものである。   The present invention relates to an application use system, and more particularly to a system that renders Internet access harmless through use of an application by a local terminal.

近年、社内のローカル端末がマルウェア等の悪意のあるプログラムに感染することにより企業内情報が流出するケースが問題となっている。またコンピュータウィルスによってはローカル端末が正しく動作しなくなる場合があり、各企業においてセキュリティ対策は重要な問題となっている。   In recent years, there has been a problem that in-house information leaks due to infection of a malicious terminal such as malware in a company's local terminal. Also, depending on the computer virus, the local terminal may not operate correctly, and security measures are an important issue in each company.

セキュリティを考慮した企業内のコンピュータシステムとしてシンクライアントシステムが知られている(例えば非特許文献1、2参照)。シンクライアントシステムは、プログラムの実行やデータの保存といった機能をクライアント端末から切り離し、サーバに集中させるアーキテクチャのことを言う。   A thin client system is known as an in-house computer system in consideration of security (for example, see Non-Patent Documents 1 and 2). A thin client system is an architecture that separates functions such as program execution and data storage from a client terminal and concentrates them on a server.

シンクライアントの実装方式は、「ネットワークブート型」と「画面転送型」の2種類に大別される。ネットワークブート型は文字通りネットワークブートの仕組みを利用した方式であり、サーバに保存したイメージファイルを端末がネットワーク経由でダウンロードしてOSやアプリケーションを実行する。一方、画面転送型は、OSやアプリケーションをサーバ側で実行し、画面出力を端末に転送する方式である。サーバと端末との間では、画面情報と操作情報だけがやり取りされ、画面情報はイメージファイルに比べて圧倒的にサイズが小さいので、外出先からのリモートアクセスも可能である。   Thin client implementation methods are roughly classified into two types: “network boot type” and “screen transfer type”. The network boot type is a method that literally uses a network boot mechanism, in which a terminal downloads an image file stored on a server via a network and executes an OS or an application. On the other hand, the screen transfer type is a method in which an OS or application is executed on the server side and screen output is transferred to a terminal. Only the screen information and the operation information are exchanged between the server and the terminal, and the screen information is overwhelmingly smaller in size than the image file, so that remote access from outside is also possible.

画面転送型は、「サーバーベース方式」、「ブレードPC方式」、「VDI(Virtual Desktop Infrastructure)方式」の3タイプに分類できる。このうち、サーバーベース方式は、サーバにマルチユーザアクセスのアプリケーションをインストールしておき、複数のユーザで共同利用する方式であり、ブレードPC方式は、物理PC(ブレードPC)をユーザごとに割り当てておき、ユーザが自らに紐づけられた物理PCをネットワーク経由で操作する方式である。VDI方式は、物理PCではなく仮想マシンをユーザごとに割り当てる方式であり、1台の物理サーバに複数台の仮想マシンを集約できるので、ハードウェアコストを低減することができる。   The screen transfer type can be classified into three types: “server-based method”, “blade PC method”, and “VDI (Virtual Desktop Infrastructure) method”. Among these, the server-based method is a method in which an application for multi-user access is installed on a server and shared by a plurality of users, and the blade PC method assigns a physical PC (blade PC) to each user. In this method, a user operates a physical PC associated with the user via a network. The VDI method is a method of assigning a virtual machine instead of a physical PC for each user, and a plurality of virtual machines can be aggregated on one physical server, so that the hardware cost can be reduced.

シンクライアントシステムに関し、例えば特許文献1には、複数の端末がセッション管理装置を介してデスクトップ部に接続可能なシステムが記載されている。セッション管理装置は、シンクライアントOSが起動する複数の仮想マシンを有するハイパーバイザー部と、端末と仮想マシンとを接続するネットワーク部と、端末にネットワーク部内の通信経路を割り当てる制御部とを備えており、端末はデスクトップ部の遠隔操作が可能である。   Regarding the thin client system, for example, Patent Document 1 describes a system in which a plurality of terminals can be connected to a desktop unit via a session management device. The session management apparatus includes a hypervisor unit having a plurality of virtual machines that are started by the thin client OS, a network unit that connects the terminal and the virtual machine, and a control unit that allocates a communication path in the network unit to the terminal. The terminal can remotely control the desktop unit.

特開2014−120033号公報JP 2014-120033 A

しかしながら、従来のシンクライアントシステムでは、ローカル端末を含めた企業内システム全体のセキュリティが十分に高いとは言えず、さらなる改善が望まれている。   However, in the conventional thin client system, it cannot be said that the security of the entire corporate system including the local terminal is sufficiently high, and further improvement is desired.

したがって、本発明の目的は、ローカル端末がインターネットに直接接続することによる情報漏洩及びマルウェア等の悪意のあるプログラムの影響を防止することが可能なアプリケーション利用システムを提供することにある。   Accordingly, an object of the present invention is to provide an application utilization system capable of preventing information leakage due to a local terminal directly connecting to the Internet and the influence of malicious programs such as malware.

上記課題を解決するため、本発明によるアプリケーション利用システムは、インターネットに接続されたサーバと、ローカルネットワークを介して前記サーバに接続されたローカル端末とを備え、前記サーバは、前記ローカル端末がクライアントプログラムを通じてアプリケーションプログラムの起動を要求したとき前記仮想端末を新規に生成し、前記仮想端末内で前記アプリケーションプログラムを起動して前記アプリケーションプログラムの画面出力を前記ローカル端末に転送し、前記ローカル端末が前記クライアントプログラムを通じて前記アプリケーションプログラムの終了を要求したとき前記仮想端末を削除することを特徴とする。   In order to solve the above problems, an application utilization system according to the present invention includes a server connected to the Internet and a local terminal connected to the server via a local network, and the server includes a client program that is connected to the local terminal. The virtual terminal is newly generated when the application program is requested to be started through the virtual terminal, the application program is started in the virtual terminal, and the screen output of the application program is transferred to the local terminal. The virtual terminal is deleted when the termination of the application program is requested through the program.

本発明によれば、ローカル端末によるアプリケーションプログラムを通じたインターネットアクセスがサーバ内の仮想端末を介して行われ、ローカル端末側でのアプリケーションプログラムの起動/終了に連動して仮想端末が作成/削除されるので、悪意のあるプログラムが実行されたとしてもその影響の範囲は仮想端末内に留まり、次回以降は常にクリーンな環境を提供することができる。したがって、ローカル端末のウィルス感染等を回避することができ、インターネットセキュリティの向上を図ることができる。   According to the present invention, the Internet access through the application program by the local terminal is performed via the virtual terminal in the server, and the virtual terminal is created / deleted in conjunction with the activation / termination of the application program on the local terminal side. Therefore, even if a malicious program is executed, the range of the effect remains in the virtual terminal, and a clean environment can be always provided after the next time. Therefore, virus infection of the local terminal can be avoided and Internet security can be improved.

本発明において、前記サーバは、コンテナ型の仮想端末を生成し、コンテナ内で前記アプリケーションプログラムを自動起動することが好ましい。この構成によれば、複数の仮想端末を相互に分離してセキュリティを高めることができる。また、仮想マシンやOSのエミュレートを行わないので仮想端末の生成及び削除が容易であり、OSレベルでの仮想化によってサーバのオーバーヘッドを大幅に低減することができる。   In the present invention, it is preferable that the server generates a container-type virtual terminal and automatically starts the application program in the container. According to this configuration, it is possible to increase security by separating a plurality of virtual terminals from each other. In addition, since virtual machines and OSs are not emulated, virtual terminals can be easily created and deleted, and server overhead can be greatly reduced by virtualization at the OS level.

本発明において、前記サーバは、マスターサーバと複数のスレーブサーバとを含み、前記マスターサーバは、前記ローカル端末が前記クライアントプログラムを通じて前記アプリケーションプログラムの起動を要求したとき、前記ローカル端末を使用するユーザの属性情報及び各スレーブサーバの属性情報及びステータス情報に基づいて前記ローカル端末に最適なスレーブサーバを決定し、当該スレーブサーバに対して前記仮想端末の作成命令を行うと共に、前記ローカル端末に接続先情報を返信し、前記仮想端末の作成命令を受けたスレーブサーバは、前記仮想端末を新規に生成し、前記ローカル端末の前記クライアントプログラムは、前記接続先情報に示された前記スレーブサーバ内の前記仮想端末に接続することが好ましい。この構成によれば、システムの規模が大きくなって非常に多くの仮想端末を取り扱う場合であっても、リソースを有効利用してアプリケーションサービスを効率良く提供することができる。   In the present invention, the server includes a master server and a plurality of slave servers, and when the local terminal requests activation of the application program through the client program, the master server uses a user who uses the local terminal. Based on the attribute information and the attribute information and status information of each slave server, the optimum slave server for the local terminal is determined, the virtual server creation command is issued to the slave server, and connection destination information is sent to the local terminal. And the slave server that has received the virtual terminal creation command newly generates the virtual terminal, and the client program of the local terminal transmits the virtual server in the slave server indicated in the connection destination information. It is preferable to connect to a terminal. According to this configuration, even when the scale of the system is large and a large number of virtual terminals are handled, application services can be efficiently provided by effectively using resources.

本発明において、前記ステータス情報は、CPU使用率、メモリ使用率、及び仮想端末の起動数から選ばれた少なくとも一つの情報を含み、前記属性情報は、アプリケーション種別、業務種別、及びグループ名から選ばれた少なくとも一つの情報を含むことが好ましい。   In the present invention, the status information includes at least one information selected from a CPU usage rate, a memory usage rate, and the number of activated virtual terminals, and the attribute information is selected from an application type, a business type, and a group name. Preferably, at least one piece of information is included.

本発明において、前記アプリケーションプログラムはウェブブラウザであることが好ましい。近年、外部サイトへのアクセスを通じてローカル端末が危険にさらされる機会が増加しており、ウェブブラウザはセキュリティ対策を最も強化すべきアプリケーションプログラムの一つである。ローカル端末が仮想端末を介してウェブサイトの閲覧を実施する本システムによれば、ローカル端末をインターネットから分離することができ、ウェブアクセスを通じた情報漏洩等を回避することができる。また、ユーザがローカル端末側でブラウザ閲覧を開始しようとした時点でサーバが仮想端末を新規に生成し、前記ローカル端末側でブラウザ閲覧を終了した時点でサーバが仮想端末を削除するので、マルウェア等の影響を仮想端末内に留めることができ、ローカル端末には常にクリーンな環境を提供することができる。   In the present invention, the application program is preferably a web browser. In recent years, opportunities for local terminals to be compromised through access to external sites are increasing, and web browsers are one of the application programs whose security measures should be strengthened the most. According to the present system in which a local terminal browses a website through a virtual terminal, the local terminal can be separated from the Internet, and information leakage through web access can be avoided. In addition, when the user tries to start browsing the browser on the local terminal side, the server newly generates a virtual terminal, and when the browser ends browsing on the local terminal side, the server deletes the virtual terminal. Therefore, the local terminal can always be provided with a clean environment.

本発明によれば、ローカル端末がインターネットに直接接続することによる情報漏洩及びマルウェア等の悪意のあるプログラムの影響を防止することが可能なアプリケーション利用システムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, the application utilization system which can prevent the influence of malicious programs, such as information leakage by a local terminal connecting directly to the internet, and malware, can be provided.

図1は、本発明の第1の実施の形態によるアプリケーション利用システムの構成を概略的に示すブロック図である。FIG. 1 is a block diagram schematically showing the configuration of an application utilization system according to the first embodiment of the present invention. 図2は、サーバ10の構造を階層的に示すブロック図である。FIG. 2 is a block diagram showing the structure of the server 10 in a hierarchical manner. 図3は、アプリケーション利用システム1の動作を説明するための模式図である。FIG. 3 is a schematic diagram for explaining the operation of the application utilization system 1. 図4は、本発明の第2の実施の形態によるアプリケーション利用システム2の構成を示すブロック図である。FIG. 4 is a block diagram showing the configuration of the application utilization system 2 according to the second embodiment of the present invention.

以下、添付図面を参照しながら、本発明の好ましい実施の形態について詳細に説明する。   Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

図1は、本発明の第1の実施の形態によるアプリケーション利用システムの構成を概略的に示すブロック図である。   FIG. 1 is a block diagram schematically showing the configuration of an application utilization system according to the first embodiment of the present invention.

図1に示すように、このアプリケーション利用システム1は、インターネット30及びローカルネットワーク40の両方に接続されたサーバ10と、ローカルネットワーク40を介してサーバ10に接続された複数のローカル端末20とで構成されている。ローカル端末20はインターネット30に直接接続されていないが、サーバ10を介してインターネット30に接続可能である。   As shown in FIG. 1, the application utilization system 1 includes a server 10 connected to both the Internet 30 and the local network 40, and a plurality of local terminals 20 connected to the server 10 via the local network 40. Has been. The local terminal 20 is not directly connected to the Internet 30 but can be connected to the Internet 30 via the server 10.

サーバ10は内部の仮想端末を通じて各ローカル端末20にアプリケーションサービスを提供するアプリケーションサーバであり、各ローカル端末20がインターネットに直接アクセスすることを阻止するセキュリティサーバとしての役割も果たすものである。サーバ10にはローカル端末20が使用する各種アプリケーションプログラムが用意されているが、その代表例はウェブブラウザである。   The server 10 is an application server that provides application services to each local terminal 20 through an internal virtual terminal, and also serves as a security server that prevents each local terminal 20 from directly accessing the Internet. Various application programs used by the local terminal 20 are prepared in the server 10. A typical example is a web browser.

本実施形態において、サーバ10はコンテナ型のデスクトップ仮想化技術を通じてローカル端末20にアプリケーションサービスを提供する。サーバ10内の制御プログラムは「コンテナ」と呼ばれる仮想端末(ユーザ空間)を管理しており、ローカル端末20からの要求に応じてコンテナを生成し、コンテナ内でユーザプロセス(アプリケーションプログラム)を実行し、実行画面をローカル端末20に転送する。したがって、ローカル端末20はサーバ10側でプログラムが実行されていることを意識することなくアプリケーションサービスを利用することができる。   In this embodiment, the server 10 provides an application service to the local terminal 20 through a container-type desktop virtualization technology. The control program in the server 10 manages a virtual terminal (user space) called “container”, generates a container in response to a request from the local terminal 20, and executes a user process (application program) in the container. The execution screen is transferred to the local terminal 20. Therefore, the local terminal 20 can use the application service without being aware that the program is being executed on the server 10 side.

図2は、サーバ10の構造を階層的に示すブロック図である。   FIG. 2 is a block diagram showing the structure of the server 10 in a hierarchical manner.

図2に示すように、サーバ10は例えばLinux(登録商標)サーバであり、物理マシン11上で稼働するホストOS12と、ホストOS12上で動作するコンテナ管理用の制御プログラム(コンテナ管理ソフトウェア)13とを有し、ホストOS12上で動作するユーザプロセス15は対応するコンテナ14内に閉じ込められている。代表的なコンテナ管理ソフトウェアはDOCKER(登録商標)である。   As shown in FIG. 2, the server 10 is, for example, a Linux (registered trademark) server, and includes a host OS 12 operating on the physical machine 11, a container management control program (container management software) 13 operating on the host OS 12, and And the user process 15 operating on the host OS 12 is confined in the corresponding container 14. A typical container management software is DOCKER®.

ホストOS12の内部は、物理リソースを管理する「カーネル空間」と、ユーザプロセスを実行する「ユーザ空間」とに分けられ、コンテナ型の仮想化では、ユーザ空間を複数に分けてそれぞれのユーザプロセスから見えるリソースを制限する。このように、単一のユーザプロセス、あるいはいくつかのユーザプロセスをまとめて閉じ込めたユーザ空間が「コンテナ」である。   The inside of the host OS 12 is divided into a “kernel space” for managing physical resources and a “user space” for executing user processes. In container-type virtualization, a user space is divided into a plurality of user processes. Limit the resources that are visible. Thus, a user space in which a single user process or several user processes are confined together is a “container”.

コンテナ型の仮想化において、すべてのプロセスはサーバ10にインストールされたホストOS12上で直接動作する。コンテナ内のプロセスは実際の貨物輸送のコンテナのように隔離された空間に入っているので、あるコンテナの内部から他のコンテナの内部を見ることはできない。この隔離された空間を作り出すのはホストOSのカーネルの機能である。ホストOSを通して使用できるコンピュータのリソースをコンテナごとに隔離して、ホストOS上で直接動作するプロセスや他のコンテナから独立した空間を作り出すことにより、リソースが分割、分配、制限される。   In container-type virtualization, all processes operate directly on the host OS 12 installed in the server 10. Since the process in a container is in an isolated space like a container for actual freight transportation, the inside of one container cannot be seen from the inside of another container. It is a function of the kernel of the host OS that creates this isolated space. By isolating the computer resources that can be used through the host OS for each container and creating a space that is independent of processes and other containers that operate directly on the host OS, the resources are divided, distributed, and restricted.

ハイパーバイザー型では仮想的なハードウェアの環境が作り出されるのに比べて、コンテナ型では独立した仮想的なOSの環境が作り出されるので、「OSレベルの仮想化」とも呼ばれる。すなわち、コンテナ型の仮想化ではカーネルがプロセスを直接操作して隔離された空間を作り出すので、コンピュータ上で動作するOSは一つだけある。最低でも二つのOS(ホストOSとゲストOS)が動作する必要のあるハイパーバイザー型に比べると、多数のコンテナを作成しても消費するリソースが少なくて済むため、高密度化が実現可能である。また隔離された空間を作るだけでよく、ハードウェアの仮想化が不要であるため、オーバーヘッドを大幅に削減することができる。   Since the hypervisor type creates a virtual hardware environment, the container type creates an independent virtual OS environment, and is also referred to as “OS level virtualization”. That is, in the container type virtualization, the kernel directly operates the process to create an isolated space, so there is only one OS that runs on the computer. Compared to a hypervisor type in which at least two OSes (host OS and guest OS) need to operate, even if a large number of containers are created, less resources are consumed, so higher density can be realized. . Moreover, it is only necessary to create an isolated space, and hardware virtualization is unnecessary, so overhead can be greatly reduced.

さらに、コンテナの起動は、OSから見ると単にプロセスが起動しているだけであるため、通常のプロセスが起動するのとほとんど差がなく、非常に速く起動することができる。本発明はこのようなコンテナ型の仮想端末の特徴を活かしてアプリケーションの起動/終了に連動したコンテナの新規作成/削除を実現している。   Furthermore, since the process is simply activated from the viewpoint of the OS, there is almost no difference from the activation of the normal process, and the container can be activated very quickly. The present invention realizes the new creation / deletion of a container linked with the activation / termination of an application by taking advantage of the characteristics of such a container type virtual terminal.

コンテナ型ではハイパーバイザー型のようにinitが最初に起動してから各種デーモンが起動する必要がなく、単にプロセスを隔離した環境を作り出せばコンテナを作成できるので、例えばウェブブラウザだけが起動しているといったような、コンテナの中に一つだけプロセスが存在する環境を作成することができ、アプリケーションのみの起動が可能である。このような環境は「アプリケーションコンテナ」と呼ばれる。もちろんinitを最初に起動して通常のOSが起動するのと同じような環境を作成することもでき、この環境は「システムコンテナ」と呼ばれる。   In the container type, it is not necessary to start various daemons after starting init first like the hypervisor type, and you can create a container simply by creating an environment that isolates processes, so only the web browser is started, for example An environment in which only one process exists in a container can be created, and only an application can be started. Such an environment is called an “application container”. Of course, it is possible to create an environment similar to that of starting a normal OS by starting init first, and this environment is called a “system container”.

システム管理プログラム16は管理者に対してアプリケーション利用システム1の設定全般を実施するための管理画面を提供する。本管理画面からはユーザアカウントの追加削除など各種の設定が行える。さらに、サーバ10のCPU使用率、メモリ使用率、起動コンテナ数を始めとしたリソース情報のほか、コンテナが正常に生成/削除されたかのログ情報を一元的に管理、閲覧する機能を提供する。これによりシステムの管理運用や障害発生時のトラブル解析を容易にする。   The system management program 16 provides a management screen for performing general settings of the application using system 1 to the administrator. Various settings such as adding and deleting user accounts can be performed from this management screen. Furthermore, in addition to resource information such as the CPU usage rate, memory usage rate, and the number of activated containers of the server 10, a function for centrally managing and browsing log information indicating whether the container has been normally generated / deleted is provided. This facilitates system management and trouble analysis when a failure occurs.

図3は、アプリケーション利用システム1の動作を説明するための模式図である。   FIG. 3 is a schematic diagram for explaining the operation of the application utilization system 1.

図3に示すように、ローカル端末20にはクライアントプログラム21がインストールされている。ローカル端末20でクライアントプログラム21が起動されると(ステップS1)、ウェブブラウザを起動するための処理が開始され、サーバ10に接続要求が送信される(ステップS2)。サーバ10の制御プログラム13は、データベース17内のアカウント情報17aに基づいてユーザ認証を行い、ローカル端末20の接続要求が許可されると(ステップS3)、事前に用意されたテンプレート17bをベースにしてユーザ個別のコンテナ14を新規に作成する(ステップS4)。通常、一つのウェブブラウザには一つのコンテナ14が割り当てられる。またアカウント情報17aに基づいて、ウェブブラウザのユーザプロファイルの保存の可否、コピー&ペーストの可否、起動可能な曜日や時間などがユーザごとに設定される。   As shown in FIG. 3, a client program 21 is installed in the local terminal 20. When the client program 21 is activated on the local terminal 20 (step S1), processing for activating the web browser is started, and a connection request is transmitted to the server 10 (step S2). The control program 13 of the server 10 performs user authentication based on the account information 17a in the database 17, and when a connection request for the local terminal 20 is permitted (step S3), the template 17b prepared in advance is used as a base. A user-specific container 14 is newly created (step S4). Usually, one container 14 is allocated to one web browser. Further, based on the account information 17a, whether or not to save the user profile of the web browser, whether or not to copy and paste, the start day of the week and the time, etc. are set for each user.

コンテナ14内では指定のアプリケーションプログラムであるウェブブラウザ18が自動起動し、ウェブブラウザ18の画面出力が描画情報としてクライアントプログラム21に転送される(ステップS5)。したがって、ローカル端末20のディスプレイにはウェブブラウザ18の出力画面が表示され、ユーザはあたかもローカル端末20上で実行されているのと同じ使い勝手でウェブブラウザ18を利用することができ、ウェブサイトの閲覧が可能である(ステップS6)。またコンテナ14はローカル端末20からの操作情報に従って動作し(ステップS7)、ローカル端末20の代わりにウェブサイト(ウェブサーバ)へのアクセスを行うので、ローカル端末20をインターネット30から隔離することができる。   In the container 14, the web browser 18, which is a designated application program, is automatically activated, and the screen output of the web browser 18 is transferred as drawing information to the client program 21 (step S5). Therefore, the output screen of the web browser 18 is displayed on the display of the local terminal 20, and the user can use the web browser 18 with the same usability as that executed on the local terminal 20, so that the user can browse the website. Is possible (step S6). The container 14 operates according to the operation information from the local terminal 20 (step S7), and accesses the website (web server) instead of the local terminal 20, so that the local terminal 20 can be isolated from the Internet 30. .

コンテナ14内の監視プログラム19はウェブブラウザ18の状態を常に監視しており(ステップS8)、ローカル端末20側でクライアントプログラム21が終了するとコンテナ14内のウェブブラウザ18を終了し、ウェブブラウザ18の終了をもってコンテナ14自体の削除を実行する(ステップS9)。その際、ウェブブラウザ18のブックマークや拡張機能などの情報(ユーザプロファイル17c)はデータベース17のユーザプロファイル保管領域に保存され、コンテナ14の新規生成時に利用される。   The monitoring program 19 in the container 14 constantly monitors the state of the web browser 18 (step S8). When the client program 21 is terminated on the local terminal 20 side, the web browser 18 in the container 14 is terminated, and the web browser 18 Upon completion, the container 14 itself is deleted (step S9). At this time, information (user profile 17 c) such as bookmarks and extended functions of the web browser 18 is stored in the user profile storage area of the database 17 and used when a new container 14 is generated.

このように、ローカル端末20側でウェブブラウザ18が起動される度に完全に初期状態のコンテナ14が作成され、ウェブブラウザ18の終了時にはコンテナ14が削除されるので、悪意のあるプログラムが実行された場合でもその影響はコンテナ14の範囲内に留まる上、次回以降は常にクリーンな環境が提供される。   Thus, every time the web browser 18 is started on the local terminal 20 side, the container 14 in the initial state is created completely. When the web browser 18 is terminated, the container 14 is deleted, so that a malicious program is executed. Even if it happens, the effect remains within the range of the container 14, and a clean environment is always provided after the next time.

従来のハイパーバイザー型のシステムは、ハイパーバイザー上に各ユーザの仮想デスクトップ(仮想端末)を事前に準備しておき、たとえ利用されていなくても仮想デスクトップが常時起動している形態であり、利用時にその都度、仮想端末の生成/削除はしない。しかし、本実施形態では、ウェブブラウザの起動/終了と連動して仮想端末を作成/削除するので、悪意のあるプログラムが実行された場合でもその影響の範囲は仮想端末内に留まり、次回以降は常にクリーンな環境が提供される。すなわち、ローカル端末20が悪意のあるプログラムの影響を受けることを確実に回避することができ、ネットワークセキュリティの向上を図ることができる。   A conventional hypervisor type system is a form in which a virtual desktop (virtual terminal) of each user is prepared in advance on the hypervisor, and the virtual desktop is always activated even if it is not used. Sometimes the virtual terminal is not created / deleted. However, in this embodiment, the virtual terminal is created / deleted in conjunction with the activation / termination of the web browser, so even when a malicious program is executed, the scope of the effect remains within the virtual terminal, and from the next time onwards. A clean environment is always provided. That is, it is possible to reliably avoid the local terminal 20 from being affected by a malicious program, and to improve network security.

以上説明したように、本実施形態によるアプリケーション利用システム1は、ローカル端末20が使用するウェブブラウザ18をサーバ10上の仮想端末内で実行し、ウェブブラウザ18の画面出力をローカル端末20に転送することで、ローカル端末20をインターネットから分離することができ、セキュアなインターネット接続環境を提供することができる。特にコンテナ型の仮想化技術を利用して仮想端末を生成するため、従来のVDI方式に比べて処理オーバーヘッドを削減することができ、またや初期導入コストを抑えることができる。すなわち、本実施形態によれば、セキュアな環境下で使用できるサーバ型セキュアブラウザを提供することができる。   As described above, the application utilization system 1 according to the present embodiment executes the web browser 18 used by the local terminal 20 in the virtual terminal on the server 10 and transfers the screen output of the web browser 18 to the local terminal 20. Thus, the local terminal 20 can be separated from the Internet, and a secure Internet connection environment can be provided. In particular, since a virtual terminal is generated using a container-type virtualization technology, the processing overhead can be reduced as compared with the conventional VDI method, and the initial introduction cost can be suppressed. That is, according to this embodiment, a server-type secure browser that can be used in a secure environment can be provided.

また、本実施形態によるアプリケーション利用システム1は、ローカル端末20がクライアントプログラムを通じてウェブブラウザ18の起動を要求したときにサーバ10が仮想端末を新規に生成し、ローカル端末20がウェブブラウザ18の終了を要求したときサーバ10が仮想端末を削除するので、マルウェア等の悪意のあるプログラムが実行された場合でもその影響は限定的であり、ローカル端末20には常にクリーンなインターネット環境を提供することができる。   Further, in the application usage system 1 according to the present embodiment, when the local terminal 20 requests activation of the web browser 18 through the client program, the server 10 newly generates a virtual terminal, and the local terminal 20 terminates the web browser 18. Since the server 10 deletes the virtual terminal when requested, even if a malicious program such as malware is executed, the influence is limited, and the local terminal 20 can always be provided with a clean Internet environment. .

図4は、本発明の第2の実施の形態によるアプリケーション利用システムの構成を示すブロック図である。   FIG. 4 is a block diagram showing the configuration of an application utilization system according to the second embodiment of the present invention.

図4に示すように、このアプリケーション利用システム2は、図1におけるサーバ10がマスターサーバ10Aと複数のスレーブサーバ10Bとで構成されており、各スレーブサーバ10Bの利用状況やローカル端末20を使用するユーザの属性などに基づいて最適なスレーブサーバ10Bを決定し、このスレーブサーバ10Bにコンテナ14を作成するように構成されたものである。   As shown in FIG. 4, in the application usage system 2, the server 10 in FIG. 1 includes a master server 10A and a plurality of slave servers 10B, and uses the usage status of each slave server 10B and the local terminal 20. The optimum slave server 10B is determined based on user attributes and the like, and the container 14 is created in the slave server 10B.

ローカル端末20でクライアントプログラム21が起動されると、まずマスターサーバ10Aに接続要求が送信される(ステップS11)。マスターサーバ10Aは、各スレーブサーバ10Bのステータス情報(CPU使用率、メモリ使用率、起動コンテナ数等)、属性情報(アプリケーション種別、業務種別、グループ名等)を予め収集して保持しており、接続要求を受けたマスターサーバ10Aはユーザの属性情報は各スレーブサーバ10Bの情報を参照して指定された条件のもとで最適なスレーブサーバ10Bを決定する。そして、このスレーブサーバ10Bに対してコンテナ作成命令を行うと共に、クライアントプログラム21に接続先情報を返信する(ステップS12,S13)。   When the client program 21 is activated on the local terminal 20, a connection request is first transmitted to the master server 10A (step S11). The master server 10A collects and holds in advance status information (CPU usage rate, memory usage rate, number of activated containers, etc.) and attribute information (application type, business type, group name, etc.) of each slave server 10B. Upon receiving the connection request, the master server 10A determines the optimum slave server 10B under the conditions specified by referring to the information of each slave server 10B as the user attribute information. Then, a container creation command is issued to the slave server 10B, and connection destination information is returned to the client program 21 (steps S12 and S13).

属性情報における「アプリケーション種別」とは、ウェブブラウザの他にメールソフトなど様々なアプリケーションプログラムを対象とする場合に用いられる識別情報であり、各アプリケーションの処理に適したサーバを選択するための判断基準となるものである。また「業務種別」とは、例えば営業、経理、設計開発などであり、「グループ名」とは、例えばユーザの所属部門、所属事業所などである。ユーザの属性情報は、ユーザ認証時にデータベース17から取得することができる。   The “application type” in the attribute information is identification information used when targeting various application programs such as mail software in addition to the web browser, and a criterion for selecting a server suitable for processing of each application It will be. The “business type” is, for example, sales, accounting, design and development, and the “group name” is, for example, a user's department or office. User attribute information can be acquired from the database 17 during user authentication.

コンテナの作成命令を受けたスレーブサーバ10Bは、コンテナを新規に生成し、コンテナ内でウェブブラウザを自動起動する。またクライアントプログラム21は、返信された接続先情報に示されたスレーブサーバ10B上のコンテナに接続し(ステップS14)、コンテナ14内で自動起動したウェブブラウザの画面出力を描画情報として受信する(ステップS15)。コンテナ14内の監視プログラム19はウェブブラウザの状態を常に監視しており、ウェブブラウザの終了をもってコンテナ自体の削除を実行する。   Receiving the container creation command, the slave server 10B newly generates a container and automatically starts a web browser in the container. The client program 21 connects to the container on the slave server 10B indicated by the returned connection destination information (step S14), and receives the screen output of the web browser automatically started in the container 14 as drawing information (step S14). S15). The monitoring program 19 in the container 14 always monitors the state of the web browser, and deletes the container itself when the web browser is terminated.

以上説明したように、本実施形態によるアプリケーション利用システム2は、ローカル端末20からの要求に応答してコンテナを作成する際、複数のサーバの中からローカル端末20に最適なサーバを選択してコンテナを作成するので、システム規模が大きくなって非常に多くのコンテナを取り扱う場合であっても、リソースを有効利用してアプリケーションサービスを効率良く提供することができる。   As described above, when the application utilization system 2 according to the present embodiment creates a container in response to a request from the local terminal 20, it selects the optimum server for the local terminal 20 from the plurality of servers and selects the container. Therefore, even when the system scale is increased and a very large number of containers are handled, application services can be efficiently provided by effectively using resources.

以上、本発明の好ましい実施形態について説明したが、本発明は、上記の実施形態に限定されることなく、本発明の主旨を逸脱しない範囲で種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることはいうまでもない。   The preferred embodiments of the present invention have been described above, but the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the spirit of the present invention. Needless to say, it is included in the range.

例えば、上記実施形態においては、仮想端末内で実行されるアプリケーションプログラムがウェブブラウザである場合を例に挙げたが、例えばメールソフトなどの他のアプリケーションプログラムであってもよく、インターネットアクセスを通じてマルウェア等の影響を受けるおそれがある種々のアプリケーションプログラムを対象とすることができる。   For example, in the above-described embodiment, the case where the application program executed in the virtual terminal is a web browser has been described as an example. However, other application programs such as e-mail software may be used, such as malware through Internet access. It is possible to target various application programs that may be affected by the above.

1,2 アプリケーション利用システム
10 サーバ
10A マスターサーバ
10B スレーブサーバ
11 物理マシン
12 ホストOS
13 制御プログラム(コンテナ管理ソフトウェア)
14 コンテナ(仮想端末)
15 ユーザプロセス
16 システム管理プログラム
17 データベース
17a アカウント情報
17b テンプレート
17c ユーザプロファイル
18 ウェブブラウザ(アプリケーションプログラム)
19 監視プログラム
20 ローカル端末
21 クライアントプログラム
30 インターネット
40 ローカルネットワーク
1, 2 Application utilization system 10 Server 10A Master server 10B Slave server 11 Physical machine 12 Host OS
13 Control program (container management software)
14 Container (virtual terminal)
15 User process 16 System management program 17 Database 17a Account information 17b Template 17c User profile 18 Web browser (application program)
19 Monitoring program 20 Local terminal 21 Client program 30 Internet 40 Local network

Claims (5)

  1. インターネットに接続されたサーバと、ローカルネットワークを介して前記サーバに接続されたローカル端末とを備え、
    前記サーバは、マスターサーバと複数のスレーブサーバとを含み、
    前記マスターサーバは、前記ローカル端末がアプリケーションプログラムの起動を要求したとき、前記ローカル端末を使用するユーザの属性情報及び各スレーブサーバの属性情報及びステータス情報に基づいて前記ローカル端末に対応する一のスレーブサーバを決定すると共に、前記ローカル端末に接続先情報を返信し、
    前記一のスレーブサーバは、仮想端末を新規に生成し、
    前記ローカル端末は、前記接続先情報に示された前記一のスレーブサーバ内の前記仮想端末に接続し、
    前記一のスレーブサーバは、
    前記仮想端末内で前記アプリケーションプログラムを起動させて前記アプリケーションプログラムの画面出力を前記ローカル端末に転送し、
    前記ローカル端末が前記アプリケーションプログラムを終了させたとき前記仮想端末を削除することを特徴とするアプリケーション利用システム。
    A server connected to the Internet, and a local terminal connected to the server via a local network,
    The server includes a master server and a plurality of slave servers,
    The master server, when the local terminal requests activation of an application program , one slave corresponding to the local terminal based on attribute information of the user using the local terminal and attribute information and status information of each slave server Determine the server and return the connection destination information to the local terminal,
    The one slave server newly generates a virtual terminal,
    The local terminal connects to the virtual terminal in the one slave server indicated in the connection destination information,
    The one slave server is
    Start the application program in the virtual terminal and transfer the screen output of the application program to the local terminal,
    An application utilization system, wherein the virtual terminal is deleted when the local terminal terminates the application program.
  2. 前記ステータス情報は、CPU使用率、メモリ使用率、及び仮想端末の起動数から選ばれた少なくとも一つの情報を含み、
    前記属性情報は、アプリケーション種別、業務種別、及びグループ名から選ばれた少なくとも一つの情報を含む、請求項1に記載のアプリケーション利用システム。
    The status information includes at least one information selected from a CPU usage rate, a memory usage rate, and the number of virtual terminals activated,
    The application use system according to claim 1, wherein the attribute information includes at least one information selected from an application type, a business type, and a group name.
  3. 前記マスターサーバは、前記一のスレーブサーバを決定した後、当該一のスレーブサーバに対して前記仮想端末の作成命令を行い、
    前記仮想端末の作成命令を受けた前記一のスレーブサーバは、前記仮想端末を新規に生成する、請求項1又は2に記載のアプリケーション利用システム。
    The master server, after determining the one slave server, performs the virtual terminal creation instruction to the one slave server,
    The application use system according to claim 1 or 2, wherein the one slave server that has received the virtual terminal creation command newly generates the virtual terminal.
  4. 前記一のスレーブサーバは、コンテナ型の仮想端末内で前記アプリケーションプログラムを起動させる、請求項1乃至3のいずれか一項に記載のアプリケーション利用システム。   The application utilization system according to any one of claims 1 to 3, wherein the one slave server starts the application program in a container-type virtual terminal.
  5. 前記アプリケーションプログラムはウェブブラウザを含む、請求項1乃至4のいずれか一項に記載のアプリケーション利用システム。   The application use system according to any one of claims 1 to 4, wherein the application program includes a web browser.
JP2016106959A 2016-05-30 2016-05-30 Application usage system Active JP6205013B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016106959A JP6205013B1 (en) 2016-05-30 2016-05-30 Application usage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016106959A JP6205013B1 (en) 2016-05-30 2016-05-30 Application usage system

Publications (2)

Publication Number Publication Date
JP6205013B1 true JP6205013B1 (en) 2017-09-27
JP2017215630A JP2017215630A (en) 2017-12-07

Family

ID=59969418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016106959A Active JP6205013B1 (en) 2016-05-30 2016-05-30 Application usage system

Country Status (1)

Country Link
JP (1) JP6205013B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013201589A (en) * 2012-03-24 2013-10-03 Nec Corp Information processing system, information processing method, information processing apparatus, and control method and control program of the same
JP2015069544A (en) * 2013-09-30 2015-04-13 日本電気株式会社 Medical information providing system, server, medical information providing method, and program
US20160019391A1 (en) * 2009-06-30 2016-01-21 George Mason Research Foundation, Inc. Virtual browsing environment
JP2016057898A (en) * 2014-09-10 2016-04-21 富士通株式会社 Load distribution management device, control method, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160019391A1 (en) * 2009-06-30 2016-01-21 George Mason Research Foundation, Inc. Virtual browsing environment
JP2013201589A (en) * 2012-03-24 2013-10-03 Nec Corp Information processing system, information processing method, information processing apparatus, and control method and control program of the same
JP2015069544A (en) * 2013-09-30 2015-04-13 日本電気株式会社 Medical information providing system, server, medical information providing method, and program
JP2016057898A (en) * 2014-09-10 2016-04-21 富士通株式会社 Load distribution management device, control method, and program

Also Published As

Publication number Publication date
JP2017215630A (en) 2017-12-07

Similar Documents

Publication Publication Date Title
CN107408064B (en) Method for executing commands in virtual machine instances and system for implementing the method
JP2019012529A (en) Document management and collaboration system
US10798127B2 (en) Enhanced document and event mirroring for accessing internet content
US9519504B2 (en) Managing a server template
US20180041587A1 (en) Managing user state of cloud desktops
US10637796B2 (en) Linking instances within a cloud computing environment
JP2018088293A (en) Database system providing single tenant environment and a plurality of tenant environments
US9710297B2 (en) Dynamic allocation and assignment of virtual environment
US9344334B2 (en) Network policy implementation for a multi-virtual machine appliance within a virtualization environment
US10073709B2 (en) Session monitoring of virtual desktops in a virtual machine farm
US9116733B2 (en) Automated provisioning of secure virtual execution environment using virtual machine templates based on requested activity
US9348636B2 (en) Transferring files using a virtualized application
US10447684B2 (en) Hosted application sandbox model
US9389932B2 (en) Systems and methods for remote storage management
US9110701B1 (en) Automated identification of virtual machines to process or receive untrusted data based on client policies
US10585705B2 (en) Remote management of distributed datacenters
JP6005706B2 (en) Virtual machine morphing for heterogeneous mobile environments
US9143511B2 (en) Validation of conditional policy attachments
US9870268B2 (en) Virtual computing instance migration
US9614737B1 (en) Appliance backnets in dedicated resource environment
US20150212848A1 (en) Security management device and method
CN106462467B (en) Integrated API and UI for consuming services over different distributed networks
US9135283B2 (en) Self-service configuration for data environment
US10469500B1 (en) Enforceable launch configurations
US9104672B2 (en) Virtual security zones for data processing environments

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170802

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170901

R150 Certificate of patent or registration of utility model

Ref document number: 6205013

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250