Risorse per Kerberos in Windows
27 June 08 12:39 PM | claudiog | (Comments Off)   

Sul blog del Ask the Directory Services Team di Microsoft, trovate una bella serie di articoli su Kerberos.

La prima serie è fatta di 4 articoli molto approfonditi sul Troubleshooting:

Interessanti poi due altri articoli più introduttivi per la comprensione di Kerberos in quanto tale (terminologia, processi e tools) e del concetto di "Double Hop":

Di gran lunga il problema più frequente che riscontriamo presso le aziende, è l'errata configurazione dei SPN in Active Directory (associazione con il Security Principal sbagliato, SPN duplicati o del tutto mancanti), specie per ambienti SQL Server in Cluster e le web application (dove ci sia quindi di mezzo IIS e magari la constrained delegation).

Hyper-V è RTM (RTW)
27 June 08 12:02 PM | claudiog | (Comments Off)   

Riprendo come al solito i post di Piergiorgio Malusardi, questa volta per segnalare il suo completo riassunto su Hyper-V che è Released To Web (RTW).

Con largo anticipo sulla data stimata di Agosto (e questa è già una novità Wink), Microsoft ha rilasciato la versione finale della sua piattaforma di Server Virtualization. Per ora il download è manuale, ma sarà disponibile su WU (e WSUS ?) l'8 di Luglio.

Devo dire che, seppure qualche caratteristica è mancante rispetto ad altre piattaforme ( ... di chi starò parlando ... mah ?!), la sua stabilità è davvero notevole e le prestazioni sono ottime; ma ciò che più attrae è la piattaforma di Management, che se da un lato è orientata alla famiglia System Center, dall'altro offre già di base un interfaccia di scripting (WMI based) micidiale.

Siamo in produzione sia internamente in Pulsar IT, che presso un cliente del "Upper Mid Market", dove abbiamo quasi completato un progetto di migrazione a Windows Server 2008 ed Exchange 2007, già da alcuni mesi (RC0) e non abbiamo avuto davvero alcun problema.
I ruoli virtualizzati vanno dai Domain Controller, DHCP+DNS+RADIUS, Exchange 2007 HT+CAS, WSUS,  Web Server, ...

Stiamo anche ospitando da un paio di settimane sul ns. server Hyper-V anche il sito di Ugiss, lo User Group Italiano di SQL Server.
Certo non si tratta di aver virtualizzato TechNet e MSDN ma ... si fa quel che si può!

Aggiungo alcune altre risorse a quelle segnalate da Piergiorgio:

10 domande frequenti su Hyper-V

What to consider before you upgrade

PowerShell Management Library per Hyper-V

Le interviste con il Team di Hyper-V

Powershell News
15 June 08 12:52 AM | claudiog | (Comments Off)   

Su CodePlex è disponibile un nuovo Provider per Powershell, scritto da Oisin Grehan (Microsoft MVP), già autore di PSEventing (PowerShell Eventing) e developer nel gruppo di PowerShell Community Extensions.

Si tratta del PowerShell Windows Mobile Provider, che consente di accedere sia in modo interattivo che programmatico a dispositivi Windows Mobile da PowerShell.
Molte le attività che si possono scriptare: dalla gestione del file system, alla conversione di file, l'esecuzione di processi, alla estrazione di informazioni sul dispositivo, ecc.
Si tratta ancora di una Beta, ma di certo un bel tool. Bravo Oisin !

Un altro interessante spunto ci viene da PowerShell Tunnel, disponibile sulla MSDN Code Gallery.
Applicazione decisamente interessante per accedere da una CLI PowerShell agli oggetti esposti in una applicazione .Net, hostata appostamente in un "runspace" di PowerShell e raggiunta tramite l'infrastruttura WCF.
Lo scopo ? Debugging, inspection ... ma anche esecuzione di metodi e modifica di proprietà ... tutto unito alla potenza di PowerShell. Una bella idea di Matthew Hobbs.

Vi segnalo anche un feed RSS, per essere sempre aggiornati sulla pubblicazione di nuovi contenuti (scripts) sul TechNet Script Center.

Filed under: ,
Windows Server 2008 Failover Clustering: il portale Microsoft
15 June 08 12:00 AM | claudiog | (Comments Off)   

Finalmente Microsoft ha raggruppato in un unico portale, tutte le informazioni sulle tecnologie di Failover Clustering, il nuovo nome introdotto in Windows Server 2008 per MSCS o Server Clustering.

Un ottimo punto di partenza per accedere a informazioni di ogni genere e profondità, sulle tecnologie di server clustering di Windows Server 2008.

