Windows, GPRS e Bluetooth PAN
28 Agosto 2007
Quando sono in movimento mi collego alla rete aziendale utilizzando il telefonino GPRS (che sincronizza posta, agenda, ecc.). A volte, come ora, utilizzo il telefonino come modem di collegamento per lavorare con il PC.
Chi mi segue sa che da poco utilizzo un telefonino iPAQ 510 con Windows Mobile 6. In previsione delle ferie ho fatto delle prove di collegamento a Internet. Con mia piacevole sorpresa l’emulazione modem è sparita ed è stata sostituita da una accesso ad una PAN (Personal Area Network) Bluetooth. In pratica il telefonino è un dispositivo nella PAN e diventa una sorta di router verso Internet (attraverso il collegamento GPRS). Ovviamente per utilizzarlo da Vista non ho avuto alcun problema visto che il driver Bluetooth dell’IBM T60 che uso funziona benissimo e che non ci sono stati problemi di porte COM virtuali o quant’altro.
Appena tornerò in ufficio investigherò meglio sulle opportunità offerte da questo meccanismo.
Ferie
27 Agosto 2007
Me ne vado in ferie per qualche giorno in montagna con i bimbi. Ritornerò qui dopo il 10 di settembre (anche se non escludo qualche collegamento estemporaneo).
Windows, PowerShell e certificati
26 Agosto 2007
Una delle cose che più mi affascina nel sistema Windows è la forte integrazione presente tra vari elementi. E questa una particolarità che lo rende più adatto di altri in molti scenari aziendali. E per sistema Windows intendo sia i sistemi desktop che i server che altro. Fulcro principale di questa integrazione è sicuramente Active Directory, un contenitore gerarchico che si occupa di gestire le informazioni relative alla maggior parte degli elementi come utenti, computer, certificati, stampanti, applicazioni e altro.
Uno di questi elementi, fornito con il server Windows, sono i Certification Services. La mia esperienza nelle aziende mi induce a pensare che siano inspiegabilmente poco conosciuti e quindi poco installati. Questi servizi, integrati con Active Directory, forniscono a Windows una completa struttura di Certification Authority (CA) per la gestione dei certificati digitali standard che permette operazioni come la richiesta, la revoca e la distribuzione di questi elementi oggi fondamentali. Alcune di queste operazioni su alcuni tipi di certificati sono automatiche e trasparenti per l’utilizzatore. I certificati sono assolutamente standard tanto è vero che noi li utilizziamo anche nei nostri server Domino, Apache e WebSphere.
Oltre ad autentificazione e crittografia una delle funzionalità fornite da una struttura di certificati è la firma digitale del codice. Questo è molto importante per aumentare il livello di sicurezza del codice che viene eseguito nella rete. Ad esempio io li utilizzo anche per firmare gli script PowerShell.
In pratica un mio PC dove sviluppo il codice ha un livello relativamente blando di sicurezza (RemoteSigned) ma i server, invece, richiedono codice firmato. Quindi io scrivo uno script sul PC e, una volta testato, lo copio nel server e lo firmo per autorizzarne l’esecuzione. L’utilizzo del certificato rilasciato dalla CA integrata fa sì che la firma sia conosciuta da tutti i computer del dominio. Questo dovrebbe impedire l’esecuzione di script malevoli scritti da persone che non possono firmare digitalmente lo script utilizzando la CA o dovrebbe contribuire all’individuazione dell’autore.
Per attivare questi meccanismi (che peraltro possono essere usati per la firma di altro tipo di codice) ho utilizzato i Certification Services (installati come una CA di livello Enterprise). In questo modo ho una CA “autocertificata” che certifica tutti i certificati rilasciati (e questo mi permette di utilizzare certificati dove voglio all’interno della mia rete) e che sono riconosciuti dalle macchine, dagli utenti e dai software che fanno parte del dominio. Fatto questo ho abilitato il template per il Code Signing usando la console sul server. Sul PC dove voglio firmare lo script richiedo il certificato usando l’apposito plugin per MMC (digitando certmgr.msc si lancia una console con il plugin già caricato per i certificati personali).
A questo punto è possibile firmare il codice. Il resto è storia e ben descritto nell’help della PowerShell (digitate help about_signing). Comunque per farla breve ho dovuto impostare il livello di esecuzione del codice nella shell:
Set-ExecutionPolicy AllSigned
In seguito ho firmato lo script:
$cert = @(dir cert:\\CurrentUser\\My -codesigning)[0] Set-AuthenticodeSignature .\\mioscript.ps1 $cert
In questo modo ho potuto eseguirlo:
mioscript
Cosa succede se non firmo lo script? PowerShell si rifiuta di eseguirlo. Cosa succede se lo script è firmato con un certificato non noto (cioè un autocertificato o un certificato non facenti parte della stessa catena di autorizzazione)? Il sistema si rifiuta di eseguirlo.
Una nota sulla istruzione dir usata nel codice di cui sopra: utilizza l’accesso ai certificati attraverso un provider per gli store dei certificati.
Una linea di comandi PowerShell
25 Agosto 2007
Questa semplice linea di codice PS ha un pattern che mi è spesso utile: in questo caso particolare serve a cancellare tutti i file con estensione .bak nella directory c:\temp e che non sono stati modificati da 31 giorni:
Get-ChildItem c:\temp\*.bak
| Where-Object { $_.LastWriteTime -lt
($(Get-Date) - $(New-TimeSpan -day 31))}
| Remove-Item
Il nucleo di tutto è nella cmdlet Where-Object che filtra l’output della cmdlet Get-ChildItem (l’equivalente di DIR) prelevando solo ai file che soddisfano la condizione e mandando questi in pasto alla cmdlet Remove-Item (l’equivalente di DEL). Il comando Get-ChildItem ha diversi parametri interessanti come la visita ricorsiva dell’albero delle directory o inclusione ed esclusione di file.
La condizione del filtro Where-Object utilizza l’aritmetica delle date. Il comando $(New-TimeSpan -day 31) produce un TimeSpan di 31 giorni. TimeSpan è una vecchia conoscenza di chi lavora in .NET e rappresenta una differenza temporale. Quindi il comando ($(Get-Date) – $(New-TimeSpan -day 31)) produce la data precente di 31 giorni quella di oggi. Il resto è un semplice confronto con l’attributo che memorizza l’ultimo tempo di scrittura del file.
Il pattern citato all’inizio del post è il seguente
- dammi una pipe di oggetti
- seleziona gli oggetti nella per produrre un’altra pipe
- fai qualcosa con gli oggetti selezionati
Direi che il 90% dei miei comandi di manipolazione “massiva” in PS seguono il pattern descritto. Ci sono poi eccezioni ma solitamente è così anche usando la shell in ambienti “ospiti” diversi dal sistema operativo. Il rimanente 10% si divide in comandi semplici e diretti e in file di script per operazioni più articolate.
Mi domando cosa fa il resto del mondo.
Tool per calcolare il ROI di Vista
24 Agosto 2007
Vista, Sharepoint e Office troppo autentificati!
22 Agosto 2007
L’altro giorno mi è capitato da un cliente che l’accesso da Vista a documenti Office memorizzati su librerie Sharepoint richiedesse di nuovo una autentificazione. E questo sia che si usasse l’autentificazione Kerberos che quella NTLM integrata. In attesa di capire perchè ciò accade e in ossequio alla regola “soluzioni, non spiegazioni” ho trovato questo post che segnala un workaround:
http://www.pranavsharma.com/archives/2007/08/office_authenti.htm
Nella ricerca di una soluzione ho anche verificato che Kerbtray, il tool di Microsoft che mostra i ticket Kerberos, funziona anche su Windows Vista.
E se…
20 Agosto 2007
Stavo guardano HDView, una tecnologia interessante che combina immagini megapixel, zoom, panorami. Non un concetto assolutamente nuovo ma sicuramente molto ben realizzato.
E se ci aggiungessimo una interfaccia di programmazione 3D (WPF) e un sistema di interazione multitouch?
Quanto è sicuro Vista?
17 Agosto 2007
Jef Jones (sicuramente una persona di parte visto che lavora per Microsoft) si è preso la briga di analizzare la sicurezza dei sistemi Windows e confrontarla con quella di altri sistemi. Lascio a voi la lettura del post.
Notes e Domino 8
17 Agosto 2007
IBM ha rilasciato, sotto forma di download elettronici, le nuove versioni di Notes e Domino. Per gli utenti di Vista è interessante notare che Notes 8 (il client) dovrebbe supportare il sistema operativo completamente. Notes 7.0.2 funzionava anche su Vista ma con Notes 8 dovrebbero sparire diversi problemi. Questo dovrebbe permettere anche agli utenti di Notes/Domino un passaggio più dolce a Vista.
E’ bello vedere che un’altra applicazione molto presente sul mercato è finalmente pronta completamente per Vista. Appena l’avrò provato vi farò sapere come va. Avendo tempo sarebbe anche bello confrontare le due interpretazioni del mondo della collaborazione che danno IBM (con Lotus Notes/Domino, Quickr, Connections, Sametime e IBM WebSphere Portal Server) e Microsoft (con Windows, Office, Sharepoint, Office Communication Server, Exchange) ma non penso proprio che un paio di brevi post basterebbero.
Ancora sul DRM di Vista
14 Agosto 2007
Qualche tempo fa ho parlato del DRM di Vista e ne ho anche dibattuto. Sostanzialmente io penso che molte delle notizie allarmistiche che circolavano e che, purtroppo, continuano a circolare siano fondamentalmente non vere. Sono interessanti in particolare le teorie di Gutmann che hanno avuto una ripresa estiva su diversi magazine grazie ad una sua presentazione a USENIX Security Symposium (e alla carenza di altre notizie più succose, probabilmente). Vi rimando quindi a questo interessante post di George Ou: Claim that Vista DRM causes full CPU load and global warming debunked!.
E comunque, per i più pigri, ricordo che un PC non è altro che uno dei tanti dispositivi che supportano il DRM sui filmati ad alta definizione. E probabilmente non è neppure il più diffuso.