none
2008 R2 - Dove trovare i log del firewall RRS feed

  • Domanda

  • Sto configurando il firewall di 2008 R2 però non sono riuscito a capire dove trovare i file di log che mi facciano capire le applicazioni/porte che vengono bloccate.

    Dove stà sto benedetto log?

    Grazie a tutti.


    giovedì 21 aprile 2011 09:07

Risposte

  • Prova a vedere se questo ti è d'aiuto:

    http://technet.microsoft.com/en-us/library/cc947815(WS.10).aspx

     


    Adriano - MCITP Server Administrator MCTS Windows Server 2008 Applications Infrastructure, Configuration adriano.mariolini[at]adcoop.it
    • Contrassegnato come risposta Anca Popa giovedì 28 aprile 2011 10:37
    giovedì 21 aprile 2011 11:05
  • Sto configurando il firewall di 2008 R2 però non sono riuscito a capire dove trovare i file di log che mi facciano capire le applicazioni/porte che vengono bloccate.

    Dove stà sto benedetto log?

    Grazie a tutti.



    Avvia il "server manager", nel pannello di sinistra espandi
    il ramo "configuration" seleziona quindi il sottoramo relativo
    a "windows firewall" e quindi "monitoring" e, nel pannello
    centrale, scorri fino a che non troverai le voci relative al
    logging; il path per il file di log dovrebbe contenere
     
    %systemroot%\system32\logfiles\firewall\pfirewall.log
     
    assicurati di abilitare (mettere la spunta) sulle voci relative al
    logging dei pacchetti bloccati ed ANCHE delle connessioni
    consentite ed imposta la dimensione massima del log a 4096
    in questo modo, quando il file di log raggiungerà i 4 mega, il
    sistema rinominerà il file in "pfirewall.log.old" (sovrascrivendo
    qualsiasi eventuale "old log" esistente) e creerà un nuovo file
    pfirewall.log (il che significa che avrai al massimo due logfiles,
    ossia, l'ultimo backup ed il log attivo) se a questo punto fosse
    necessario tenere una "storia" dei logs del firewall, ti consiglio
    di creare uno script che, schedulato ad intervalli regolari, si
    occupi di copiare il file "pfirewall.log.old" in un'altra cartella
    rinominandolo in "pfirewall-yyyymmdd.log" dove "yyyymmdd"
    sarà la data ottenibile leggendo la data di creazione del file
    in pratica... qualcosa di questo genere...


    '
    ' RUN: cscript fwlogs.vbs
    '
    
    ' defaults
    Const LOG_PATH = "%systemroot%\system32\logfiles\firewall\pfirewall.log.old"
    Const BAK_PATH = "%systemroot%\system32\logfiles\firewall\archive"
    
    '__boot() {
     Dim fso, arg
    
     Set fso = CreateObject("Scripting.FileSystemObject")
     Set arg = WScript.Arguments
     WScript.Quit main(arg.Count, arg)
    '}
    
    ' main - inizio
    Function main(argc, argv)
     Dim sFileName, sBakPath
     Dim sBakFile
    
     ' init
     On Error Resume Next
     main = 255
     
     ' controlla se è stato passato un filename
     sFileName = LOG_PATH
     If argc > 0 Then
     sFileName = argv(0)
     End If
     sFileName = GetEnv(sFileName) 
    
     ' controlla se è stato passato un backup path
     sBakPath = BAK_PATH
     If argc > 1 Then
     sBakPath = argv(1)
     End If
     sBakPath = GetEnv(sBakPath)
     
     ' verifica se il log esiste
     If Not fso.FileExists(sFileName) Then
     printf "File not found: " & sFileName
     main = 1
     Exit Function
     End If
     
     ' verifica se la dir di backup esiste
     If Not fso.FolderExists(sBakPath) Then
     ' se non esiste la crea
     fso.CreateFolder sBakPath
     If Err.Number <> 0 Then
     perror "CreateFolder(" & sBakPath & ")"
     main = 2
     Exit Function
     End If
     End If
     
     ' genera il pathname per il file di backup
     sBakFile = GetLogDate(sBakFile)
     If Len(sBakFile) < 1 Then
     main = 3
     Exit Function 
     End If
     sBakFile = sBakPath & "\pfirewall-" & sBakFile & ".log"
    
     ' copia il file di log nella cartella di backup
     fso.CopyFile sFileName, sBakFile, True
     If Err.Number <> 0 Then
     perror "CopyFile(" & sFileName & "," & sBakFile & ")"
     main = 4
     Exit Function
     End If
     
     ' elimina il file di log (old)
     fso.DeleteFile sFileName, True
     If Err.Number <> 0 Then
     perror "DeleteFile(" & sFileName & ")"
     main = 5
     Exit Function
     End If
     
     ' fine
     main = 0
    End Function
    
    ' ricava la data di creazione di un log
    Function GetLogDate(sLogFile)
     Dim fil, dt, sRet
     
     On Error Resume Next
     Set fil = fso.GetFile(sLogFile)
     If Err.Number <> 0 Then
     perror "GetLogDate(" & sLogFile & ")"
     GetLogDate = ""
     Exit Function
     End If
     dt = CDate(fil.DateCreated)
     
     ' aaaammdd
     sRet = Right("0000" & Year(dt), 4) & _
     Right("00" & Month(dt), 2) & _
     Right("00" & Day(dt), 2)
     
     GetLogDate = sRet
    End Function
    
    ' stampa una stringa a console
    Sub printf(sStr)
     On Error Resume Next
     WScript.StdOut.WriteLine sStr
    End Sub
    
    ' stampa un errore a console
    Sub perror(sSrc)
     Dim sErr
     
     sErr = "Err: 0x" & Err.Number & " " & Err.Description
     If Len(sSrc) > 0 Then
     sErr = sErr & " => " & sSrc
     End If
     printf sErr
    End Sub
    
    ' espande i valori di environment
    Function GetEnv(sEnv)
     Dim oShell, sRet
     
     Set oShell = CreateObject("WScript.Shell")
     sRet = oShell.ExpandEnvironmentStrings(sEnv)
     Set oShell = Nothing
     GetEnv = sRet
    End Function 
    
    '<EOF>
    
    
    usando lo script di cui sopra, e schedulandolo ad intervalli regolari
    sarai in grado di mantenere una serie di backups relativi ai logs del
    firewalls, logs che potrai quindi (ad es.) importare in un database o
    utilizzare come desiderato




    • Modificato ObiWan giovedì 21 aprile 2011 15:04
    • Contrassegnato come risposta Anca Popa giovedì 28 aprile 2011 10:35
    giovedì 21 aprile 2011 14:46

Tutte le risposte

  • Prova a vedere se questo ti è d'aiuto:

    http://technet.microsoft.com/en-us/library/cc947815(WS.10).aspx

     


    Adriano - MCITP Server Administrator MCTS Windows Server 2008 Applications Infrastructure, Configuration adriano.mariolini[at]adcoop.it
    • Contrassegnato come risposta Anca Popa giovedì 28 aprile 2011 10:37
    giovedì 21 aprile 2011 11:05
  • Sto configurando il firewall di 2008 R2 però non sono riuscito a capire dove trovare i file di log che mi facciano capire le applicazioni/porte che vengono bloccate.

    Dove stà sto benedetto log?

    Grazie a tutti.



    Avvia il "server manager", nel pannello di sinistra espandi
    il ramo "configuration" seleziona quindi il sottoramo relativo
    a "windows firewall" e quindi "monitoring" e, nel pannello
    centrale, scorri fino a che non troverai le voci relative al
    logging; il path per il file di log dovrebbe contenere
     
    %systemroot%\system32\logfiles\firewall\pfirewall.log
     
    assicurati di abilitare (mettere la spunta) sulle voci relative al
    logging dei pacchetti bloccati ed ANCHE delle connessioni
    consentite ed imposta la dimensione massima del log a 4096
    in questo modo, quando il file di log raggiungerà i 4 mega, il
    sistema rinominerà il file in "pfirewall.log.old" (sovrascrivendo
    qualsiasi eventuale "old log" esistente) e creerà un nuovo file
    pfirewall.log (il che significa che avrai al massimo due logfiles,
    ossia, l'ultimo backup ed il log attivo) se a questo punto fosse
    necessario tenere una "storia" dei logs del firewall, ti consiglio
    di creare uno script che, schedulato ad intervalli regolari, si
    occupi di copiare il file "pfirewall.log.old" in un'altra cartella
    rinominandolo in "pfirewall-yyyymmdd.log" dove "yyyymmdd"
    sarà la data ottenibile leggendo la data di creazione del file
    in pratica... qualcosa di questo genere...


    '
    ' RUN: cscript fwlogs.vbs
    '
    
    ' defaults
    Const LOG_PATH = "%systemroot%\system32\logfiles\firewall\pfirewall.log.old"
    Const BAK_PATH = "%systemroot%\system32\logfiles\firewall\archive"
    
    '__boot() {
     Dim fso, arg
    
     Set fso = CreateObject("Scripting.FileSystemObject")
     Set arg = WScript.Arguments
     WScript.Quit main(arg.Count, arg)
    '}
    
    ' main - inizio
    Function main(argc, argv)
     Dim sFileName, sBakPath
     Dim sBakFile
    
     ' init
     On Error Resume Next
     main = 255
     
     ' controlla se è stato passato un filename
     sFileName = LOG_PATH
     If argc > 0 Then
     sFileName = argv(0)
     End If
     sFileName = GetEnv(sFileName) 
    
     ' controlla se è stato passato un backup path
     sBakPath = BAK_PATH
     If argc > 1 Then
     sBakPath = argv(1)
     End If
     sBakPath = GetEnv(sBakPath)
     
     ' verifica se il log esiste
     If Not fso.FileExists(sFileName) Then
     printf "File not found: " & sFileName
     main = 1
     Exit Function
     End If
     
     ' verifica se la dir di backup esiste
     If Not fso.FolderExists(sBakPath) Then
     ' se non esiste la crea
     fso.CreateFolder sBakPath
     If Err.Number <> 0 Then
     perror "CreateFolder(" & sBakPath & ")"
     main = 2
     Exit Function
     End If
     End If
     
     ' genera il pathname per il file di backup
     sBakFile = GetLogDate(sBakFile)
     If Len(sBakFile) < 1 Then
     main = 3
     Exit Function 
     End If
     sBakFile = sBakPath & "\pfirewall-" & sBakFile & ".log"
    
     ' copia il file di log nella cartella di backup
     fso.CopyFile sFileName, sBakFile, True
     If Err.Number <> 0 Then
     perror "CopyFile(" & sFileName & "," & sBakFile & ")"
     main = 4
     Exit Function
     End If
     
     ' elimina il file di log (old)
     fso.DeleteFile sFileName, True
     If Err.Number <> 0 Then
     perror "DeleteFile(" & sFileName & ")"
     main = 5
     Exit Function
     End If
     
     ' fine
     main = 0
    End Function
    
    ' ricava la data di creazione di un log
    Function GetLogDate(sLogFile)
     Dim fil, dt, sRet
     
     On Error Resume Next
     Set fil = fso.GetFile(sLogFile)
     If Err.Number <> 0 Then
     perror "GetLogDate(" & sLogFile & ")"
     GetLogDate = ""
     Exit Function
     End If
     dt = CDate(fil.DateCreated)
     
     ' aaaammdd
     sRet = Right("0000" & Year(dt), 4) & _
     Right("00" & Month(dt), 2) & _
     Right("00" & Day(dt), 2)
     
     GetLogDate = sRet
    End Function
    
    ' stampa una stringa a console
    Sub printf(sStr)
     On Error Resume Next
     WScript.StdOut.WriteLine sStr
    End Sub
    
    ' stampa un errore a console
    Sub perror(sSrc)
     Dim sErr
     
     sErr = "Err: 0x" & Err.Number & " " & Err.Description
     If Len(sSrc) > 0 Then
     sErr = sErr & " => " & sSrc
     End If
     printf sErr
    End Sub
    
    ' espande i valori di environment
    Function GetEnv(sEnv)
     Dim oShell, sRet
     
     Set oShell = CreateObject("WScript.Shell")
     sRet = oShell.ExpandEnvironmentStrings(sEnv)
     Set oShell = Nothing
     GetEnv = sRet
    End Function 
    
    '<EOF>
    
    
    usando lo script di cui sopra, e schedulandolo ad intervalli regolari
    sarai in grado di mantenere una serie di backups relativi ai logs del
    firewalls, logs che potrai quindi (ad es.) importare in un database o
    utilizzare come desiderato




    • Modificato ObiWan giovedì 21 aprile 2011 15:04
    • Contrassegnato come risposta Anca Popa giovedì 28 aprile 2011 10:35
    giovedì 21 aprile 2011 14:46
  • ... in rosso!!!!

    Adriano - MCITP Server Administrator MCTS Windows Server 2008 Applications Infrastructure, Configuration adriano.mariolini[at]adcoop.it
    • Modificato Anca Popa giovedì 28 aprile 2011 10:34 deprecato nei Forum
    giovedì 21 aprile 2011 14:50
  • ... in rosso!!!!

    Adriano - MCITP Server Administrator MCTS Windows Server 2008 Applications Infrastructure, Configuration adriano.mariolini[at]adcoop.it

     

    Beh, se vuoi posso anche usare qualche font speciale :) - seriamente, ho scritto di fretta senza controllare quello che stava combinando il browser e tutto il resto, se è un problema posso rieditare il post e modificarlo

     


    • Modificato Anca Popa giovedì 28 aprile 2011 10:35 deprecato nei Forum
    giovedì 21 aprile 2011 15:01
  • Ciao Molock,

    Immagino che i consigli ricevuti ti siano stati utili, quindi ho segnato le risposte come valide.

    In attesa di ulteriori feedback, colgo l'occasione per ringraziare Adriano ed Obi della collaborazione.

    Saluti,


    Anca Popa Follow ForumTechNetIt on Twitter

    SBS 2011 Essentials: download, documentazione e video

    Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto viene fornito “così come è” e non comporta alcuna responsabilità da parte dell'azienda

    giovedì 28 aprile 2011 10:46
  • Confermo, trovato utile e risolutiva la risposta.

    Grazie

     

    mercoledì 4 maggio 2011 16:19