Windows Server 2008 RODC: compatibility pack per XP e Windows Server 2003
05 June 08 01:18 PM | claudiog | (Comments Off)   

Una delle funzionalità più utili in ambienti "branch office", ovvero di deployment di servizi di Directory in filiale, è il Read Only Domain Controller, che definendo un DC a sola lettura, delegabile in amministrazione locale e solitamente privo delle password degli user account, aumenta la sicurezza di un ambiente AD.
In questo modo si beneficia del domain controller locale (vicino ai client/servizi), parzialmente delegato in amministrazione, ma senza sacrificare la sicurezza.

Microsoft ha rilasciato un nuovo compatibility pack per indirizzare una serie di scenari di scarsa compatibilità tra questo tipo di Domain Controller ed client/server downlevel.

Si applica a client Windows XP SP2 o SP3 e server Windows 2003 SP1 o SP2.

DPM 2007 e il Consistency Check
03 June 08 02:01 AM | claudiog | (Comments Off)   

Data Protection Manager 2007 prevede un meccanismo di verifica dell'integrità di una Replica (un "backup" in vecchia terminologia) di un DataSource, chiamato Consistency Check.

In questo articolo del Core Team proprio sul CC di DPM 2007, trovate alcune informazioni più dettagliate.

Poichè sono alle prese con alcuni problemini, ero alla ricerca di procedure di automazione del CC ed ho trovato sul blog del Team di DPM questa script PowerShell per invocare un Consistency Check su un DataSource di DPM 2007.

