CLOSE  

@echo off

:CLEARVARS
 set RQCLOC=
 set TUNNELCONNNAME=
 set DOMAIN=
 set USERNAME=
 set PORT=
 set REMOVAL=
 set LOG=

:INITIALIZATION
 set RQCLOC=%1\rqc.exe
 set TUNNELCONNNAME=%3
 set DOMAIN=%4
 set USERNAME=%5
 set REMOVAL=WindowsPro
 set PORT=7250

:VALIDATION
 CScript //NOLOGO %1\CheckFW.vbs
 IF NOT %ERRORLEVEL%==0 GoTo ERROR_FW
 echo Windows ファイアウォールは正しく設定されています。
 pause  goto REMOVE_QUARANTINE

:ERROR_FW
 set LOG=%COMPUTERNAME% のファイアウォールが有効になっていません。
 set REMOVAL=""
 echo %LOG%
 echo すべてのネットワーク接続のファイアウォールを有効にしてください。
 goto RQC
:REMOVE_QUARANTINE
 set LOG=検査に合格しました。%COMPUTERNAME% の検疫を解除します。
 echo ------------------------------------------------------------
 echo %LOG%
 echo ------------------------------------------------------------
:RQC
 pause
 %RQCLOC% /conn %TUNNELCONNNAME% /port %PORT% /domain %DOMAIN% /user %USERNAME% /sig %REMOVAL% /log "%LOG%"

 IF %ERRORLEVEL%==0 GOTO QUARANTINED_REMOVED
 IF %ERRORLEVEL%==1 GOTO QUARANTINED_INVALIDLOC
 IF %ERRORLEVEL%==2 GOTO QUARANTINED_INVALIDSTRING
 goto QUARANTINE_FAIL
:QUARANTINED_REMOVED
 "%ProgramFiles%\Internet Explorer\iexplore.exe" http://iis1.example.com/test.htm
 goto EXIT_SCRIPT

:QUARANTINED_INVALIDSTRING
 echo 無効な削除文字列が渡されました。要求は拒否されました。
 goto QUARANTINE_FAIL
:QUARANTINED_INVALIDLOC
 echo リモートアクセスサーバーとの通信に失敗しました。(%PORT% が開いているか確認してください)
 GOTO QUARANTINE_FAIL
:QUARANTINE_FAIL
 echo 検疫の解除に失敗しました。切断してから、接続を再試行してください。
 echo 引き続き問題が発生する場合は、ヘルプデスク(03-1234-5678)にお問い合わせください。
:SHOWQUARANTINEINFO
 "%ProgramFiles%\Internet Explorer\iexplore.exe" http://ca1.example.com/quarantine.htm
 goto EXIT_SCRIPT

:EXIT_SCRIPT


図9●Windowsファイアウオールが有効になっていることを調べるスクリプト
(a)クライアントがVPNサーバーに接続した後に実行する「quarantine.cmd」。

Copyright (C) 2004 Nikkei Business Publications, Inc. All rights reserved.