Flickr Photo

User not found

Calendario

dicembre: 2012
L M M G V S D
« ott    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

About me

Un sito per condividere quello che imparo e confrontarmi con chi ne ha voglia!

Windows Server

APP-V: Error Code: XXXXXX-XXXXXXOE-00002015

L’errore completo che appare è il seguente:
Error: The SoftGrid Client Could Not Launch the Application You Requested.
You Are Not Authorized to Perform the Requested Operation.
You Must Have Add Applications Permission.
Error Code: XXXXXX-XXXXXXOE-00002015

Per risolvere il problema seguite i seguenti passaggi:

  1. aprire il cliente SPP-V. Solitamente nei sistemi x86 il percorso è C:\Program Files\Microsoft Application Virtualization Client\SftCMC.msc
  2. Nella colonna di sinistra pulsante destro sulla root dell’albero Application Virtualization (Local) quindi Properties
  3. Selezionare il tab Permission
  4. Mettere il flag su Add Applications
  5. Rilanciare l’applicazione e tutto dovrebbe funzionare correttamente.

Windows Server 2008 R2: cambiare versione della licenza

In-pace change/upgrade windows 2008 R2 edition

All’atto dell’installazione del sistema operativo uno dei primi passaggi è la scelta della versione da installate: standard, enterprise, datacenter.

Una volta fatta l’installazione è comunque possibile eseguire la modifica.
Per prima cosa verificare la versione attuale:

PS C:\> DISM /online /Get-CurrentEdition
Deployment Image Servicing and Management tool
 Version: 6.1.7600.16385
Image Version: 6.1.7600.16385
Current edition is:
Current Edition : ServerStandard
The operation completed successfully.

Continua a leggere

Active Directory: The attribute cannot be modified because it is owned by the system

Questo errore è fastidioso tanto quanto è raro vederlo ahimè!!!
Nel mio caso avevo la necessità di modificare manualmente tramite ADSI Edit un valore di AD.
Il tutto solitamente non crea particolari problemi se non nel caso di alcuni parametri che sono bloccati dal sistema/dominio.

In questo caso si ottiene il famigerato errore The attribute cannot be modified because it is owned by the system

La soluzione è la seguente:

  1. aprite il tool LDP.exe sul DC che detiene il ruolo FSMO di Schema Master facendo attenzione ad utilizzare un account con i privilegi di schema admin
  2. eseguite il connect e poi il bind sempre ad DC schema master
  3. dal menu Browse scegliere Modify
  4. nella finestra che appare lasciate il campo DN vuoto e in quello attribute inserite schemaUpgradeInProgress con valore 1
  5. eseguite la modifica
  6. riaprite ADSI Edit e il campo è editabile!

Attenzione che una volta finite le modifiche dovete riportare il valore a 0
Nel caso abbiate una struttura AD complessa potrebbe essere necessario attendere il tempo di replica tra dc se volete utilizzare ADSI Edit su un altro DC.

Active Directory: Rimozione manuale di un trust

La rimozione di un trust tra domini AD nel caso uno dei due domini non sia raggiungibile oppure i DC non stiano funzionando bene potrebbe essere praticamente impossibile tramite snap-in AD Domain and Trusts.

In tal caso potrebbe tornare utile il seguente comando:

C:\>netdom trust remote.domain /d local.domain /remove /force /UO:administrator /po:* /UD:administrator /Pd:*
 Type the password associated with the domain user:
 Type the password associated with the object user:
 The command completed successfully.

Una volta inserite le password degli utenti il gioco è fatto!

Active Directory Recycle Bin

Windows 2008 R2 porta con se un’interessante novità per gli amministratori di rete, il Recycle Bin di Active Directory.
Questa funzionalità permette di ripristinare oggetti di AD cancellati evitando però di dover eseguire il ripristino del system state di un DC da un precedente backup.
Questo significa quindi che possiamo eseguire un restore più rapido e più trasparente agli utenti
L’attivazione del Recycle Bin di Active Directory richiede che il functions level di AD sia 2008 R2, quindi non possiamo avere DC vecchi in linea.
Ultima cosa IMPORTANTE da sapere è che una volta attivata la funzionalità la modifica è IRREVERSIBILE.

Detto questo, possiamo iniziare ad attivarla.
Aprite quindi la powershell e importate il modulo activedirectory con il seguente comando

import-module activedirectory

Quindi digitate il seguente comando:

Enable-ADOptionalFeature –Identity ‘CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=WindowsNT,CN=Services,CN=Configuration,DC=dominio,DC=loc’ –Scope ForestOrConfigurationSet –Target ‘dominio.loc’
WARNING: Enabling 'Recycle Bin Feature' on 'CN=Partitions,CN=Configuration,DC=dominio,DC=loc' is an irreversible action!
You will not be able to disable 'Recycle Bin Feature' on 'CN=Partitions,CN=Configuration,DC=dominio,DC=loc' if you proceed. Confirm
Are you sure you want to perform this action?
Performing operation "Enable" on Target "Recycle Bin Feature".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Confermate ed il gioco è fatto!