La script, pur essendo utile, ha un difetto di design: esegue CC per NOME del DataSource all'interno di un Protection Group ... ma non gestisce il fatto che il NOME può essere duplicato all'interno di un PG (ES: salvate il disco "C:\" di più server nello stesso PG, il SystemState, ecc.).

Ho modificato la script per renderla un pò più tollerante e gestire questo caso (affatto infrequente), oltre ad averla un pò rivista. Appena ho un pò di tempo (bisogna anche fatturare Wink), ne scriverò una versione che accetti un DataSource *specifico* (Es: SystemState del SERVER01).

Ecco la script: DPM-ConsistencyCheck2.ps1

Ciao, Claudio

DevCon 2008
20 May 08 02:17 PM | claudiog | (Comments Off)   

Anche quest'anno a Milano, ma questa volta presso Microsoft a San Felice, si terrà dal 27 al 29 di Maggio la conferenza tecnica di DevLeap, DevCon 2008.

Densissime le tre giornate, tutte incentrate su .NET 3.5, con particolare riguardo a LINQ, ma senza tralasciare il "vecchio" (si fa per dire), ovvero WCF/WPF/WF.

Non mancano sessioni più orientate alle soluzioni complessive (SharePoint, Asp.Net, ecc.) e qualche sessione più visionaria e architetturale (Web Futures, Parallel programming, ...).

E dal detto "Pochi ma buoni" ... 4 speaker ma di assoluta eccellenza, come sempre.

Filed under: ,
Data Protection Manager 2007 compatibile Windows Server 2008 ? Quasi
10 April 08 06:49 PM | claudiog | (Comments Off)   

Tra i prodotti citati come compatibili con Windows Server 2008, nella apposita pagina sul sito Microsoft, già citata in un post precedente, c'è indicato come "Applications that are currently compatible", anche Data Protection Manager (DPM) 2007.

La situazione è purtroppo abbastanza diversa ...

  • la porzione server del prodotto NON è installabile su Windows Server 2008, ma solo la parte client (Agent)
  • dei server Windows Server 2008 NON è possibile gestire la parte SystemState (!)
  • Non è supportato il backup delle Virtual Machines Hyper-V (e questo lo concediamo ... è in RC0 ;-)

Come compatibilità direi che non siamo proprio al top.

Il tutto dovrebbe essere correttamente gestito dal Service pack 1 per DPM 2007, previsto per fortuna abbastanza presto. Potrebbe anche comparire con un update a parte, se SP1 andasse per le lunghe.

Nel frattempo consiglio caldissimamente di installare questa hotfix per DPM 2007, che permette di sistemare non pochi problemi (a prescindere da Windows Server 2008), in special modo il punto 3 della KB.

Dopo l'applicazione bisogna purtroppo ridistribuire gli agent di DPM (sigh!).

Claudio

Debug Logging di componenti Active Directory
03 April 08 12:06 AM | claudiog | (Comments Off)   

Craig Landis ha pubblicato un ottimo post sul Blog del team di Active Directory ("Ask the Directory Services Team"), su come abilitare (sia da CLI che da VBScript che da Powershell) il debug log per molti componenti AD-related.

L'articolo è ricchissimo di impostazioni e link ad articoli specifici. I componenti trattati vanno da Active Directory Federation Service (ADFS) a Winlogon, in rigoroso odine alfabetico.

Ottimo davvero: il "bigino" del debug logging Big Smile

Claudio

Microsoft Deployment Toolkit 2008 e Windows Automated Installation per Vista SP1 e Windows Server 2008
21 March 08 11:03 AM | claudiog | (Comments Off)   

Da qualche giorno è disponibile la versione aggiornata di Microsoft Deployment Toolkit (MDT) 2008, oltre ad un aggiornamento per Business Desktop Deployment (BDD) 2007.
Trovate alcune informazioni aggiuntive sul Blog ufficiale del Team di MDT, assieme a qualche altro post interessante sul tema.

Questo rilascio segue di pochi giorni quello di Automated Installation Kit (AIK), che  supporta ora sia Windows Vista SP1 che Windows Server 2008. (Oltre ai consueti Windows XP e WIndows Server 2003).

Ulteriori risorse sui temi del deployment sia per client che per i server, sono disponibili nella home page dei Solution Accelerators per il Deployment.

Estrarre le enum per SQL Server SMO con Powershell
19 March 08 11:16 PM | claudiog | (Comments Off)   

Lavorare con le enum in Powershell non è molto comodo, la sintassi è prolissa e ricordarsi i valori da associare non è così semplice (certo c'è sempre il sito MSDN ...).

Basandomi sul codice di questo articolo di $hay@Israel, ho creato questa variazione per estrarre le enum per SQL Server Server Management Objects (SMO), ... ma non solo.
Il codice in realtà permette potenzialmente di stampare tutte le enum presenti in un qualsiasi Assembly .Net, oppure solo una porzione di esse usando un parametro di filtro (Es: *Database*, ).

 

Partiamo dal primo spunto, preso quasi integralmente dal post di $hay@Israel:

function Get-EnumValues{
  if ($args.Count -eq 0) {
    write-warning "`nEnum parameter is empty. Nothing to Get"
  } else {
    [enum]::getvalues($args[0]) | select @{n='Name';e={$_}},@{n='Value';e={$_.value__}} | ft -auto
  }
}


Possiamo usare questa funzione per estrarre tutti i valori da una specifica enum:

Get-EnumValues System.ConsoleColor
Get-EnumValues System.IO.FileAttributes
Get-EnumValues System.IO.FileAccess
Get-EnumValues System.IO.FileOptions


Ora scriviamo una funzione un pò più sofisticata, per estrarre tutte le enum da un Assembly, eventulamente passando un filtro e i classici $Verbose e $Confirm di Powershell (che andrebbero sembre gestici anche nelle proprie funzioni):

function Get-AllEnumValues (
  [String] $Assmbl = $(throw 'Mandatory Assembly name parameter is missing'),
  [String] $eFilter = '',
  [switch] $Verbose = $False,
  [switch] $Confirm = $True
) {
  if ( $eFilter -ne '') {
    $local:filter={$_.basetype.fullname -eq 'system.enum' -and $_.name -like $eFilter}
    if ($Verbose) {
      write-host "eFilter = $eFilter"
    }
  } else {
    $local:filter={$_.basetype.fullname -eq 'system.enum'}
    if ($Verbose) {
      write-host "eFilter = ''"
    }
  }

  if ($Verbose) {
    write-host "Assembly = $Assmbl"
  }
  [System.Reflection.Assembly]::LoadWithPartialName($Assmbl).gettypes() | ? {& $Filter} | % {
    write-host "`t--- [$_] ---"
    Get-EnumValues $_
    if ($Confirm) {
      read-host " Press any key to continue"
    }
  }
}

 

Ora non ci resta che scrivere una funzione accessoria che usa la precedente, per estrarre le enum da specifici assembly che magari usiamo spesso:

function Get-SMOEnumValues (
  [String] $eFilter = '',
  [switch] $Verbose = $False,
  [switch] $Confirm = $False
) {
  Get-AllEnumValues 'Microsoft.SqlServer.SqlEnum' $eFilter -Confirm:$Confirm -Verbose:$Verbose
}

 

Ora possiamo scrivere ad esempio:

Get-SMOEnumValues    # o Get-SMOEnumValues *
Get-SMOEnumValues Job*
Get-SMOEnumValues *Status


Ovviamente questo può essere esteso ad altri Assembly, a piacere:

function Get-SDEnumValues (
  [String] $eFilter = '',
  [switch] $Verbose = $False,
  [switch] $Confirm = $False
) {
  Get-AllEnumValues 'System.Data' $eFilter -Confirm:$Confirm -Verbose:$Verbose
}

Get-SDEnumValues *Command* -Confirm:$True -Verbose:$True


Il codice completo di esempio è disponibile qui.

Claudio

Filed under: ,
Powershell: ADM file per gestire Set-ExecutionPolicy
14 March 08 01:06 PM | claudiog | (Comments Off)   

Powershell dispone di una policy per il controllo dell'esecuzione di script .ps1 (quindi anche dei profile), che consente di indicare se si voglia consentire o meno l'esecuzione di file .ps1 e se questi debbano essere firmati digitalmente.

Questa Policy (quindi una chiave di registry in HKLM, in sostanza), è accessibile e modificabile con le due cmdlet Get-ExecutionPolicy e Set-ExecutionPolicy.

Microsoft ha rilasciato (già da qualche tempo), un file .ADM che può quindi essere importato in una Group Policy, per governare centralmente questo aspetto.

Se anche Powershell stesso fisse distribuibile via GPO, saremmo a cavallo ... ma purtroppo con la scelta (davvero infelice, come mi ha confermato lo stesso Jeffrey Snover, incontrato al IT Forum di Barcellona) di pacchettizzarlo come Update di Windows ...

Filed under: ,
SQL Server 2005 post SP2 Cumultative Update build summary
10 March 08 10:52 PM | claudiog | (Comments Off)   

Sono già 6 i cumulative update rilasciati per SQL Server 2005 Service Pack 2.
Se da un lato questo è apprezzabile, dall'altro instilla qualche dubbio sia sulla qualità di SP2, che sulla frettolosità di certi rilasci "cumulativi".

Microsoft ha pubblicato un articolo della KB, che chiarisce le varie build rilasciate e le correla con i vari CU. Nello stesso articolo c'è già linkato il Cumulative Update 7, quindi per il Service Pack 3 c'è ancora da attendere, anche se molti ne stanno chiedendo a gran voce il rilascio, sul sito del Connect.

Filed under:
Exchange Server 2007: rollup 6 e rollup 1 per SP1
29 February 08 10:34 PM | claudiog | (Comments Off)   

Qualche giorno fa, Microsoft ha rilasciato l'Update Rollup 6 per Microsoft Exchange Server 2007 RTM, che non si applica alle versioni con SP1.

La notizia era linkata anche da una pagina che descrive le policy di update sia per la versione RTM (priva di SP1) che per SP1 e che punta sempre alle ultime versioni rilasciate, che sono sempre cumulative.
Da aggiungere ai bookmark :-)

Oggi Microsoft ha rilasciato anche l'Update Rollup 1 per SP1, che risolve un numero significativo (22!) di bugs.

Entrambi sono già disponibili anche via MU / WSUS

Claudio

Filed under:
Windows Server 2008: compatibilità e integrazione
29 February 08 07:00 PM | claudiog | 1 Comments   

Con il rilascio di Windows Server 2008 cominciano i progetti di implementazione e quindi le prime domande a cui rispondere.

La prima domanda che i clienti fanno è relativa alla compatibilità con altri prodotti server di Microsoft. A questo scopo Microsoft ha rilasciato un articolo della Knowledge Base, piuttosto dettagliato.

All'interno della KB, oltre ad elencare quali prodotti sono supportati già oggi e quali a breve con service pack (o mai più ...), viene indicata anche la compatibilità con le modalità Read Only Domain Controller (RODC). Peccato che manchi un articolo simile per la compatibilità con la modalità "Server Core".

Per i primi temerari (si sa ... i pionieri hanno le frecce nel ...) che stanno già iniziando il deployment del nuovo OS, ci sono alcune KB che potrebbero tornare utili, onde evitare problemi di integrazione con le strutture client e server esistenti:

Malfunzionamenti client dopo introduzione di un DC 2008
http://support.microsoft.com/kb/946405

Nuovo range di porte dinamiche
http://support.microsoft.com/kb/929851

Impossibile aprire files EFS dopo migrazione a 2008
http://support.microsoft.com/kb/948690

Come migrare Sysvol a NTFS-R
http://blogs.technet.com/filecab/archive/2008/02/08/sysvol-migration-series-part-1-introduction-to-the-sysvol-migration-process.aspx

Claudio

Filed under:
More Posts Next page »