III Workshop sulle problematiche di Calcolo e Reti nell’INFN
Castiadas (CA), 24-29 Maggio 2004
La nuova funzionalità di quarantena in
Windows 2003
Francesca Del Corso – INFN Sez. Firenze
[email protected]
ACCESSO VPN
Active
Directory
Intranet
Internet
Web Server
RRAS
Server
Windows Server 2003 IAS
RAS Client
PPTP o L2TP/IPSEC
Autenticazione Windows o RADIUS (Windows Server 2003 IAS)
Active Directory per la gestione degli utenti
Remote Access Policies su RRAS o IAS
Francesca Del Corso – INFN Firenze
Processo di Quarantena
Quarantena
RAS Client
Internet
RRAS Server
Connessione
Windows Server 2003
Internet Authentication Service
Autenticazione
Accesso in
Quarantena
Policy Check
Result
Autorizzazione
Timeout e Filtri
Rimozione della Quarantena
Accesso Completo
Francesca Del Corso – INFN Firenze
Architettura della Quarantena
Quarantena
Internet
RAS Client
Profilo CM
• Esegue script in
modalità post
connect
• Esegue RQC ed
invia il risultato al
listener
RRAS Server
Listener
• RQS riceve risultato
• Confronta il risultato
ai possibili risultati
• Rimuove time-out
• Rimuove i filtri di
quarantena
Francesca Del Corso – INFN Firenze
IAS
Server
Quarantine VSA
• notifica del limite
temporale prima
dell’auto
sconnessione
• Insieme di Q-filter
temporanei per un
accesso in
quarantena
Network Access Quarantine Control
Definizione delle risorse di quarantena
Configurazione RRAS server ed installazione Rqs.exe
Creazione script o programma che valida la configurazione
client
Installazione Windows Server 2003 CMAK e creazione profili
CM di quarantena
Distribuzione profilo CM per installazione su RAS client
Configurazione Remote Access Policies di quarantena sul
server IAS o RRAS
Francesca Del Corso – INFN Firenze
Risorse di quarantena
Definizione risorse e server: DNS, WINS, file server, web
server
Default Input packet filter:
Rqs ed Rqc: TCP porta 7250 (destination)
Ras DHCP: UDP porta 68 (source), porta 67 (destination)
Rqs DNS: UDP porta 53 (destination)
WINS: UDP porta 137 (dest)
HTTP: TCP porta 80 (dest)
File sharing NetBIOS over TCP/IP: TCP porta 139 (dest)
Francesca Del Corso – INFN Firenze
Configurazione RRAS server
Installazione Rqs.exe su RRAS server
– Installare MS Windows Resource Kit 2003 su RRAS server
– Modificare lo script:
%ProgramFiles%\Windows Resource Kits\Tools>rqs_setup.bat
reg add %ServicePath% /v AllowedSet /t REG_MULTI_SZ /d Version1
– Installare Rqs:
%ProgramFiles%\Windows Resource Kits\Tools>rqs_setup.bat /install
– HKLM\System\CurrentControlSet\Services\Rqs
• Aggiungere la chiave AllowedSet, tipo REG_MULTI_SZ, valore
Version1
– Far partire il servizio Remote Access Quarantine Agent
• 'net start rqs‘
– La componente listener può essere sviluppata utilizzando le API
MprAdminConnectionRemoveQuarantine() per rimuovere le restrizioni di
quarantena (Microsoft Developer Network http://msdn.microsoft.com/)
Francesca Del Corso – INFN Firenze
Creazione script
• .exe, .cmd, .bat
• Serie di test per la verifica della policy di network da parte del RAS client
• rqc <ConnName> <TunnelConnName> <Port> <Domain>
<Username> <ScriptVersion>
ConnName:
nome connessione di accesso remoto %DialRasEntry%
TunnelConnName: nome connessione del tunnel %TunnelRasEntry%
Port:
porta TCP - 7250
Domain:
dominio utente che si connette - %Domain%
Username:
username utente - %UserName%
ScriptVersion:
versione dello script – Version1
Francesca Del Corso – INFN Firenze
Creazione profili CM di quarantena
Configurazione Remote Access Policies
Ambiente di test
Quarantena
Web Server WWW
Intranet
Internet
VPN /
RRAS
Server
Active
Directory
RAS Client
Francesca Del Corso – INFN Firenze
Script di quarantena
@echo off
rem Network quarantine script - INF Sez. Firenze. Se i controlli hanno
successo il test è considerato positivamente ed il RRAS Server lascia la
quarantena.
echo RAS Connection = %1
echo Tunnel Connection = %2
echo Domain = %3
echo User Name = %4
echo Service Directory = %5
rem %1 = %DialRasEntry%
rem %2 = %TunnelRasEntry%
rem %3 = %Domain%
rem %4 = %UserName%
rem %5 = %ServiceDir%
set rqcloc=%5\rqc.exe
Francesca Del Corso – INFN Firenze
REM *********** Controllo Symantec Norton Antivirus Corporate Edition *********
:AVCHK
reg query "HKLM\Software\Symantec\InstalledApps" >nul 2>&1
if errorlevel=0 goto VPTrayCHK
set msg=Symantec Norton Antivirus non è installato.
goto TESTFAIL
:VPTrayCHK
%5\pslist VPTray >nul
if errorlevel=0 goto SIGNCHK
set msg=Norton Virus Checker non è in esecuzione.
goto TESTFAIL
:SIGNCHK
for /F %l in ('find "CurDefs" "%ProgramFiles%\Common Files\Symantec Shared\
VirusDefs\definfo.dat"') do set CurDefCli=%l
for /F %l in ('find "CurDefs" "%5\definfo.dat“’) do set CurDefSrv=%l
if %curDefCli% == %CurDefSrv% goto ICFCHK
set msg=Definizioni dei virus non aggiornate. Scaricare gli aggiornamenti da
http://www.symantec.com
goto TESTFAIL
REM ********** Verifica attivazione Internet Connection Firewall ******************
:ICFCHK
net start|find "Internet Connection Firewall" >nul
if not errorlevel=1 goto OSCHK
set msg=Microsoft Internet Connection Firewall deve essere attivato per potersi connettere.
goto TESTFAIL
Francesca Del Corso – INFN Firenze
REM ************Verifica installazione critical security patch ed Hotfix ***************
:OSCHK
ver|find "5.1." >nul
if not errorlevel=1 goto HFXPCHK
ver|find "5.2." >nul
if not errorlevel=1 goto HFW2003CHK
set msg=Questa connessione remota richiede Windows XP o Windows 2003 Server.
goto EOF
: HFXPCHK
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Windows XP\SP2\Q318684”
>nul 2>&1
if not errorlevel=1 goto QUARANTENA
set msg=Windows XP Hotfix (SP2) Q318684 non trovato; scaricare l’hotfix dal sito
http://windowsupdate.microsoft.com
goto TESTFAIL
:HFW2003CHK
reg query "HKLM\SOFTWARE\Microsoft\Updates\Windows Server 2003\SP1\KB819696“ >nul 2>&1
if not errorlevel=1 goto QUARANTENA
set msg= Windows 2003 Hotfix KB819696 non trovato; scaricare l’hotfix dal sito
http://windowsupdate.microsoft.com
goto TESTFAIL
Francesca Del Corso – INFN Firenze
:QUARANTENA
%rqcloc% %1 %2 7250 %3 %4 Version1
If "%ERRORLEVEL%" == "0" (
set MYERRMSG=Success!
) Else If "%ERRORLEVEL%" == "1" (
set MYERRMSG=Impossibile contattare il remote access gateway. Il supporto alla
quarantena verrà disabilitato.
) Else If "%ERRORLEVEL%" == "2" (
set MYERRMSG=Accesso negato. Scaricare l’ultima versione del profilo Connection
Manager direttamente da http://www.fi.infn.it/calcolo/vpn/ e provare a
riconnettersi.
) Else (set MYERRMSG=Fallimento sconosciuto. Il client rimarrà in quarantena.)
Echo %MYERRMSG%
Pause
Goto :EOF
:TESTFAIL
Echo Il tuo computer ha fallito i controlli di sicurezza.
Echo Per informanzioni contattare il Servizio Calcolo e Reti: [email protected]
Pause
:EOF
Francesca Del Corso – INFN Firenze
Esempio di script .exe
int main(void)
{
…………
char patches[1][200] = {"\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\
Updates\\Windows XP\\SP2\\Q318684\\\""};
……...
execlp("/cygdrive/c/WINDOWS/system32/reg",
"/cygdrive/c/WINDOWS/system32/reg", "query", patches[i], (char *)0);
………
while(fgets(qstring,80,qstream)) {
if(strstr(qstring,"Error: ")) {
patchn=strstr(patches[i],"SP2\\");
strncpy(patchnstr,patchn,strlen(patchn));
printf("la patch %s non e\' stata installata\n", strtok(patchnstr+4,"\\"));
return -1;
}
}
printf("controllo patch di sistema effettuato con successo!\n");
return 0;
}
Francesca Del Corso – INFN Firenze
Connection Manager VPN-INFN sez. Firenze
Collegamento dalla rete privata 172.16.1.x
Successo del comando tracert
Security policy non soddisfatta
MS-Quarantine-IPFilter: fallimento del comando tracert
MS-Quarantine-Session-Timeout: disconnessione
Collegamento dalla rete pubblica via ISP
Risultato del comando ipconfig
Sviluppi futuri
Virtual Private Networking
Utilizzo di L2TP/IPSec (certificato macchina sul VPN
server e sul VPN client)
Logon security
EAP/TLS (certificato utente sul VPN client e certificato
macchina sul server IAS)
Cisco VPN Concentrator 3000
Francesca Del Corso – INFN Firenze
Documentazione
Microsoft Windows Server 2003 deployment kit: Microsoft Windows
Server 2003 deploying network services - Microsoft Corporation
Microsoft Windows Server 2003 Network Access Quarantine Control http://www.microsoft.com/windowsserver2003/techinfo/overview/quaranti
ne.mspx
Arrest Suspect Clients with Windows 2003’s New Quarantine Feature Allen Jones, Ottobre 2003
Step-by-Step Guide for Creating and Testing Connection Manager
Profiles in a Test Lab - Microsoft Corporation, Aprile 2003
Step-by-Step Guide for Setting Up Network Quarantine and Remote
Access Certificate Provisioning in a Test Lab - Microsoft Corporation,
Luglio 2003
www.microsoft.com/windowsserver2003/technologies/networking
Francesca Del Corso – INFN Firenze
Scarica

La nuova funzionalita` di quarantena di Windows 2003