Nel caso vi apparisse il seguente messaggio d’errore verificate di eseguire il comando sul server che detiene il ruolo FSMO Domain naming master

WARNING: Enabling 'Recycle Bin Feature' on 'CN=Partitions,CN=Configuration,DC=dominio,DC=loc' is an irreversible action!
 You will not be able to disable 'Recycle Bin Feature' on 'CN=Partitions,CN=Configuration,DC=dominio,DC=loc' if you proceed. Enable-ADOptionalFeature : A referral was returned from the server
 At line:1 char:25
 + Enable-ADOptionalFeature <<<< -Identity 'CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows
 NT,CN=Services,CN=Configuration,DC=dominio,DC=loc' -Scope ForestOrConfigurationSet -Target 'dominio.loc'
 + CategoryInfo : NotSpecified: (CN=Recycle Bin ...DC=dominio,DC=loc:ADOptionalFeature) [Enable-ADOptionalFeature], ADException
 + FullyQualifiedErrorId : A referral was returned from the server,Microsoft.ActiveDirectory.Management.Commands.EnableADOptionalFeature

 

Per recuperare un oggetto cancellato potete usare il seguente comando

Get-ADObject -Filter {displayName -eq "test_user"} -IncludeDeletedObjects | Restore-ADObject

Windows 2008 R2: NPS log level

Una volta abilitato il ruolo NPS per visualizzarne i log si deve aprire il Server Manager e sfoglirne l’albero sino alla seguente posizione: Custom Views\Server Roles\Network Policy and Access Services

Qui, tuttavia, potreste non vedere gli accessi e le autenticazioni fallite dato che di default il livello del log dell’NPS non ne prevede la visualizzazione.

Per verificare il livello del LOG utilizzate il seguente comando:
auditpol /get /subcategory:"Network Policy Server"
Mentre per abilitare il debug, il seguente:
auditpol /set /subcategory:"Network Policy Server" /success:enable /failure:enable

Fatto questo, modificate anche questa voce del registro di sistema
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\EventLogging dal valore 1 (REG_DWORD type, data 0×00000001) a 3 (REG_DWORD type, data 0×00000003)

Script Powershell per generazione report certificati in scadenza

Dopo aver realizzato un’infrastruttura PKI in ambiente Microsoft, particolarmente nelle grandi realtà il numero dei certificati emessi può crescere velocemente e non sempre ricordarsi se e quando rinnovare i certificati diventa cosa semplice.
Se non è possibile utilizzare il rinnovo automatico, si può utilizzare uno script come questo per generare una notifica schedulata dei certificati in scadenza nei prossimi 15 giorni.


Add-PSSnapin Microsoft.Exchange.Management.Powershell.Admin -erroraction silentlyContinue
certutil -view -out "RequestID,RequesterName,NotAfter" csv > C:\Script\elenco_certificati.csv
$csv = Import-Csv C:\Script\elenco_certificati.csv
$end_date = ((get-date).AddDays(15)).ToShortDateString()
foreach ($cert in $csv)
{
   $d1 = ($cert.'Certificate Expiration Date').SubString(0,10)
   $d2 = [datetime]::ParseExact($d1, "dd/MM/yyyy", $null)
   $d3 = $d2.ToShortDateString()
   if ($d3 -gt $end_date)
   { 
      Add-Content C:\Script\elenco_certificati_in_scadenza.csv $cert
   }
}
$file = "C:\Script\elenco_certificati_in_scadenza.csv"
$smtpServer = "mail.server.srv"
$att = new-object Net.Mail.Attachment($file)
$msg = new-object Net.Mail.MailMessage
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$smtp.Credentials = New-Object System.Net.NetworkCredential("user", "password");
$msg.From = "mittente@dominio.it"
$msg.To.Add("destinatario@dominio.it")
$msg.Subject = "Elenco certificati in scadenza nei prossimi 15 giorni"
$msg.Body = "Vedi allegato"
$msg.Attachments.Add($att)
$smtp.Send($msg)
$att.Dispose()

Windows 2008 R2: How manually rebuild Performance Counters

Molti applicativi per il monitoraggio delle risorse utilizzano i performance counter di sistema per determinare lo stato delle risorse.

Mi è capitato che l’agent deputato all’individuazione di queste informazioni non risponda più o addirittura vada in crash a causa della compromissione proprio dei performance counter in questione.

A questo punto si rende necessario ricostruirli con i seguenti comandi:

cd c:\windows\system32
lodctr /R
cd c:\windows\sysWOW64
lodctr /R