Azureでアンチウイルス

Posted: 2011/11/11 カテゴリー: Uncategorized
タグ:, , ,

Windows Azureコンピューティングのロール インスタンス (仮想サーバー) には、アンチウイルス ソフトウェアは入っていません。

ロール インスタンスは、インターネットにホスティングされている通常のサーバーに比べると、かなりセキュアではありますが (詳しくはホワイトペーパー「Windows Azure セキュリティ概要などを参照)、それでも、アンチウイルス ソフトウェアを入れておきたいという場合もあるかと思います。

その場合、VMロールなら、アンチウイルス ソフトウェアをインストールしたOSイメージを作成すればいいですし、Webロール/ワーカー ロールの場合は、スタートアップ タスク (仮想サーバー起動時に実行されるコマンドライン スクリプト) でサイレント インストールすることが可能です。

今回は、スタートアップ タスクを使って、オープン ソースのアンチウイルス ソフトウェア「ClamWin」をインストールしてみます。

ClamWinのWebサイトで、ClamWinの最新版をダウンロードし、Visual StudioでWeb/ワーカー ロールのプロジェクトに追加します。

また、コマンドライン スクリプト (ここでは clamwin_install.cmd) を新規作成し、ClamWinをサイレント インストールする次のコマンドを定義します。(Visual Studioで作成すると、UnicodeのBOMのために動作しなくなってしまうので、好みのテキスト エディタで作成してしてANSIエンコードで保存し、Visual Studioのプロジェクトに追加しましょう。)

clamwin-x.xx.x-setup.exe /sp- /silent /norestart

次に、Azureプロジェクトのサービス定義ファイル (csdefファイル) で、スタートアップ タスクを定義します。GUIのサポートはまだないので、csdefファイルを開いて、手動入力します。XMLの要素名、属性名、属性値は自動補完が効くので、簡単です。

<Startup>

    <Task commandLine=”clamwin_install.cmd” executionContext=”elevated” taskType=”background” />

</Startup>

リモート デスクトップ接続を有効にして、デプロイします。デプロイ完了後、ロール インスタンスにリモート デスクトップで接続すると、ClamWinが起動していることを確認できます。

 

 

 

 

 

次のブログ ポストでは、Webアプリでアップロードされたファイルを、プログラム的にスキャンする、より高度なシナリオを紹介しています。

 

コメント
  1. T. より:

    情報ありがとうございます。

    佐藤さんの文末に「次のブログ ポストでは、Webアプリでアップロードされたファイルを、プログラム的にスキャンする、より高度なシナリオを紹介しています」とありますが、是非とも教えてください。
    特に、オンメモリで可能な方法を期待しています。
    現在使用している環境は、クラウドOSが3.8、Windows Azure SDK 1.8です。
    以上

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中