mainSlogopaceclick Blog  · informatica · elettronica · astronomia..

Connettersi ad un RaspberryPi tramite Remote Desktop Protocol (RDP) usando XRDP

Chi ha detto che per usare un RaspberryPi si debba per forza usare SSH o un monitor esterno con tastiera dedicata?

Un modo semplice per avere a disposizione il Desktop (o Scrivania) connettendosi comodamente dal proprio PC è tramite il Remote Desktop Protocol.

undefined

In questo modo il Raspberry potrà essere lasciato connesso solamente alla Ethernet, senza altri fastidiosi cavi.

1. Connettersi al Raspberry tramite SSH

Preparare il Raspberry con una distro Debian come Raspbian (o Kali Linux), e connettersi tramite SSH.
Per connettersi tramite SSH usare Putty (su Windows) o il comando (da Linux):

ssh pi@192.168.x.x

dove al posto di x dovrete inserire il vero ip del raspberry; la password di default di raspbian per l'utente 'pi' è 'raspberry'.

Una volta connessi, eseguite un update dei packages con

sudo su
apt-get update

2. Installare XRDP

apt-get install xrdp

3. Avviare il servizio

service xrdp start
service xrdp-sesman start

4. Impostare l'auto avvio del servizio all'accensione

update-rc.d xrdp enable

5. Connettersi tramite RDP

A questo punto il Raspberry è pronto, possiamo anche dimenticarci l'SSH.

Apriamo l'applicazione (client) desktop remoto che preferiamo, e connettiamoci in via remota.

undefined

Usare un RaspberryPi come server DNS locale per tradurre indirizzi locali in IP locali tramite DnsMasq

Il server DNS consente di convertire la stringa dell'URL cercato sul browser, nell'indirizzo IP del server remoto.

Di norma ogni ISP ha i propri server DNS autoritativi (che vengono interpellati per ogni richiesta dal router), molte volte tuttavia si opta per l'uso di quelli di Google o degli OpenDNS, andando a modificare manualmente il proprio Sistema Operativo o il router stesso.
E' infatti risaputo che i server DNS di Google siano molto più veloci nelle risposte, e abbiano molti più indirizzi in cache rispetto a quelli degli ISP sparsi per il mondo.

undefined

Un server DNS locale può servire a due utilizzi:

  1. velocizzare la navigazione, tenendo in cache gli indirizzi che vengono maggiormente richiesti dalla rete casalinga (o aziendale), e inoltrando la richiesta verso un server DNS esterno solo in caso di necessità (esempio un indirizzo non i cache)
  2. consentire la traduzione di DOMINI locali in IP locali, funzione interessantissima in ambito aziendale ma anche casalingo

Consideriamo per esempio l'uso di un NAS locale, sull'indirizzo 192.168.1.8:

ogni volta che ci dovremmo connettere, avremmo da inserire tale (scomodo) IP.

Avendo un server DNS autoritativo locale:

potremmo invece decidere di assegnare un NOME A DOMINIO a tale IP, come ad esempio nas.myhome, e fare si che venga risolto sull'indirizzo IP del NAS stesso.

In questo modo nel browser (quando siamo in rete locale, ma anche tramite VPN) non ci resterà che digitare nas.myhome, come se fosse un normalissimo sito web pubblico.

In aggiunta, usando questo metodo, sarà possibile anche incrementare la sicurezza, andando ad impostare una blacklist globale sui nomi a dominio che non vogliamo vengano risolti.

Ovviamente perché tutto funzioni dobbiamo fare in modo che TUTTE le richieste DNS locali vengano risolte dal nostro server DNS autoritativo locale, e che questo non vada mai offline, per evitare impossibilità di risolvere indirizzi.

Una comoda soluzione a basso costo può essere l'uso di un RaspberryPi, vediamo come configurarlo.

Mini guida per il setup di RaspberryPi

Preparare il Raspberry con una distro Debian come Raspbian, e connettersi tramite SSH (o aprire il terminale se connessi con tastiera e schermo).
Per connettersi tramite SSH usare Putty (su Windows) o il comando (da Linux):

ssh pi@192.168.x.x

dove al posto di x dovrete inserire il vero ip del raspberry; la password di default di raspbian per l'utente 'pi' è 'raspberry'.

Una volta connessi, eseguite un update dei packages con

sudo apt-get update

Adesso assegnate un IP statico al raspberry:

sudo nano /etc/network/interfaces

il file deve sembrare così

auto lo

iface lo inet loopback

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

auto wlan0
iface wlan0 inet static
address 192.168.1.190
gateway 192.168.1.1
netmask 255.255.255.0

auto eth0
iface eth0 inet static
address 192.168.1.190
gateway 192.168.1.1
netmask 255.255.255.0

(ovviamente al posto di .1.190 e .1.1 inserite gli indirizzi che vi competono)

salvare con Ctrl+X, e premendo Y, confermando con Invio, 
poi riavviare con

sudo reboot

e controllare che l'indirizzo sia corretto con il comando

ifconfig 

 

Configurare il server DNS Locale

Installare DNSMASQ:

sudo apt-get install -y dnsmasq

adesso il servizio DNS sarà già attivo, andiamo ad interromperlo per poterne modificare la configurazione

sudo service dnsmasq stop

configuriamo adesso il server DNS con il comando

sudo nano /etc/dnsmasq.conf

si aprirà l'editor di testo sul terminale, 
il file di configurazione mostrato sarà tutto commentato (con '#' all'inizio di ogni frase),
potete anche lasciare tutto intatto per consultazioni future, l'importante è inserire all'inizio le stringhe di configurazione che seguono:

# DOMAIN CONFIG
domain=raspberry.myhome
resolv-file=/etc/resolv.dnsmasq
min-port=4096

# FORWARDING DNS SERVERS
server=8.8.8.8
server=8.8.4.4
server=208.67.222.222
server=208.67.220.220

# LOCAL CACHE SIZE
cache-size=10000

# LOCAL ADDRESSLIST
address=/nas.myhome/192.168.1.8

# BLACKLIST
address=/double-click.net/127.0.0.1

# qui di seguito tutto il file originale..

NOTE

  • i 4 server di forwarding sono rispettivamente 2 Google e 2 OpenDns
  • il dominio .myhome può essere cambiato a piacere, ma NON deve essere un dominio usato pubblicamente (esempio .net), evitare anche il famoso .local
  • potete inserire nella Local-AddressList, tutti gli indirizzi locali che volete risolvere in IP (locali o anche pubblici)
    -ovviamente è anche possibile eseguire override di indirizzi comuni (DNS Spoofing)
    -nel mio caso ho inserito la risoluzione dell'IP del mio NAS su un dominio personalizzato (.myhome)
    -potete aggiungere una nuova riga per ogni altra mappatura
  • tutti i domini inseriti nella blacklist non risulteranno più raggiungibili dalla rete locale (perchè mappati sul loopback)

salvare con Ctrl+X, e premendo Y, confermando con Invio.

Riavviare il servizio dnsmasq

service dnsmasq start

NOTA: DnsMasq è in grado di fungere anche da server DHCP, ma nel nostro caso lo useremo solamente come server DNS.

Adesso il nostro server DNS locale è pronto per poter essere usato

Per poter usare il nostro server DNS locale, andiamo sul PC o sul router nella sezione di configurazione DNS, ed inseriamo come server DNS primario l'indirizzo IP statico precedentemente assegnato al nostro Raspberry.

E' buona norma inserire anche un server DNS secondario, usato in caso di malfunzionamento o irraggiungibilità del nostro server DNS locale, possiamo ad esempio inserire quello di Google (secondario: 8.8.4.4).

Facciamo un test da un computer in LAN con i comandi:

nslookup google.it
nslookup nas.myhome

la risposta sarà corretta se proveniente dal server DNS locale, ovvero del tipo:

Server: 192.168.1.190
Non-authoritative answer:
Name: google.it
Address: 216.58.205.67

oppure

Server: 192.168.1.190
Non-authoritative answer:
Name: nas.myhome
Address: 192.168.1.8

in ogni caso avendo impostato un DNS secondario, in caso di disconnessione del raspberry, sarà comunque possibile navigare tranquillamente.

Indirizzo IP pubblico: cosa è, come individuarlo da terminale o da prompt, e come funziona il DDNS per raggiungere un dispositivo dall'esterno

Un computer o un qualsiasi dispositivo, quando connesso ad una rete (LAN), viene identificato tramite un indirizzo IP assegnato dal router.

L'indirizzo, di solito nella forma 192.168.X.Y viene rilasciato dal DHCP del router per identificare i vari dispositivi ad esso connessi.

Tuttavia essendo il router stesso connesso alla rete internet (WAN), e fungendo da gateway per l'instradamento delle richieste locali verso l'esterno (NAT), anch'esso avrà un indirizzo IP rilasciato dal proprio gestore di telefonia (ISP).

undefined

Questo indirizzo IP viene comunemente chiamato IP Pubblico (o External IP), perché identifica il primo dispositivo connesso alla rete locale (quindi il primo da contattare per raggiungere la propria LAN dall'esterno).

A seconda dei gestori, tale IP può essere in forma statica o dinamica, ovvero può essere fisso ad ogni connessione del router, o cambiare.
In genere gli ISP rilasciano IP pubblici dinamici, per evitare identificazioni degli utenti che potrebbero portare ad attacchi.

In questo modo, ogni volta che accendiamo il router, esso richiederà un nuovo IP pubblico al gestore (che come detto sarà ogni volta diverso).

Come identificare facilmente l'IP pubblico?

1. tramite router, nella pagina di status principale vedremo tutte le impostazioni correnti, compreso l'IP pubblico del provider

2. tramite browser, attraverso uno dei tanti siti web appositi, come ad esempio: whatismyipaddress.com

3. tramite bash linux, con il comando:

 curl ifconfig.me

che mi sembra il più facile da ricordare, in alternativa comunque esistono anche altri (in ogni caso avremo bisogno di curl installato)

 curl ipecho.net/plain ; echo
 curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

4. tramite prompt di windows, con il comando:

 nslookup myip.opendns.com. resolver1.opendns.com

oppure tramite powershell:

 Invoke-WebRequest ifconfig.me/ip


A cosa mi serve conoscere il mio IP pubblico

Può servire nei casi in cui abbiamo bisogno di raggiungere un dispositivo connesso alla nostra LAN (esempio: a casa) dall'esterno (esempio: da lavoro).

Per fare questo bisognerà impostare nel router un port-forwarding, ovvero 'aprire' una determinata porta sull'IP interno del dispositivo.

In tal modo basterà digitare (da qualsiasi parte del mondo), IPPubblico:PortaAperta per inoltrare la richiesta di connessione attraverso il nostro router, verso il dispositivo locale.

Dynamic DNS come funziona

Poichè come detto prima, l'IP pubblico nella quasi totalità delle volte cambia ad ogni accensione del router, come faccio a sapere ogni volta che IP è stato assegnato se sono fuori casa?

Esistono dei servizi di DDNS, ovvero dynamic DNS, che consentono di ovviare a tale problema.
Consentono inoltre di evitare di doversi ricordare l'indirizzo IP stesso (una scomoda sequenza di numeri), in favore di una parola a piacere.

Ce ne sono diversi, come ad esempio noip.com (che di solito è supportato dalla quasi totalità dei router; in ogni caso prima di scegliere un servizio in favore di un altro, verificate se supportato dal vostro router).
Dopo essersi registrati al sito, occorrerà scegliere un indirizzo DNS personalizzato (ovvero un nome a dominio usato per reindirizzarvi al vostro IP).
Esempio: provaaccesso.noip.com

A questo punto basterà configurare nella apposita sezione del router questo DDNS.
Il router stesso provvederà ad aggiornare il DDNS ad ogni cambio di IP Pubblico!

In questo modo, da qualsiasi parte del mondo voi siate, potrete accedere alla vostra rete domestica (LAN) semplicemente digitando:

provaaccesso.noip.com:PortaAperta

dove PortaAperta è la porta precedentemente aperta sul router, con destinazione l'IP del dispositivo che vogliamo raggiungere

 

ATTENZIONE ALLA SICUREZZA:

come tutti sappiamo esporre i dispositivi alla rete senza alcun firewall non è mai consigliabile.
I router di solito applicano il firewall di default proprio per evitare che qualcuno acceda ai vostri dispositivi locali dall'esterno.

Tuttavia molte, moltissime volte gli utenti non cambiano la password di accesso al router stesso, rendendo disponibile ad un eventuale attaccante l'accesso a tutte le impostazioni di rete dall'esterno.
Per questo motivo, se configurate un DDNS, assicuratevi che la vostra rete sia ben protetta (argomento per il quale non basterebbe un solo post per descrivere tutti i passaggi).

Assicuratevi che il router abbia una password sicura, che abbia il firewall attivo, e, magari, che sia bloccato l'accesso alle impostazioni di rete dall'esterno (dalla WAN).

 

Phishing portato a livelli estremi sfruttando Punycode: come funziona, come prevenire ed essere sicuri dei siti web aperti tramite SSL

Punycode è un sistema di codifica che serve a rappresentare una sequenza di caratteri unicode tramite una sequenza di caratteri ASCII, per rendere possibile l'uso di tali sequenze nei nomi di dominio, senza dover modificare infrastrutture e standard esistenti.

In questo modo si possono gestire nomi di dominio internazionalizzati (IDNA) aggiungendo all'inizio della stringa punycode i caratteri 'xn--'.

Ad esempio, inserendo come indirizzo xn--google.com, vedremo il browser mostrare la stringa convertita in caratteri cinesi:

undefined

La traduzione di sequenze Punycode nella codifica originaria è a carico dello user agent (applicazione installata sul computer dell'utente che si connette al server) nel browser .

Il problema è che come tutti i nomi a dominio internet registrati, è possibile creare delle sequenze punycode ad-hoc per mostrare all'utente una stringa convertita totalmente a piacere.

Ad esempio, se inseriamo nel browser la stringa (procedete solo a vostro rischio e pericolo) punycode "xn--80ak6aa92e.com", la vedremo istantaneamente venire convertita in "apple.com".

Ovviamente il sito aperto non sarà quello ufficiale Apple, ma in realtà sarà sempre il sito "xn--80ak6aa92e.com", solo che il nostro browser ci visualizzerà il testo transcodificato in ASCII.

In breve il browser viene tratto in inganno, e con lui l'utente, vediamo l'esempio:

se inseriamo:

undefined

e premiamo invio, avremo in risposta:

undefined

da notare la presenza di un certificato SSL (DV) sul sito fasullo, che crea un FALSO senso di sicurezza

 

LA DIFFERENZA CON QUELLO VERO

undefined

in questo caso il certificato SSL (OV o EV) certifica l'effettiva corrispondenza dell'azienda.

 

Il fenomeno del 'phishing' (tipo di truffa effettuata su internet, specialmente a mezzo e-mail) cerca sempre nuove strategie per trarre in inganno gli utenti, spingendoli a cliccare su link che SEMBRANO essere affidabili ma che in realtà REINDIRIZZANO verso pagine web spesso dannose.

Si tratta di attacchi di social-engineering nei quali un malintenzionato cerca di ingannare la vittima convincendola a fornire informazioni personali, dati finanziari o codici di accesso, fingendosi un ente affidabile in una comunicazione digitale.

PRIMA REGOLA: PREVENZIONE

Quando ricevete email di dubbia provenienza, diffidate dal cliccare sui link proposti, specialmente se legati in qualche modo ad istituti bancari o di credito.
Fare specialmente attenzione all'indirizzo di provenienza, e prima di cliccare su un link, controllare quale sia la sua effettiva destinazione.

Esempio:

un link visualizzato come "apple.com", potrebbe in realtà essere destinato al precedente "xn--80ak6aa92e.com" (questo potrebbe derivare da una formattazione HTML costruita apposta per l'occasione)

in questo caso tuttavia, basterà posizionarsi con il mouse sopra al link e controllare il vero collegamento leggendo il popup che appare (di solito) in basso a sinistra del programma di posta

 

SECONDA REGOLA: CONTROLLO

Una volta cliccato su un link, come fare a sapere che il sito aperto è effettivamente quello sicuro?

L'unica arma di difesa in questo caso è il certificato SSL, che può essere di 3 tipi:

  • DV Domain Validation: garantiscono una connessione cifrata con il server, ma non garantiscono sulla corrispondenza aziendale al nome visualizzato.
  • OV Organization Validation & EV Extended Validation: oltre alla cifratura con il server, garantiscono verifica sull'effettività dell'azienda.

 riguardando le immagini precedenti potrete notare la differenza.

 

Come visualizzare in chiaro le password immesse dai browser o nascoste da pallini o asterischi

Tutti i browser di ultima generazione consentono di memorizzare le password immesse dall'utente, in modo da auto inserirle nei moduli alla successiva visita del sito.

Lo faceva Internet Explorer, ma adesso anche Firefox, Edge, e Chrome.

undefined

Per IE ed Edge, le password sono cifrate nel Vault di Windows, per Firefox e Chrome invece no:
in quest'ultimo per esempio non è possibile impostare una 'master password' per cifrare i dati memorizzati.

Ma la questione è, serve veramente? No.

Perchè in ogni caso, il browser, quando andrà a riempire il modulo web, dovrà comunque inserire la password in chiaro, come se la stessimo inserendo noi da tastiera.

Quindi anche cifrando il database delle password salvate si potrebbe facilmente risalire alle originali usando un semplice browser.

Come risalire alla password immessa se compare come serie di pallini o asterischi?

Basta aprire il browser in cui abbiamo memorizzato la password, ed aprire il sito.

A questo punto lasciare auto completare i campi dal browser, la password apparirà come una serie di pallini:

undefined

Adesso, basta cliccare con il destro sul campo della password, e selezionare 'ispeziona elemento'.
NOTA: a seconda del browser in uso è possibile che non compaia tale voce, in ogni caso si può sempre aprire il pannello 'strumenti di sviluppo' con F12; da qui selezionare il pulsante che ha come icona un puntatore, ed in seguito andare a selezionare il campo della password.

Si aprirà il pannello con il codice DOM della pagina (in modo estremamente semplificato è il sorgente con anche le modifiche dell'utente) con già selezionata la riga del codice in cui viene immessa la password.

Avrà uno stile come questo:

undefined

 

Non dobbiamo fare altro che doppio clic sul parametro type="password" e modificarlo semplicemente in type="text" (premere poi il tasto Invio).

undefined

In questo modo vedremo istantaneamente nella pagina web i pallini scomparire e convertirsi in testo: la nostra password. 

Creare sparse files, con lunghezza a piacere in Windows e Linux

Un file sparso (dall'inglese sparse file), è un tipo di file per cui si cerca di occupare in maniera più efficiente lo spazio del file system nei casi in cui il file sia prevalentemente vuoto.

Il vantaggio dei file sparsi consiste nel fatto che lo spazio fisico nel file system viene allocato solo quando è effettivamente necessario: si risparmia spazio e si possono creare file di grandi dimensioni anche se lo spazio libero nel file system è insufficiente.

undefined

Tra gli svantaggi dell'uso di file sparsi:

Essi possono diventare frammentati, in quanto lo spazio nel file system viene allocato a mano a mano che le aree vuote sono riempite, e quindi non è necessariamente contiguo. Le informazioni sullo spazio libero nel file system possono essere fuorvianti se si considera la dimensione apparente dei file sparsi.

Uso

Un uso tipico dei file sparsi è per il testing delle connessioni di rete o per i benchmark degli hard disk: si creano file di grandi dimensioni con un semplice comando, che poi saranno utilizzati per capire la velocità di copia/trasferimento dei vari dispositivi.

Creazione su Windows

Da prompt dei comandi, dirigersi in una cartella

cd C:

eseguire il comando

fsutil file createnew <filename> <length>

la lunghezza deve essere inserita in Byte, esempio

fsutil file createnew myfile.txt 1000000000
(=1GB)

fsutil file createnew myfile.txt 2500000000
(=2.5 GB)

undefined

Creazione su Linux

dd if=$INPUT-FILE of=$OUTPUT-FILE bs=$BLOCK-SIZE count=$NUM-BLOCKS

Dove:

  $INPUT-FILE deve sempre essere /dev/zero per file di grandi dimensioni (vuoti).
  La dimensione totale del file sparso sarà $BLOCK-SIZE * $NUM-BLOCKS.
  Il nuovo file sarà chiamato come $OUTPUT-FILE.

Esempio:

dd if=/dev/zero of=file_sparso bs=1024 count=1

bs è la dimensione di uscita in Byte.

Installare e configurare Apache Web Server su Ubuntu o su Debian

Per creare un web server basato su Apache, appoggiandosi ad una comune macchina Ubuntu o Debian, procedere come segue.

undefined

1. Installare Apache

sudo apt-get update
sudo apt-get install apache2

Per verificare se correttamente installato, andare sul sito

localhost

dovreste trovare scritto 'It works!'

2. Configurare

Tutti i file di configurazione si trovano in

"/etc/apache2"

si può visualizzare tramite terminale con 

cd /etc/apache2
ls -F

apparirà

apache2.conf    envvars       magic             mods-enabled/     sites-available/
conf.d/ httpd.conf mods-available/ ports.conf sites-enabled/

tra i quali, i più importanti

apache2.conf: la configurazione del webserver
sites-available/: contiene i virtual host

3. Aggiungere i file del sito da esporre

Come includere i propri files php (o html) in modo da poterli esporre ad Apache, posizionarli nella cartella:

/var/www

Nota

La cartella necessita di permessi di root per essere modificata.
E' possibile (ma sconsigliato) modificare questi permessi con il comando:

sudo chown <user> /var/www

dove al posto di <user> dovrete inserire il vostro nome utente (questo comando va applicato anche a tutti i file predefiniti all'interno).
Si potrà in questo modo copiare direttamente da Nautilus.

Per copiare i file da terminale, senza modificare i permessi della suddetta cartella (consigliato per questioni di sicurezza), il comando è:

sudo cp <file da copiare> /var/www

Abilitare WebGL 2.0 sui principali browser

Per le canvas create in WebGL 1.0 non ci sono problemi, tutti i browser sono già automaticamente compatibili, tuttavia se visualizzate un immagine nera, senza possibilità di utilizzo, vuol dire che la canvas viene gestita da WebGL versione 2.0 o successiva.

Per abilitare WebGL 2.0 e le altre versioni sperimentali di WebGL sul proprio browser seguire queste istruzioni.

undefined

Chrome

Si può abilitare nella sola apertura corrente con:

--enable-unsafe-es3-apis

nella linea di comando dell'applicazione, esempio:

C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --enable-unsafe-es3-apis

Altrimenti per una attivazione permanente, andare su

about:flags

ed attivare

"Estensioni bozza WebGL"
"Prototipo di WebGL 2.0"

Il contesto 2.0 può essere creato con l'ID “webgl2”.

Firefox

Andare su

about:config 

e creare una nuova preferenza booleana con il nome:

webgl.enable-prototype-webgl2

creare a questo punto un contesto compatibile

var gl = somecanvas.getContext("experimental-webgl2");

Edge

Si possono seguire le informazioni sulla documentazione ufficiale.

(fonte)

Come calcolare gli Hash MD5, SHA1, SHA-256, CRC32 in Windows, Linux, Mac e online

Cosa sono

Gli Hash sono usati in informatica per mappare una stringa (una sequenza di bit) di lunghezza arbitraria in una stringa di lunghezza predefinita.

E' una sorta di 'firma' di un documento elettronico. Per ogni stringa si può calcolare un hash, quindi ogni stringa diversa avrà hash diverso.
Tuttavia calcolando 2 volte l'hash di uno stesso file (stringa) si avrà come risultato lo stesso output.
Hash calcolati con algoritmi diversi, ovviamente daranno diverso risultato.

undefined

Vengono usate per verificare l'integrità dei file (usati per questo anche in informatica forense).
Per esempio quando scaricate una ISO di Windows, sotto il link per il download troverete la corrispondente chiave SHA1.

undefined

Ebbene, una volta scaricato sul PC, per verificare che il file sia integro (privo di errori di trasmissione o di manomissioni volontarie per via di attacchi MITM) basterà ricalcolare l'hash in locale e confrontarlo con la stringa fornita online.

Approfondimento sugli Hash, qui.

Windows 

E' possibile usare CertUtil:

CertUtil -hashfile c:\path\filename.ext <algoritmo>

al posto di <algoritmo> inserire uno tra questi: MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512.

In alternativa è possibile utilizzare l'utilità File Checksum Integrity Verifier (FCIV) per calcolare i valori hash crittografici MD5 o SHA-1 di un file.

FCIV -md5 -sha1 c:\path\filename.ext

Non è possibile generare CRC32, tuttavia per Windows esiste anche un utilissimo programma gratuito di Nirsoft,
HashMyFiles, prelevabile dal relativo sito, che permette il calcolo da GUI anche con tale algoritmo.

undefined

Linux

Per calcolarlo di una stringa:

$ echo abcdefg.. | md5sum
$ echo abcdefg.. | sha1sum

Per il calcolo CRC32 di un file:

$ cksum /path/filename.ext

Per il calcolo MD5 o SHA di un file:

$ md5sum /path/filename.ext
$ sha1sum /path/filename.ext
$ sha256 /path/filename.ext
$ sha512 /path/filename.ext

Per verificarlo:

$ sha256sum -c /path/filename-CHECKSUM

in questo caso, se il calcolo coincide, verrà dato un OK.

Mac OS

md5 /path/filename.ext
shasum -a 1 /path/filename.ext
shasum -a 256 /path/filename.ext
crc32 /path/filename.ext

Calcolo online

E' possibile anche usare dei tool online.
Uno di questi è sicuramente OnlineMD5.com, che ci permetterà di calcolare gli hash MD5 e SHA sia per file che per stringhe di testo direttamente da browser e senza caricare fisicamente il file.

Come visualizzare il product key di Windows 10 per una installazione pulita

undefined

1.

Aprire un prompt dei comandi come amministratore, lo trovate con un click destro sul logo del menu start.

2.

Digitare il seguente comando:

wmic path SoftwareLicensingService get OA3xOriginalProductKey

e premere invio.

Alternativa da PowerShell:

aprire una PowerShell come amministratore ed eseguire i comandi

Set-ExecutionPolicy RemoteSigned
.\GetProductKey.ps1


Il product key di Windows attualmente installato verrà visualizzato.

E' possibile utilizzare questo codice per una installazione pulita (es. da ISO).

Nota: Windows 10 utilizza un metodo di attivazione diverso dai precedenti, infatti viene generata una firma digitale del computer e viene salvata sui server Microsoft. In tal modo alla reinstallazione, in via teorica non ci sarà bisogno di alcun product key (viene riconosciuto lo 'stesso' computer).
Questo tuttavia succede per tutti quei PC che hanno ricevuto un aggiornamento da un vecchio sistema a Windows 10.
Per quanto riguarda i computer acquistati con già Windows 10 a bordo, questo è invece un buon modo per salvare il codice e poterlo rimettere uguale alla successiva installazione.

Cosa sono i link simbolici tra cartelle e come usarli per aumentare spazio sull'hard disk del sistema operativo

Quando installiamo un grosso programma su Windows, vengono creati dei link nel registro di sistema che gli fanno tenere traccia della posizione reale dei file eseguibili.

Per questo motivo, se spostiamo un programma in una partizione secondaria, smetterà di funzionare (i link si interrompono).

Come fare a garantire la continuità di questi collegamenti?
Con Giunzioni o Link Simbolici.

undefined

Il comando mklink fa credere a Windows che i file nella cartella siano tutti memorizzati nel percorso originario, quando in realtà sono stati spostati in una partizione esterna.

Come fare

1.

Selezionare la cartella contenente il software da spostare altrove e procedere a tale operazione.

2.

Creare un 'link simbolico' aprendo un prompt dei comandi con i diritti di amministratore.
Il comando mklink consente di fare in modo che le richieste di accesso per i file presenti nella directory che conteneva originariamente i file dell'applicazione vengano automaticamente reindirizzate verso la cartella di destinazione (quella in cui sono realmente).

3.

Eseguire il comando:

mklink /D "cartella di reindirizzamento" "cartella contenente realmente i file"

Esempio (dopo lo spostamento del programma pippo da C: a D:):

mklink /D "C:\Program files\pippo" "D:\App\pippo"

In questo modo:

  • Tutti i riferimenti alla vecchia cartella 'pippo' in C: rimarranno validi, i file saranno 'pescati' da D:, non saranno presenti realmente in C:
  • Tutte le operazioni di spostamento, copia, eliminazione, avranno effetto sulla directory reale (in D:).

Esempi

1.

Come vedere la cartella G:\Foto dentro la cartella Immagini in C:

cd %userprofile%\Pictures (per entrare nella cartella Immagini di Windows)
mklink /D Foto G:\Foto

2.

Come vedere la cartella Video che è su un'unità di rete nella cartella Video Pubblica in C:

cd C:\users\public\video
mklink /D NetworkVideo \\DiscoDiRete\Video

3.

Come creare una cartella sul Desktop e vederla su OneDrive

cd C:\users\<nome utente>\OneDrive
mklink /D CartellaSincronizzataDaDesktop C:\users\<nome utente>\Desktop\CartellaSincronizzata

Note

1.

dir /al

Con tale comando si potrà vedere la lista ti tutte le giunzioni o link eseguiti o presenti in una cartella. 
Prima di usarlo posizionarsi nella cartella da verificare.

In alternativa ci sono dei programmi come NTFSLinksView di NirSoft:

undefined

2.

mklink /J ...  genera una 'junction'

mklink /D ... genera un 'link simbolico'

La differenza sostanziale è che le junction possono essere create anche sui singoli file ma non supportano i percorsi relativi (i link simbolici solo su cartelle ma supportano anche percorsi relativi); in sostanza io preferisco e consiglio di usare link simbolici su cartelle.

3.

mklink ... funziona su Windows 7 - 8 - 10

linkd ... analogo per Windows XP - 2000

Allineamento delle partizioni da HDD verso SSD, come si verifica

Quando compriamo un nuovo SSD per installare da zero un sistema operativo, non ci sono problemi. 
Windows provvederà ad effettuare da subito il corretto allineamento.

undefined

Tuttavia se si esegue una migrazione di dati da un HDD verso un SSD, può capitare (anzi capita spesso) che la partizione non venga allineata come dovrebbe.

Questo perché negli HDD vengono lasciati liberi i primi 63 blocchi, negli SSD invece i primi 64 (prima dell'inizio della 1° partizione).

 

undefined

Gli SSD sono composti da 'pagine' e i dati vengono scritti in 'blocchi'; questi ultimi vengono suddivisi in settori, e dovrebbero essere scritti a partire dall'inizio di una pagina fisica.
Come analogia, sarebbe come iniziare ad incidere sul lato A di un nastro non all'inizio, così da dover finire gli ultimi minuti sul lato B: c'è uno spreco di spazio, ed una significativa perdita di prestazioni.
Il controller ogni volta deve leggere da 2 pagine differenti, anzichè da 1 (nell'esempio del nastro, la perdita di tempo sarebbe il 'girarlo').

Allineare l'SSD quindi porta ad un incremento notevole delle prestazioni R/W.

NOTA: l'allineamento deve essere fatto una sola volta, quando si passa da un HDD a un SSD tramite l'uso di programmi di clonazione.

1. Verificare se c'è bisogno di allineamento

Andiamo su un prompt dei comandi (click destro sul logo di windows del menu start), e digitiamo:

C:\Windows\System32> msinfo32
[premere invio]

Andiamo nella sezione

 Componenti > Archiviazione > Dischi

nella sezione di destra apparirà una lista di dati per ciascuna partizione,
a questo punto per la prima partizione (Disco #0, Partizione #0), leggete il valore in Byte chiamato

'Offset avvio partizione'

undefined

A questo punto aprite la calcolatrice di Windows e provate a dividere quel valore per 4096.

  • Se il numero è divisibile (il risultato è un numero intero qualsiasi, esempio 512), il disco è allineato.
  • Se il numero non è divisibile (il risultato è un decimale, esempio 284.65), il disco è da allineare.

2. Allineare l'SSD 

Non è necessario reinstallare tutto, si può optare per dei tool di partizionamento gratuiti come MiniTool Partition Wizard 

Nel tab di sinistra troverete il pulsante 'Align all partitions', in quello di destra selezionate il disco da allineare (il vostro SSD con il SO), e confermate con Apply in alto.

undefined

Il tool vi indicherà di riavviare poiché il disco è in uso e che eseguirà l'allineamento al riavvio.

Consigliamo come sempre di eseguire un backup dei vostri dati PRIMA di eseguire un'operazione come questa.

PC lento? Come controllare i processi che intasano l'interrupt di sistema e le richieste DPC

Se ci capita di vedere il PC lento e, aprendo Task Manager, se vediamo che l'interrupt di sistema consuma molta CPU, come possiamo stabilire quale è il driver da rimuovere?

Cosa è:

Infatti l'interrupt è una richiesta asincrona che esegue un componente hardware in seguito ad un suo evento sincrono (di esecuzione).
In caso di interrupt, la CPU sospende l'esecuzione in corso e si dedica a quella richiesta, per poi tornare alla precedente.

Se però da Task Manager vediamo che l'interrupt di sistema supera il 15-20-25% vuol dire che qualcosa non funziona, e la CPU riceverà inutili richieste che vanno poi ad inficiare le prestazioni.

Soprattutto in caso di richieste DPC (Deferred Procedure Call) sollevate da dispositivi ad alta priorità come mouse o schede audio (il mouse viene prima/ha maggiore priorità di altri programmi in background per esempio), in caso di malfunzionamento dei relativi driver si possono anche verificare blocchi del sistema.

In tal caso però è difficile individuare il driver specifico perché nel Task Manager vediamo solo una 'somma' del carico sulla CPU di tutte le richieste degli interrupt.

La soluzione:

Esiste un programma, LatencyMon (scaricabile qui), che ci consente di esplorare le varie richieste alla CPU sollevate dagli svariati drivers installati.

undefined

Come si usa:

Dopo aver aperto il software, cliccare sul pulsante Drivers ed ordinare la lista in base alla colonna DPC Count (cliccandoci sopra).
In questo modo avremo in alto i driver che sollevano più richieste di interrupt ('di attenzione') alla CPU.
In alternativa è possibile basarsi anche sull'ultima colonna, chiamata Highest Execution, che ci informa su 'quanto tempo' viene occupata la CPU dalle richieste del driver specifico.

Una volta individuato il driver incriminato, il consiglio è di provare ad aggiornarlo, di reinstallarlo o di passare ad una versione precedente dello stesso (da Gestione Dispositivi di Windows).

Come si crea una password sicura e facilmente ricordabile

Molto spesso ci viene detto che le password più usate sono sempre le stesse (esempio: 123456, password, qwerty, ecc..), o comunque riconducibili a date di nascita o momenti memorabili della propria vita.

undefined

Ebbene, usare personaggi pubblici o luoghi reali non è comunque una buona idea: esistono infatti dei software (come John the Ripper) che sono in grado di usare dei dizionari enormi, in grado quindi di eseguire un brute-force (vedi qui) e trovare anche password più complesse in pochi minuti.

Ad esempio: per scoprire 'login' o 'password' o 'america' ci vuole solo qualche secondo (!).

undefined

Navigando su internet abbiamo la necessità di creare decine di password (che sarebbe meglio avere tutte diverse tra loro!), e ci viene sempre consigliato di crearle con dei pattern abbastanza complessi.

Ad esempio
, dal pattern <maiuscola><minuscola><numero><carattere speciale>, possiamo creare Ab0', oppure se di 8 caratteri abaB00-?

Saprete bene che ricordarsi anche 5 di queste password è molto difficile (e portarsi dietro un foglietto NON è la soluzione giusta).

Come fare allora per ricordarsi una password molto complessa?

Se lo sono chiesti anche degli Hacker Etici (White Hat) della Red Team Security, azienda di sicurezza del Minnesota.

Il gruppo dice che per avere una password forte (che resiste ad attacchi brute force), tutto quello che dobbiamo fare è inventarci una frase di senso compiuto o comunque facile (per noi) da ricordare, e da questa, tenere SOLO le lettere iniziali.

Ad esempio: "A luglio sono stato 7 giorni al mare", diventerebbe "Alss7gam".
Oppure, sempre da quella frase, tenere le prime 2 lettere: "Alusost7gialma" (in tal caso solo noi sapremo di dover prendere n lettere).

Questo tipo di password sono praticamente imprevedibili, perchè non sono parole di senso compiuto, e per ciò non presenti anche in ipotetiche rainbow-table.

Avremo quindi una password abbastanza complessa da essere accettata da molti siti, abbastanza unica nel suo genere e quindi imprevedibile.

Inoltre abbiamo raggiunto il nostro scopo, ricordarcela!

:D

5 funzioni utili che può fare un Raspberry Pi in rete (FTP/TFTP/WEB/SAMBA/SYSLOG)

Vediamo come fare ad impostare un Raspberry Pi per poterlo usare come server nella rete locale.

Di seguito troverete una lista di comandi e azioni da eseguire passo passo per configurare il dispositivo.

undefined

[1] SERVER FTP

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash

apt-get install pure-ftpd -y
pure-pw useradd pi -u pi -g pi -d /home/pi/files/

impostare come password: raspberry, poi

pure-pw mkdb
ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/60puredb
service pure-ftpd restart

 

[2] SERVER TFTP

wget http://downloads.sourceforge.net/project/tftp-server/tftp%20server%20single%20port/opentftpspV1.66.tar.gz
tar xvf opentftpspV1.66.tar.gz
cd opentftp/

g++ opentftpd.cpp -oopentftpd -lpthread
mkdir /home/pi/files
chmod 777 /home/pi/files/

sudo bash

cp opentftpd /usr/bin/
vi /etc/opentftp.ini

nel file dovrete verificare o aggiungere il seguente contenuto

[LISTEN-ON]

[HOME]
/home/pi/files

[TFTP-OPTIONS]
username=pi
ThreadPoolSize=10
Read=Y
Write=Y
Overwrite=Y
/usr/bin/opentftpd -i /etc/opentftp.ini

 

[3] WEB SERVER

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash
apt-get install apache2 -y
rm -rf /var/www/html/
ln -s /home/pi/files/ /var/www/html

 

[4] SAMBA SERVER

mkdir -p /home/pi/files/
chmod 777 /home/pi/files/
sudo bash
apt-get update
apt-get install samba -y
rm /etc/samba/smb.conf
vi /etc/samba/smb.conf

nel file dovrete verificare o aggiungere il seguente contenuto

[global] netbios name = server server string = server workgroup = WORKGROUP security = user
[server] comment = server path = "/home/pi/files/" public = yes guest ok = yes read only = no
pdbedit -a -u pi

impostare come password: raspberry, poi

service smbd restart

 

[5] SYSLOG SERVER

mkdir -p /home/pi/files
chmod 777 /home/pi/files
sudo bash
apt-get install syslog-ng -y

modificare il file config che si trova in:

/etc/syslog-ng/syslog-ng.conf

cambiare le impostazioni di permessi del file config da 640 a 644:

options { chain_hostnames(off); flush_lines(0); use_dns(no); use_fqdn(no); owner("root"); group("adm"); perm(0644); stats_freq(0); bad_hostname("^gconfd$");
};

inserire nel file anche queste 3 linee di configurazione:

source s_net { udp(ip(0.0.0.0) port(514)); };
destination d_files { file("/home/pi/files/${YEAR}_${MONTH}_${DAY}__${HOST}"); };
log { source(s_net); destination(d_files); };

salvare il file modificato e riavviare il server:

service syslog-ng restart

 

[PLUS] RADIUS SERVER 

sudo bash
apt-get update
apt-get install freeradius -y

modificare (con vi <file>) il file config che si trova in:

/etc/freeradius/clients.conf

nel file dovrete verificare o aggiungere il seguente contenuto

client 0.0.0.0/0 {
 secret = {RADIUS server shared key}
 shortname = anyone
}

modificare (con vi <file>) il file config che si trova in:

/etc/freeradius/users

nel file dovrete verificare o aggiungere il seguente contenuto

testuser Cleartext-password := "password"


[PLUS] DHCP SERVER

sudo bash

impostare un IP statico nel file

/etc/dhcpcd.conf

inserire ad esempio

static value
interface eth0
static ip_address=192.168.0.1/24
static routers=192.168.0.254
static domain_name_servers=8.8.8.8

riavviare il raspberry

reboot

aggiornare

apt-get update
apt-get install isc-dhcp-server -y

modificare il file config per DHCP che si trova in

/etc/dhcp/dhcpd.conf

inserire ad esempio

subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.20 192.168.0.40;
 option routers 192.168.0.254;
 option domain-name-servers 8.8.8.8;
}

se volete anche inserire opzioni aggiuntive in base al vendor, aggiungete

option vendor-class-identifier "AppleInc";
option vendor-encapsulated-options "192.168.1.100";

avviare il server DHCP con il comando

dhcpd -cf /etc/dhcp/dhcpd.conf

Come ripristinare il visualizzatore Foto di Windows 7 in Windows 10

Con Windows 8 e 10 è arrivato anche un nuovo visualizzatore di Immagini, che porta anche funzioni di ritaglio e ritocchi di base.

undefined

Se tuttavia, come me, siete un po' nostalgici del vecchio, snello e collaudato Visualizzatore di foto di Windows 7, potete ripristinarlo con questa guida.

Nota: la guida è sicura, non andrà a sovrascrivere il nuovo viewer, renderà solamente disponibile il 'vecchio' nella tendina Apri con.. starà a voi poi selezionare quello che più preferite!

undefined

 Si devono apportare delle modifiche al registro (proseguite a vostro rischio e pericolo).

Poichè le modifiche al registro sono troppo lunghe per essere eseguite a mano, ho creato un file automatico (che potrete aprire con il blocco note, per essere sicuri di quello che andrà a fare).

  1 - Scaricatelo da qui.

  2 - Apritelo, e cliccate su conferma l'unione.

In questo modo, si abiliteranno al 'vecchio' visualizzatore, le seguenti estensioni:

  .JPEG
  .PNG
  .GIF
  .BMP

Per i .TIFF è già configurato, lo si può verificare da:
pannello di controllo > programmi predefiniti > imposta programmi predefiniti > visualizzatore foto di windows > scegli i valori predefiniti per questo programma

Si potrà adesso selezionare il visualizzatore desiderato, dal pannello apri con:

undefined

Come accedere alle cartelle condivise di VirtualBox da Ubuntu o in generale da Linux

Se Usate spesso VirtualBox, vi sarete trovati nella situazione di dover spostare dei file dalla macchina Host (il sistema principale) alla macchina Guest (il sistema emulato).

undefined

Per fare questo, nel caso si usasse Windows come Guest (nella VM), non ci sono problemi.
In tal caso basterà creare una cartella condivisa con auto-montaggio, e aver installato le VirtualBox Guest Additions.
In questo modo ad ogni avvio del Guest, si troverà la cartella montata 'in rete', che rimanda a quella del sistema fisico.

undefined

Nel caso si dovesse usare Linux come sistema Guest le cose si complicano, ed è necessario un passo aggiuntivo, vediamolo.

Passo 1 - Installare le Virtual Box Guest Additions

All'interno della macchina virtuale Linux (Ubuntu)

Aprire un terminale e Acquisire i diritti di root con:

sudo su

Aggiornare la lista dei packages

apt-get update

Installare le VirtualBox Guest Additions

apt-get install virtualbox-guest-dkms

Riavviare il sistema (la VM), e poi spegnerla per il prossimo passo.

Passo 2 - Creare la cartella condivisa

Da sistema Host, creiamo la cartella condivisa e selezioniamola dalle impostazioni della macchina virtuale:

undefined

 

Passo 3 - Diamo i permessi di accesso

Per poter aprire la cartella appena condivisa, dobbiamo dare il seguente comando (su Ubuntu, sistema emulato):

sudo adduser [username] vboxsf

In questo modo si danno privilegi di accesso all'utente corrente nel gruppo di virtualbox.
Ovviamente al posto di [username] si deve inserire il proprio user nel sistema:
se ad esempio alla sinistra del prompt nel terminale troviamo scritto leo@leo-VirtualBox:~$ , sarà leo.

Per verificare se si è stati aggiunti eseguire (solo per verifica, non necessario):

id [username]

nella lista che compare, dovrebbe esserci anche 999(vboxsf).

E' adesso possibile accedere alla cartella condivisa, nel sistema Guest, al percorso:

Home > Devices > Computer > Media

All'interno potrete trovare tutte le cartelle montate. Quelle di VirtualBox avranno il prefisso "sf_" prima del nome.

Questa procedura potrebbe anche permettere l'uso (sperimentale) del Drag and Drop Bidirezionale.

Inoltrare dati da seriale virtuale ad un indirizzo di rete tramite socket TCP

Vediamo come inoltrare dati da seriale virtuale verso un indirizzo di rete.

undefined

Passo 1 - Scegliere la seriale da utilizzare

E' possibile visualizzare la lista delle seriali virtuali disponibili nel sistema con il comando:

dmesg | grep tty


Passo 2 - Socat

Socat è un utilissimo strumento già presente in molte distro Linux, che consente di manipolare ed eseguire il forwarding di pacchetti di rete.

Aprire un terminale ed acquisire i privilegi di ROOT (importante).

Eseguire questo comando per inizializzare l'inoltro dei pacchetti in arrivo 
sulla seriale ttyS0, verso l'indirizzo IP di loopback, sulla porta 60001:

socat pty,link=/dev/ttyS0,raw tcp:127.0.0.1:60001&

Ovviamente basterà modificare il comando con la seriale e l'indirizzo IP:porta desiderati.

Un altro possibile uso è il binding (unione) di due differenti seriali:

socat PTY,link=/dev/ttyS10 PTY,link=/dev/ttyS11


Passo 3 - Invio/Ricezione con Python

3.1

Per poter ricevere i dati, dobbiamo predisporre un listener sull'indirizzo IP di destinazione (non trattato in dettaglio in questo articolo). Nel nostro caso usiamo semplicemente netcat, in ascolto sempre sulla porta 60001 (attenzione che la porta scelta non sia gìà in uso).
Diamo il comando (in un nuovo terminale con privilegi di ROOT):

nc -l 60001

oppure

nc -v localhost 60001

3.2

Prepariamo un semplice script per scrivere su seriale (utilizzando il Python) e salviamolo con il nome sender.py:

#START (serial forwarder)
import sys
import time
import os, pty, serial

#configure the serial connections
print "\nSTARTING SERIAL PRINT\n"

# open serial port
ser = serial.Serial('/dev/ttyS0', 9600, rtscts=True, dsrdtr=True)
print "SERIAL FORWARDER > (remind to use this as a root!)\n"

# write test string
ser.write("\n > serial test for an ALARM! \n go go ALARM! go :) ")

# close serial port
ser.close();
#END

eseguiamolo da un nuovo terminale (con privilegi di ROOT) con il comando seguente:

python sender.py

NOTA: installiamo pyserial se necessario (se andando ad eseguire il passo precedente riceviamo un errore):

sudo apt-get install python-serial

Potrete adesso vedere la connessione di socat, verso l'IP di destinazione. 

Ulteriori informazioni su socat, al sito ufficiale.

Connection strings per database, una pratica lista per categorie

Una pratica lista con le stringe di connessione più usate e divise per categorie:

 

Microsoft SQL Server 20xx

STANDARD SECURITY
Server=myServerAddress;Database=myDataBase;User Id=myUsername;
Password=myPassword;
TRUSTED CONNECTION
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
CONNECTION TO AN INSTANCE
Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;
Password=myPassword;
CONNECTION VIA IP ADDRESS
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;
Initial Catalog=myDataBase;User ID=myUsername;Password=myPassword;
ASYNCHRONOUS PROCESSING
Server=myServerAddress;Database=myDataBase;Integrated Security=True;
Asynchronous Processing=True;
WITH MARS (Multiple Access Result Set)
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
MultipleActiveResultSets=true;

Access

STANDARD SECURITY
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
Persist Security Info=False;
WITH PASSWORD
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
Jet OLEDB:Database Password=MyDbPassword; 

Azure

STANDARD
Server=tcp:[serverName].database.windows.net;Database=myDataBase;
User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;
Encrypt=True;
WITH MARS (Multiple Active Result Set)
Server=tcp:[serverName].database.windows.net;Database=myDataBase;
User ID=[LoginForDb]@[serverName];Password=myPassword;Trusted_Connection=False;
Encrypt=True;MultipleActiveResultSets=True;

MySql

STANDARD
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
SPECIFIC TCP PORT
Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;
Pwd=myPassword;
MULTIPLE SERVERS
Server=serverAddress1, serverAddress2, serverAddress3;Database=myDataBase;
Uid=myUsername;Pwd=myPassword;
USING ENCRYPTION
Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
SslMode=Preferred; 

SQLite

BASIC
Data Source=c:\mydb.db;Version=3; 
WITH PASSWORD
Data Source=c:\mydb.db;Version=3;Password=myPassword;

Oracle

STANDARD
Data Source=MyOracleDB;Integrated Security=yes; 
AUTHENTICATION
Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;
Integrated Security=no; 
PROXY
Data Source=myOracleDB;User Id=myUsername;Password=myPassword;
Proxy User Id=pUserId;Proxy Password=pPassword;

IBM

DB2 STANDARD
Server=myAddress:myPortNumber;Database=myDataBase;UID=myUsername;PWD=myPassword;
INFORMIX STANDARD
Database=myDataBase;Host=192.168.10.10;Server=db_engine_tcp;Service=1492;
Protocol=onsoctcp;UID=myUsername;Password=myPassword;

 

Il database completo lo potete trovare su connectionstrings.com

Come verificare se un indirizzo email esiste ed è raggiungibile

A quasi tutti sarà capitato di ricevere almeno una volta una email di rifiuto dal Message Delivery Status (o Subsystem), a seguito di un invio verso un indirizzo con problemi o non esistente.
 

Quindi per verificare se effettivamente un indirizzo 'riceve' si potrebbe semplicemente inviargli una email (con attivo il flag 'notifica di recapito') ed aspettare la consegna.

Tuttavia come fare per verificarlo SENZA inviare alcuna mail?

 undefined

Ci viene in aiuto il client Telnet di Windows, vediamo come fare:

Passo 1

Innanzitutto abilitiamo Telnet (di default disattivato), andando su pannello di controllo, programmi e funzionalità, Attivazione o disattivazione delle funzionalità di Windows (in alto a sinistra).

Nella finestra che apparirà dovremo semplicemente abilitare la spunta su 'Client Telnet' e confermare con ok.

Passo 2

Apriamo un prompt dei comandi (su Windows 8.1 e 10, cliccando con il tasto destro sul logo del menu start).

Digitiamo nel prompt il comando

nslookup -q=mx <dominio da testare>

esempio, per verificare un indirizzo @gmail:

nslookup -q=mx gmail.com

premiamo Invio

In questo modo otterremo una lista dei server MX (Mail eXchanger) per tale dominio.
Questi dati vengono forniti da sistema DNS (vedere il post dedicato per capire come funziona) e rappresentano le macchine addette allo scambio e gestione della posta. 

undefined

Copiare in un file esterno di appoggio il vero nome del server MX,
che potrete trovare dopo la dicitura 'mail exchanger' (ad es: mx.gmail.com).

Passo 3

Sempre sul prompt digitare SENZA fare errori (perchè usando Telnet non si può cancellare!) il comando:

telnet <dominio salvato> 25

esempio:

telnet mx.google.com 25

 premere invio per avviare la sessione Telnet.

Passo 4

Adesso siamo 'connessi con il server' e possiamo interagirci tramite Telnet.

Diamo il comando 

helo hi

(helo è giusto con una 'elle' sola) 

In seguito

mail from: <qualcosa@qualcosa.com>

e

rcpt to: <indirizzodatestare@providerchestiamotestando.com>

seguiti da invio.

Ad esempio, coerentemente con i precedenti:

mail from: fittizio@testando.com
rcpt to: aldorossi@gmail.com

Passo 5

Il server risponderà a quest'ultima nostra richiesta dicendoci se l'indirizzo esiste o meno.

Se il server MX risponderà con "OK" o "Recipient OK", significa che la verifica dell'email è andata a buon fine e che quindi l'indirizzo indicato esiste.
Altrimenti verrà restituito un messaggio d'errore (ad esempio "sorry, no mailbox").

 

Riepilogo

Tutti i passi in un terminale (esatto, anche da terminale di linux o mac è possibile eseguire gli stessi steps):

undefined

Come forzare uno Scan Disk approfondito su Windows 8 e 10

Se provate ad eseguire un controllo del disco su Windows 8 o Windows 10, noterete che il sistema provvede prima ad effettuare una analisi.

Solo se vengono rilevati problemi si procede al controllo approfondito.

Se tuttavia volessimo forzare la pianificazione del controllo del disco 'all'avvio' (ovvero con correzione e ripristino dei settori dell'hdd danneggiati), dobbiamo aprire un prompt dei comandi come amministratore (che troviamo facendo click destro sul logo di windows del menu start) ed eseguire il comando:

chkdsk C: /f /x /r

Inserire S (o Y se il PC è in inglese) e premere invio per confermare.

In questo modo il PC, al riavvio successivo, effettuerà lo scan-disk approfondito che volevamo.

Come verificare la salute del disco con un controllo SMART (HDD & SSD)

Esistono molti tool per verificare la salute degli hard disk, che rilevano i dati di diagnostica S.M.A.R.T. e segnalano se ci sono dei deterioramenti o altri problemi.

SMART sta per "Self Monitoring Analysis and Reporting Technology" e funziona solo se supportata/abilitata da BIOS/UEFI.

Sappiamo che molte volte questi dati sono da prendere 'con le molle', visto che un test 'passato' non vuol dire che il nostro hard disk stia effettivamente bene. Anzi è capitato in diverse occasioni che un disco 'in rottura' abbia dato comunque risultati SMART buoni.

In ogni caso, se vedremmo in questo test qualcosa di anomalo, non dovremmo pensarci su due volte e cambiare subito il disco.

Esistono delle differenze tra HDD (meccanici) e SSD (solidi), i parametri SMART danno risultati diversi, come riferimento per analisi dettagliate vedere questa lista.

Il tool (HDD & SSD)

Uno dei tool consigliati è il CrystalDiskInfo, scaricabile dal sito ufficiale gratuitamente.

Una volta installato, avremo di fronte la panoramica della diagnostica eseguita, e potremmo essere di fronte a vari scenari.

Di solito apparirà la scritta GOOD, con tutti i pallini celesti accanto ai vari test: in questo caso la salute del nostro hdd potrà essere giudicata buona (notare che comunque non garantisce la presenza di futuri guasti).

undefined

Nel caso dovessero apparire pallini gialli o rossi, con la scritta CAUTION: consigliamo di sostituire al più presto l'hdd.

undefined

Questo tool integra anche altre funzioni (come ad esempio il grafico dell'alimentazione e della temperatura), potrete trovarli nella scheda 'Disk' o in 'Function'.

Il tool (specifico SSD)

Nel caso volessimo monitorare la salute di un disco SSD, esiste un programma apposito.
Si chiama SSDLife (a pagamento, ma prelevabile in versione Trial dal loro sito).

Anche questo programma esegue un controllo SMART, tuttavia oltre ai semplici dati, fornisce anche una visuale di riepilogo molto semplice da leggere: mostra infatti una barra della attuale 'salute' del disco.

undefined

Alternativa

Windows integra anche nativamente un tool SMART basilare: WMIC.
E' possibile eseguire un test dell'hdd senza installare alcun tool e ricevere un OK o un CAUTION.

 1. Aprire un prompt dei comandi come amministratore.

     Su Windows 7 digitare 'cmd' nel menu start,
     cliccare con il destro su cmd.exe e selezionare 'esegui come amministratore'.

 2. Inserire il comando

wmic

     e premere Invio, si avvierà il tool a riga di comando, apparirà:

wmic:root\cli>

 3. Inserire ed eseguire

diskdrive get status

 In questo modo verrà mostrato lo status rilevato dell'hard disk (di solito un OK).

Come verificare la sicurezza dei certificati installati in Windows

Sigcheck è un utile tool rilasciato gratuitamente da Microsoft per verificare che nel proprio computer non siano presenti certificati digitali malevoli.

Potete scaricarlo dal sito Ms-TechNet.

Come si usa

Una volta scaricato il tool ed estratto lo .zip, apriamo una finestra di prompt sulla cartella
(premendo il tasto MAIUSC e cliccando con il tasto destro su un'area vuota all'interno della cartella).

undefined

Nella finestra di prompt che appare inserire il comando:

sigcheck -tv

e premere INVIO.

Alla richiesta di autorizzazione alla scansione, premere I Agree.

Saranno così elencati i certificati rilevati nel computer e per ciascuno sarà indicata la sua validità.

Eliminare un certificato non valido

Nel caso avessimo trovato un certificato non valido, potremo eliminarlo dal computer aprendo la console di gestione certificati di Windows:

1- Cliccare con il tasto destro sul logo del menu start di Windows e aprire 'Esegui' (in alternativa, premere la combinazione Win+R)

2- Inserire ed eseguire il comando

certmgr.msc

3- Aprire la sezione "Autorità di certificazione radice attendibili" e in seguito aprire "Certificati".

4- Selezionare e rimuovere il certificato malevolo.

Altri usi

Il tool può essere usato anche per scansionare una cartella in cerca di file non firmati digitalmente.

Ad esempio con il comando

sigcheck -u -e c:\windows\system32

verrà scansionata la cartella system32 e verranno elencati i file firmati o meno.

7 modi per creare Task .NET C#

Se stiamo programmando in C# (.NET) e siamo nella situazione di dover creare ed eseguire un Task in un nuovo thread, possiamo procedere in molti modi diversi.

Per prima cosa aggiungiamo la seguente direttiva di using:

 using System.Threading.Tasks;

Usiamo uno dei seguenti metodi:

1. Metodo classico

Task.Factory.StartNew(() => { Console.WriteLine("Hello Task :D"); });

2. Usando Delegate

Task task = new Task(delegate { MyVariousCommands(); });
task.Start();

3. Usando Action

Task task = new Task(new Action(MyMethod));
task.Start();

dove MyMethod è in metodo vero e proprio:

private void MyMethod()
{
  Console.WriteLine("Hello Task :D");
}

4. Usando Lambda senza metodo

Task task = new Task( () => { MyVariousCommands(); } );
task.Start();

5. Usando Lambda con metodo

Task task = new Task( () => MyMethod() );
task.Start();

6. Usando Run (.NET 4.5)

public async Task DoStuff()
{
  await Task.Run(() => MyMethod());
}

7. Usando FromResult (.NET 4.5)

public async Task DoStuff()
{
  int result = await Task.FromResult<int>(SumMe(1, 2));
}

private int SumMe(int a, int b)
{
  return a + b;
}


Ricordate
che nonè possibile avviare un Task che è già stato eseguito.
In questo caso (se dobbiamo rieseguire uno stesso Task) dovremo re-inizializzare il Task prima di poterlo ri-eseguire.

Come ripristinare il corretto funzionamento di Windows Update

Se avete problemi con la procedura di aggiornamento di Windows (8 o 10), e non riuscite più a scaricare gli update per il sistema, procedete con questi passi per provare a risolvere la situazione.

1. controllate che la data e l'ora del sistema siano corrette (in caso correggetele dalle impostazioni)

2. aprite 'computer' (questo PC) e cliccate con il destro sulla partizione del sistema operativo (C:)
3. andate su strumenti e fate click su 'controllo del disco'
4. si aprirà una finestra, selezionate ANALIZZA
5. nel caso fossero rilevati degli errori, selezionate l'opzione RIPRISTINA
    (in caso venisse chiesto di pianificare l'analisi al riavvio, confermate e riavviate)

6. aprite un prompt dei comandi COME AMMINISTRATORE
   (cliccando con il destro sul logo del 'menu start')

7. inserite il comando seguente

Dism /Online /Cleanup-Image /RestoreHealth

8. eseguite il comando premendo INVIO
9. a comando completato, riavviate il PC

Verificate ora il corretto funzionamento di Windows Update.

NOTA:

Nel caso il comando non abbia funzionato, procedere con questi comandi aggiuntivi
(sempre da prompt dei comandi come amministratore - dopo ogni comando digitare invio):

net stop wuauserv
net stop bits
rd /s /q %windir%\softwaredistribution
net start bits
net start wuauserv

Riavviare Windows 10, dopo alcuni minuti il sistema dovrebbe ricevere correttamente gli aggiornamenti.

Come leggere le partizioni in ext3 e ext4 da Windows

Nel caso avessimo bisogno di accedere a una partizione con file system ext2, ext3 o ext4 da Windows (magari perchè la abbiamo usata fino a quel momento con Linux), ci troveremo a dover ricorrere ad un piccolo trucchetto.

 undefined

MONTAGGIO TRAMITE SHELL

Chi preferisce non installare alcun software in Windows, può usare una distribuzione Linux LIVE (avviabile da chiavetta USB).

Consiglio Xubuntu 13.04 o successivo (xubuntu.org) che è una versione compatta derivata da Ubuntu Linux: per installarlo su una penna USB potete ricorrere ad utility come YUMI o SARDU.

Per montare una partizione ext3 o ext4, si potranno digitare da terminale i comandi:

sudo mkdir /mnt/hd1
sudo mount -t ext3 /dev/sdaXXX /mnt/hd1

DOVE: al posto di sdaXXX dovrà essere specificato l'identificativo della partizione da montare.


Per ottenere informazioni sulle partizioni:

sudo apt-get install parted
sudo parted -l

 

ACCEDERE TRAMITE GUI

Nel caso volessimo ricorrere ad un software apposito, con interfaccia grafica, potremmo optare per:

DiskInternals Linux Reader - www.diskinternals.com 

oppure

Paragon ExtFS - www.paragon-software.com

Utilizzando questi software, sarà possibile collegare un hard disk contenente partizioni Linux ad un sistema Windows usando un connettore SATA libero oppure un adattatore USB-SATA.

Facebook: disattivare i suggerimenti per i tag foto

Facebook ha già da tempo introdotto il riconoscimento facciale delle fotografie, questo per facilitare l'attività di TAG agli utenti.

Questo vuol dire che quando aggiungete una foto con amici/parenti/ecc.. il sistema riconosce direttamente nella foto i loro volti e vi suggerisce i tag da inserire.

Ovviamente la funzione è a doppio senso, in quanto anche i vostri conoscenti potranno taggarvi tramite suggerimento.

undefined

Se volete disattivare questa funzione, e quindi impedire agli script di Facebook di analizzare le foto altrui alla ricerca del vostro volto, potete farlo così:

  1. su Facebook, in alto, accanto al simbolo del lucchetto, c'è una freccettina rivolta verso il basso, cliccateci ed andate su 'Impostazioni'
  2. nella nuova pagina che si apre, andate su 'Diario e aggiunta tag' dal pannello di sinistra
  3. andare nella sezione 'Come faccio a gestire i tag aggiunti dalle persone e i suggerimenti di tag'
  4. adesso cliccate su 'Chi vede i suggerimenti dei tag quando vengono caricate foto in cui sembri essere presente?'
  5. nel menu che si apre potrete scegliere la vostra opzione preferita.

 undefined

 

Una volta che avrete disattivato i suggerimenti dei tag, Facebook non suggerirà più ai vostri amici di taggarvi quando caricano una foto con voi presenti.

Anche se ovviamente gli amici potranno taggarvi manualmente, anche se esiste la disattivazione di questa funzione, sempre sul pannello impostazioni.

 

Ripristinare il pannello di Gestione Credenziali su Windows 8 e 10 o la continua richiesta di password di OneDrive

Se avete riscontrato un errore nell'apertura del tool 'Gestione Credenziali' in Windows 8/8.1/10, saprete che senza un qualche ripristino risulta impossibile anche solo leggere le password salvate.

Questo errore può ripercuotersi anche su altre applicazioni del sistema, come OneDrive o i gestori di posta (ovviamente oltre ai Browser, che utilizzano l'archivio crittografato di questo tool per memorizzare le password dei siti visitati) che potrebbero RICHIEDERE la password ad OGNI ACCESSO, poiché non riescono a memorizzarla correttamente.

 

 undefined

L'errore in questo caso è spesso il (Credential Manager Error) 0x80070057.

INNANZITUTTO VI ANTICIPO CHE PER IL RIPRISTINO VERRANNO PERSE TUTTE LE PASSWORD SALVATE DAI BROWSER, CHE QUINDI DOVRANNO ESSERE REINSERITE NEI VARI SITI.

INOLTRE SI DOVRA' PROCEDERE AL REINSERIMENTO PASSWORD ANCHE PER LE APPLICAZIONI DI SISTEMA COME OneDrive o Outlook.

LA NOTA POSITIVA E' CHE SE AVETE EFFETTUATO L'ACCESSO CON IL VOSTRO ACCOUNT MICROSOFT (insomma se l'account in uso sul PC è connesso al vostro LiveID online) E AVETE ATTIVATO DA PANNELLO IMPOSTAZIONI LA SINCRONIZZAZIONE DELLE PASSWORD TRA PC, ALLORA BASTERA' ASPETTARE CHE IL SISTEMA (nel giro di qualche ora - e riavvio :) SCARICHI IN AUTOMATICO IL DATABASE DAL CLOUD.

Cosa fare per ripristinarlo?

1. Aprire una finestra di Questo PC

2. Andare in C:\Users\<il vostro nome utente>\AppData\Roaming\Microsoft\Protect
    (nota: se non trovate la cartella AppData, attivate la visione dei file nascosti dalla barra Visualizza)

3. All'interno troverete una cartella che inizia per S-1...

4. Cancellatela e RIAVVIATE.

Il sistema ri-creerà la cartella (che contiene il Vault delle password) che inizialmente sarà vuota.

Come detto sopra, dopo qualche tempo sarà riscaricata dal cloud se lo avevate attivato.

 

In questo modo il sistema RIPRISTINERA' la corretta struttura per le 'Credenziali Web' del 'Gestore Credenziali'.

 

Come rimuovere il contrassegno di partizione attiva in sistemi Windows

Se vi siete trovati nella condizione di gestire i dischi e le partizioni in un sistema Windows (XP-->10), avrete sicuramente usato il tool di sistema 'Gestione Disco'.

undefined

In particolare, quando creiamo o modifichiamo partizioni di sistema (quelle dove è presente un sistema operativo), abbiamo la necessità di contrassegnarle come 'attive'.
Questa operazione non è difficile, basta cliccare con il destro sulla partizione e andare su 'Contrassegna come attiva'.

Si nota subito però che non esiste un comando tipo 'rimuovi contrassegno attivo'.

Come fare per rimuovere un contrassegno (active mark in inglese)?

1.
Aprire il prompt dei comandi come amministratore.
(Start>Esegui>cmd su 7 | click destro su logo windows su 8.1/10)

2. Dare il comando

diskpart

3. Si aprirà il tool, eseguire

list disksf

per visualizzare la lista dei dischi,

select disk NUMERO

per aprire un disco (vedi nota in fondo),

list partition

per visualizzare la lista delle partizioni del disco scelto,

select partition NUMERO

per aprire la gestione della partizione scelta

4. Infine eseguire

inactive

per contrassegnarla come 'non attiva'.

Se a questo punto controllate sul tool 'gestione disco' il mark 'attivo' sarà rimosso dagli attributi della partizione.

 

NOTA
Al momento della selezione disco/partizioni potreste essere in difficoltà perché non trovate i nomi delle partizioni.
Per capire su quale partizione eseguire la procedura, controllate il numero disco e il numero partizione (confrontando anche le dimensioni di questi) dal tool 'gestione disco' (i numeri corrispondono anche sul tool da cmd).

Come ripristinare le schede di rete (funzionamento e visualizzazione) in Windows 8 e 10

Risolvere problemi di connessione

Nel caso ci siano problemi con la connessione, con i messaggi di 'connettività limitata' o con il cattivo instradamento di richieste TCP, è possibile fare ricorso ad un ripristino delle funzionalità di rete di Windows.

1

Aprire un prompt dei comandi come amministratore (su Windows 8/10) basta fare click destro sul logo Windows in basso a sinistra per trovarlo.

2

Eseguite uno o più di questi comandi per ripristinare la corrispettiva funzione:

Firewall - ripristina la Advanced Security policy del firewall con quella originale

netsh advfirewall reset 

Winsock - ripristina e pulisce il catalogo Winsock (libreria usata dal protocollo TCP) [richiede riavvio]

netsh winsock reset

BranchCache - ripristina il servizio, ne cancella la cache e resetta le impostazioni alle originali

netsh branchcache reset

IPv4 - resetta i componenti che gestiscono il protocollo TCP/IP

netsh int ip reset

IPv6

netsh int ipv6 reset 

 3

 Nel caso del reset Winsock, dopo il riavvio, digitare

netsh int ip reset c:\resetlog.txt

 

Windows network adapter restorer

Nel caso la scheda di rete non voglia collegarsi ad internet, la prima cosa da fare è controllare se i driver sono correttamente installati.

Che fare quando i driver risultano all'ultima versione (e senza problemi riscontrati da Windows) ma nelle 'impostazioni scheda' (da pannello di controllo>centro connessioni di rete e condivisione) non appaiono schede di rete? 

(a me è successo dopo l'aggiornamento a Windows 10)

undefined

La prima cosa da provare a fare è disinstallare la periferica dal computer, al riavvio il sistema reinstallerà i driver automaticamente (o chiederà la cartella da cui installarli, in questo caso inserite il disco originale del sistema o cercateli su internet da un altro pc).

Nel caso il pannello impostazioni scheda non si sia ripristinato (e conseguentemente impedisca il corretto funzionamento delle connessioni del pc), procedere come di seguito.

LA PROCEDURA E' ABBASTANZA RISCHIOSA, MA SEMBRA UNA DELLE POCHE CHE SIANO IN GRADO DI RIPRISTINARE IL CENTRO CONNESSIONI. PROSEGUIRE A PROPRIO RISCHIO.

1

Aprire Regedit cliccando con il tasto destro sul logo di Windows (in basso a sinistra), andando su esegui e digitando

regedit

2

Dirigersi sul percorso

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\Connections

e aprire quest'ultima cartella cliccandovi una volta sopra

3

Sulla parte destra troverete una chiave chiamata

ClassManagers

4

Cliccatevi con il destro ed eliminatela

5

Riavviate il PC

[NOTA]

NEL CASO LA PROCEDURA NON FUNZIONASSE (O IL SISTEMA NON RIPRISTINASSE AUTOMATICAMENTE LA CHIAVE), ESEGUITE QUESTO FILE PER RIPRISTINARLA MANUALMENTE CON LA VERSIONE CORRETTA E FUNZIONANTE:

1 - Scaricate questo file ed estraete lo .zip  [AUTOFIX]

2 - Click destro sul file .reg all'interno e andate su 'Unione'

3 - Riavviate il pc

 

A questo punto il centro connessioni di rete e condivisione (in particolare le 'impostazioni scheda') dovrebbe aver ricominciato a funzionare e a far dialogare correttamente i driver delle schede con il sistema operativo.

undefined

Non vi resta che connettervi con il vostro metodo preferito.

 

Le scorciatoie (i comandi) da tastiera di Windows 10

E' da poco uscito il nuovo sistema operativo di Microsoft, ed insieme alle molte novità che ha portato, ci sono anche i nuovi comandi rapidi da usare con la tastiera.

Qui di seguito un elenco di quelli principali:

  • Tasto Windows + Tab: attiva il Task View
  • Tasto Windows + A: attiva l’Action Center
  • Tasto Windows + C: Cortana (interrogazione vocale)
  • Tasto Windows + D: mostra Desktop
  • Tasto Windows + E: apre Esplora Risorse
  • Tasto Windows + G: apre la nuova barra di Xbox per scattare screenshot e registrare sessioni di gioco
  • Tasto Windows + H: apre il menù di condivisione
  • Tasto Windows + I: apre le Impostazioni di sistema
  • Tasto Windows +K: abilita la funzione di streaming audio video a dispositivi wireless esterni (Connect)
  • Tasto Windows +L: blocca il sistema
  • Tasto Windows +P: attiva funzione Proiezione schermo (Miracast)
  • Tasto Windows +R: esegue un comando
  • Tasto Windows +S: attiva Cortana
  • Tasto Windows +X: apre menu delle funzioni power user
  • Tasto Windows + su/giù/sinistra/destra: scorre tra le applicazioni
  • Tasto Windows + Crtl + D: crea un nuovo desktop virtuale
  • Tasto Windows + Crtl + F4: chiude un desktop virtuale
  • Tasto Windows + Crtl + destra/sinistra: scorre i desktop virtuali
  • Tasto Windows + Shift + destra/sinistra: sposta le app da un monitor all’altro
  • Tasto Windows + 1, 2, 3..: apre i programmi pinnati sulla barra delle applicazioni (1,2.. è la posizione sulla barra, da sinistra)
  • Tasto Windows + giù: ridimensiona una finestra a schermo intero/riduce a icona una finestra ridimensionata.
  • Tasto Windows + su: ingrandisce una finestra ridimensionata/riapre una finestra ridotta a icona

Come cambiare risoluzione ad Ubuntu in VirtualBox

Se abbiamo installato Ubuntu Linux in una macchina virtuale su VirtualBox ci saremo sicuramente accorti che di default la sua risoluzione è impostata su 640x480, molto scarsa per qualsiasi tipo di utilizzo.
Avremo anche notato che andando sulle impostazioni dello schermo non risulta possibile modificare tale risoluzione dalla tendina.

undefined

Per cambiare a piacimento la risoluzione visualizzata procedere come segue:

Aprire un terminale e

Acquisire i diritti di root

sudo su

Aggiornare il repo

apt-get update

Installare le VirtualBox Guest Additions

apt-get install virtualbox-guest-dkms

Riavviare il sistema.

La risoluzione dovrebbe adesso cambiare automaticamente, ma nel caso così non fosse, basterà andare sul pannello di controllo e sulle impostazioni schermo: adesso la tendina sarà abilitata.

NOTA: in alternativa al comando per le Additions è possibile 'montare' sulla VM il disco delle additions direttamente dal menu strumenti di Virtualbox; apparirà a schermo una finestra che chiede se vogliamo installare le addons, dobbiamo cliccare su si e riavviare.

IN CASO NON FUNZIONASSE:

a VM spenta, andiamo nelle impostazioni della macchina virtuale e assicuriamoci di avere nella sezione 'Schermo' la memoria video al massimo (di solito 128Mb); inoltre le spunte dell'accelerazione video 2D e 3D devono essere vuote.

In questo caso ripetere la procedura.

 

Come funziona la password di Windows e perchè quando ne inseriamo una sbagliata il pc impiega più tempo

A tutti sarà capitato di inserire una password sbagliata su Windows (XP/7/8..) e di notare che il computer in questo caso impiega più tempo per riproporre il campo di inserimento.

Molti si saranno chiesti perché quando inseriamo la password corretta il PC la riconosce subito, mentre rimane in una sorta di semi-stallo altrimenti.

undefined

Alcuni avranno pensato che il computer deve eseguire più calcoli per verificare la password 'sbagliata', ma non è così.

Le istruzioni che il PC esegue per la verifica delle password sono sempre le stesse: esegue un hash tra la chiave inserita e quella precedentemente memorizzata.

La memorizzazione nel sistema della password iniziale avviene non in forma 'plain text' (testo leggibile), viene invece eseguito un Hash OWF (problema di complessità classe NP) e memorizzato in una stringa per questioni di sicurezza (non si potrà risalire alla password immessa anche con in mano tale stringa).

Quando andiamo ad inserire la password per accedere, il PC esegue una nuova conversione Hash e compara la nuova stringa con quella salvata inizialmente.

Se vi è una corrispondenza, lascia accedere al desktop, altrimenti ripropone il campo per l'inserimento.

Ma allora se esegue gli stessi calcoli, perché impiega più tempo quando sbagliamo?

E' una misura di sicurezza: imponendo un breve ritardo in caso di fallimento si potranno evitare attacchi brute force (in poche parole quelli che provano tutte le password per cercare quella giusta), in quanto anche solo 5 secondi di attesa farebbero lievitare tali attacchi da anni a decenni in più per poter essere portati a termine.

Il nome generico per questo comportamento è tarpitting.
Concetto inizialmente utilizzato nel rilascio degli accessi per dispositivi di rete, oggi ormai esteso anche a molte altre applicazioni.
Una spiegazione approfondita qui.

Come rimuovere completamente un antivirus

Molto spesso ci possiamo trovare nella situazione di dover disinstallare un antivirus dal nostro PC, sia per metterne uno diverso o anche solo perché non abbiamo più bisogno di rinnovarlo.

E' cosa piuttosto comune che le disinstallazioni degli antivirus lascino sul nostro sistema dei file e non cancellino completamente tutte le modifiche che avevano effettuato.

undefined

Molte volte le tracce lasciate interferiscono con l'installazione di nuovi prodotti o nuovi antimalware.

Come si può essere certi che una disinstallazione porti via TUTTE le tracce?

Una soluzione molto comoda è data da ESET AV Remover, un piccolo programma che permette di rimuovere qualsiasi antivirus cancellando tutti i file residui dalla precedente installazione.

Il programma non necessita di installazione, basta eseguirlo.

"La procedura di disinstallazione standard degli antivirus tipicamente non è mai sufficiente per la rimozione di tutti i componenti del programma", confermano i tecnici di ESET. "ESET AV Remover provvederà ad eliminare qualsiasi software antivirus precedentemente installato".

ESET AV Remover è disponibile sia in versione 32bit che 64bit, ed è in grado di rimuovere tutti gli antivirus presenti in questa lista (in fondo alla pagina).

E' possibile scaricarlo qui.

Rar5 è meglio di Rar4 e di 7-Zip? Il confronto

Zippare o Rarrare?

Molte volte non ci facciamo neanche caso, ma quando andiamo a comprimere 'zippare' un file, si utilizzano sofisticati algoritmi di compressione che vengono, nell'arco degli anni, sempre via via migliorati.

undefined

Esistono molti algoritmi e quindi formati di compressione:

Zip, Rar, GZip, BZip2, 7z, Tar, Tar.gz ..

 

Tra i più popolari su Windows abbiamo: 7z, Zip e Rar.

Il primo gratuito e secondo sono gratuiti, l'ultimo no e ne è proprietario il suo inventore (il programma che gestisce questo formato è WinRar).

Rar è stato via via migliorato negli anni, ed è arrivato di recente alla versione Rar5.
La compressione di default è Rar4, è possibile selezionare la versione 5 dell'algoritmo di compressione aprendo il pannello di gestione file rar (con il click dx sul file da comprimere>Aggiungi ad archivio).

undefined

 

Novità di Rar5

Per cominciare, Rar5 aumenta la dimensione del dizionario di compressione fino a 1GB (nella versione a 64bit).

Cosa vuol dire: più grande è il dizionario, che viene usato per memorizzare parti in comune di un file da comprimere, migliore sarà la compressione, ovvero meno spazio andrà ad occupare una volta compresso; anche se questo vale solo per file di grandi dimensioni (>1GB a scopo backup).
La dimensione predefinita del dizionario di compressione Rar è 32MB.

Inoltre Rar5 porta anche la novità del 'registro di ripristino': il formato 5 è molto più resistente a danni e perdite bit di 4, ed è in grado di riutilizzare anche dati di ripristino parzialmente corrotti.

Infine con Rar5 è possibile codificare i dati con algoritmo AES a chiave crittografica a 256bit (una chiave molto robusta, usata persino dal governo degli stati uniti).
Nota: i file compressi in Rar5 possono essere letti solamente da WinRar5.

I vantaggi nell'uso di 7z in confronto a Rar4 e Rar5

In termini di velocità di compressione, Rar5 si è dimostrato superiore rispetto a 7z.

In un test pubblicato sul forum Hyperspin, WinRAR 5 ha decompresso un’immagine di 5 Gigabyte in due minuti rispetto ai quasi sei minuti di 7Z .
Per quanto riguarda la compressione invece, la velocità dell'algoritmo Rar è impressionante sia in Rar5 che in Rar4.
Si noti che il livello normale di Rar5 usa dei dizionari da 32MB, cosa che ha aumentato notevolmente i tempi di compressione.

I risultati di 7zip non sono stati soddisfacenti nel caso di LZMA, che è l'algoritmo predefinito usato da 7z.
Neanche usando otto core multithreading si riesce a superare RAR4.

Compatibilità e sicurezza

Per quanto riguarda la compatibilità, se vogliamo che il nostro Rar sia il più compatibile possibile (se dobbiamo condividerlo con qualcuno) è consigliabile comprimerlo in Rar4.
Altrimenti possiamo sempre creare un Rar5 autoestraente, e inviare quello: non ci sarà bisogno di software per decomprimerlo.

Per quanto riguarda la sicurezza della crittografia, vince di gran lunga Rar5, che si pone alla pari della sicurezza dei file Zip (nota: zip non 7z).

 

Twitter: un override per modificare automaticamente l'altezza del widget

Se avete embeddato il widget di Twitter in una vostra pagina avrete notato che l'altezza è fissa e non si adatta automaticamente con la pagina.

Se avete la necessità che si ridimensioni automaticamente aggiungete questo script alla fine della pagina web.

 

<script>
    $(document).ready(function () {
        detectFr();
    });
    function detectFr() {
        if ($("#twitter-widget-0").length > 0) {
            setTimeout(function () {
                setH();
            }, 250);
        } else {
            setTimeout(function () {
                detectFr();
            }, 500);
        }
    }
var panningBottom = 100; //<< INSERIRE IL VALORE CHE PIU' SI ADATTA AL VOSTRO HEADER
    function setH(){
        $('.twitter-timeline, .twitter-timeline-rendered').css('height', window.innerHeight-panningBottom);
    }
</script>

In questo modo, al caricamento, lo script andrà a cercare l'iframe in cui viene caricato il widget da Twitter, e ne imposterà l'altezza in base a quella della pagina madre.

Se avete un header più o meno alto, potete aumentare o meno il valore di panning-bottom per evitare che l'altezza impostata sia troppo lunga.

Ovviamente per funzionare, lo script ha bisogno dell'embed di jQuery.

 

Come pulire la cache di Spotify per liberare spazio su disco

Con l'ultima versione di Spotify è cambiata gran parte dell'interfaccia grafica, e non è più possibile trovare il pulsante per cancellare manualmente tutta la cache dei file ascoltati e scaricati.

undefined

Dopo un po' di tempo che ascoltiamo musica in streaming, potremmo avere la necessità di cancellare i vecchi file temporanei che il programma utilizza proprio per la riproduzione, a scopo di liberare spazio su disco.

Per cancellare la cache, apriamo una finestra di Computer, e andiamo nella cartella:

  • Windows
       C:\Users\<nomeutente>\AppData\Local\Spotify\Storage
  • Linux
       ~/.cache/spotify/Storage/
  • Mac
       /Users/<nomeutente>/Library/Caches/com.spotify.client/Storage/

Dove al posto di <nomeutente> dovremo mettere il nome dell'account attualmente in uso sul PC o MAC.

 

Nota: in Windows per aprire la cartella AppData, dobbiamo abilitare la visualizzazione dei file nascosti.

undefined

A questo punto cancelliamo tutto il contenuto che la cartella 'Storage' contiene (non la cartella stessa).

Spotify adesso ripartirà da zero con lo streaming delle canzoni, e avremo aumentato lo spazio libero disponibile del nostro HDD.

 

Come usare Cronologia File di Windows per il backup di cartelle personalizzate

Cos'è cronologia file

Cronologia file è un'utile funzione messa a disposizione dalle ultime versioni di Windows per eseguire una sorta di backup incrementale dei nostri file.

Esegue, in base ad una pianificazione, un backup dei nuovi file, senza però cancellare dal backup le vecchie versioni degli stessi.
In questo modo, in caso di problemi con la nuova versione avremo a disposizione una 'cronologia' delle sue vecchie versioni.

undefined

Notare che questa funzione risulta molto utile in tutti quei contesti dove si richiede di modificare periodicamente dei file, non per lo storage, perché per i backup di un archivio esistono soluzioni molto più complete.
E' utilissima ad esempio per chi lavora con dei file di testo: immaginiamo di fare una modifica in un file e per distrazione cancelliamo qualcosa di importante. Normalmente la vecchia versione sarebbe irrecuperabile, ma se abbiamo impostato cronologia file, avremo a disposizione tutte le vecchie versioni pronte per essere ripristinate.

Inoltre è integrato con il sistema operativo, e il ripristino di un file è molto facile.

Come attivarla

Apriamo il pannello di controllo e cerchiamo 'Cronologia File'.

Da questa finestra possiamo impostare un Hard Disk di destinazione per i backup, e su avanzate, ogni quanto pianificare il salvataggio automatico.

Possiamo altresì escludere delle cartelle dal backup automatico.

Per abilitare la cronologia file, basta scegliere un'unità di destinazione.

undefined

Tuttavia qui sorge un problema: come visibile nella foto, il sistema eseguirà solo il backup delle cartelle "raccolte, desktop, contatti, preferiti, OneDrive".

Come fare per specificare come sorgente di backup delle altre cartelle, magari su differenti unità?

Microsoft in questo caso purtroppo non ci fornisce un'interfaccia comoda per scegliere altre sorgenti, possiamo tuttavia aggirare il problema in questo modo:

cronologia file andrà a 'pescare' file dalle raccolte vero?
Bene, allora mettiamo tutte le cartelle che ci interessano nelle raccolte.

(In realtà quando segniamo una cartella 'come in una raccolta', stiamo includendo solo un collegamento, non tutti i file, tranquilli non c'è da spostare niente)

Andiamo alla cartella che ci interessa includere nel backup e clicchiamoci con il destro, poi andiamo su 'Includi nella raccolta'.
Possiamo decidere di aggiungerla ad una raccolta esistente, o se vogliamo essere precisi, creare una nuova raccolta (magari chiamata cronologia file) proprio per tutti i backup aggiuntivi.

undefined

In questo modo alla successiva pianificazione, il backup verrà effettuato anche delle cartelle personalizzate.

Come ripristinare un file

Se avessimo la necessità di recuperare un file, potremmo ripristinarlo sia da pannello di controllo (sempre andando su cronologia file), sia direttamente dalla cartella nella quale era presente.

Per capirci, se abbiamo incluso nella raccolta la cartella X che contiene la cartella Y, che contiene il file Z

X (folder)
 | Y (folder)
    | Z (file)
    | ...(altri file)

e vogliamo ripristinare il file Z, andiamo nella cartella Y (nella quale risiede o risiedeva il file) e andiamo sull'apposito bottone "Cronologia file" in alto:

undefined

Si aprirà una finestra con TUTTE le precedenti versioni dei file.

undefined

Potremo navigare INDIETRO NEL TEMPO e ripristinare una versione vecchia anche mesi,
magari proprio quella che avevamo perso!
:)


(possiamo indicare dalle impostazioni di cronologia file quanto deve tenere in archivio backup i file)

NOTA: la cronologia file non è stata pensata per archivi di file di grandi dimensioni, ma per tutte quelle situazioni in cui c'è una modifica frequente di file di medio/piccole dimensioni.
Per il backup di interi HDD o di file 'da archivio', si consiglia la funzione 'Backup di Windows 8'

 

 

Come cambiare l'indirizzo MAC alla scheda di rete su Windows

L'indirizzo MAC (o MAC Address) viene usato dalle schede di rete per identificarsi nell'interscambio di informazioni.

MAC è l'acronimo di Media Access Control ed è costituito da un codice lungo 6 byte (48 bit).
Viene assegnato dal produttore della scheda al momento della sua creazione ed è univoco per ogni scheda.
I primi 3 byte sono l'identificativo della azienda produttrice, gli ultimi 3 rappresentano uno specifico sotto-indirizzo univoco.

undefined

L'IEEE (Institute of Electrical and Electronics Engineers) ha creato questo indirizzo prevedendone la saturazione intorno al 2100 (poiché sono disponibili 281.400 miliardi di diverse combinazioni).

Poiché ogni scheda di rete ha memorizzato un proprio indirizzo MAC, nei nostri computer equipaggiati con wifi-Bluetooth-ecc.. avremo più indirizzi. (per scoprire quali sono, salta al punto 'Verifica')

Se avessimo la necessità di cambiare il MAC di una specifica scheda di rete (per svariati motivi, come ad esempio per aggirare un filtro nel nostro router), dovremmo procedere come segue.

 

Cambiamo

Apriamo proprietà del sistema

undefined


Andiamo su Gestione Dispositivi

undefined


Cerchiamo la scheda a cui vogliamo modificare il MAC e andiamo sulle sue proprietà

undefined


Cerchiamo, da avanzate "Servizio di rete" o ("Network address")

undefined

Selezioniamo il campo vuoto e inseriamo (SENZA - o : o .) l'indirizzo MAC che vogliamo compaia.

Ad es. se vogliamo come nuovo MAC 08-00-27-00-E0-4D, mettiamo 08002700E04D.

Una volta inserito, diamo OK e RIAVVIAMO il sistema.

 

Come scegliere il MAC

Possiamo inserire praticamente qualsiasi combinazione: ecco la lista ufficiale per chiarire di cosa parlo. 

Strumenti utili

Se siamo in possesso di un indirizzo MAC del quale vogliamo maggiori dettagli, come il nome del produttore, andiamo su questo sito.

 

Verifica

Per verificare quali sono gli indirizzi MAC delle nostre schede di rete:

-apriamo il prompt come amministratori (start>cerchiamo 'cmd'>click destro>esegui come amministratore)

-diamo il comando

 undefined

 

NOTA:

come scritto all'inizio, il MAC viene memorizzato dalle case a livello firmware nei chip delle schede di rete, e non è alterabile permanentemente.

La nostra modifica sarà 'virtuale', cioè il nostro sistema 'simulerà' il MAC immesso come reale, ma non verrà alterato il MAC memorizzato nell'hardware. Il che vuol dire che a seguito di disinstallazioni driver/aggiornamenti anche del sistema, potremmo dover eseguire di nuovo la procedura.

 

Come ripristinare la scrivania di un Raspberry su Debian

undefined

Durante l'uso intensivo del nostro RaspberryPi, è possibile trovarsi nella spiacevole situazione in cui l' X server non riesce ad avviarsi.

Possono essere varie le cause: un arresto anomalo, una cancellazione di file di sistema, o un fallito aggiornamento.

In tutti i casi, all'avvio saremmo di fronte ad un errore come quello sotto, che ci notifica il mancato avvio del comando startx, che fa partire proprio l' X server, responsabile della visualizzazione della scrivania (desktop).

undefined

Cosa fare?

Una possibile soluzione è ripristinare il file di configurazione del server X.

Appena dopo il boot, premere

ctrl+alt+F2

 

Apparirà un prompt, inserire i comandi (ognuno seguito da invio)

cd ~
ls -a

Vengono mostrati a video i file, cercare il file

.Xauthority

se è presente, è possibile che sia danneggiato. E' possibile cambiargli nome per far si che al successivo avvio il sistema ne generi uno nuovo:

mv .Xauthority .Xauthority.backup

In questo modo se riavviamo il sistema (con ad esempio il comando 'halt'), dovrebbe ricomparire la scrivania.

Nel caso non funzionasse, è possibile dare il comando aggiuntivo:

sudo chmod 777 /home/pi

 

Ripristinare Windows in seguito ad un errore driver o ad un update fallito

Una breve guida per aiutare a resuscitare il PC in caso non si riesca più ad avviare a seguito di aggiornamenti driver dannosi.

NOTA:

questa guida si applica anche nel caso di errore dovuto a installazione driver non compatibili con il sistema.

Errore Blue Bcreen: CRITICAL_SERVICE_FAILED.

 

undefined

 

Se siete nella condizione di non poter usare il desktop a causa della schermata blu, quello che dovete fare è accedere alla console di ripristino, possono presentarsi tre casi:

  • L'avvio risulta bloccato o su schermata blu, inserite il disco di installazione di Windows e riavviate il computer (in caso forzate lo spegnimento tenendo premuto il pulsante di accensione). Proseguire poi con le procedure sotto.
  • All'avvio del sistema si presenterà automaticamente la schermata di recovery, in tal caso proseguire direttamente con le procedure sotto.
    undefined
  • Il sistema parte solo in modalità provvisoria. In realtà siete già a buon punto perché avete comunque accesso a tutte le impostazioni. Potete avviare il prompt da lì. Se volete comunque aprire la console di ripristino, andate sul menu charm e su 'Riavvia il sistema' tenendo premuto il tasto 'Shift'.

 NOTA:

 è possibile riavviare anche il computer in modalità di 'avvio avanzato' con il comando (tramite prompt dei comandi cmd.exe)

 shutdown.exe /r /o /f /t 0

 

Una volta in modalità ripristino avrete questa schermata, andate su risoluzione dei problemi

undefined

Andate su opzioni avanzate

undefined

Il menu sarà questo

undefined

 Adesso possiamo passare al ripristino vero e proprio, da questa fase è possibile:

  • Avviare un ripristino configurazione di sistema, utilizzando un punto di ripristino precedente, nel caso questo non risolvesse il vostro problema passate al punto successivo
  • Ripristinare un immagine di sistema (che dovete aver precedentemente salvato da qualche parte), nel caso non l'abbiate fatta passate al punto successivo
  • Tentare un ripristino automatico per l'avvio di Windows. Questo non sempre funziona, soprattutto con problemi driver.
  • Usare il prompt dei comandi.

 

Usare il prompt per ripristinare

NOTA: è possibile dare questi comandi, oltre che da console di ripristino, anche da prompt a Windows avviato o da prompt in modalità provvisoria.

Una volta aperto il prompt di ripristino, noterete che state agendo sulla lettera di unità X:

Dobbiamo passare alla vera unità dove risiede il sistema operativo (X: è il montaggio della console di ripristino), ecco una sequenza di comandi per passare alla lettera corretta

X:\windows\system32>
X:\windows\system32>cd..
X:\windows>cd..
X:\>D:
D:\>

siamo passati a D: perché molte volte il sistema viene montato lì. Ma potrebbe essere anche C: o E:, per verificare di essere veramente nella partizione di sistema basta dare il comando dir

D:\>dir

apparirà una lista di cartelle, se corrispondono a quelle della radice Windows (program files, program files (x86), Windows, ecc..) allora siamo nella lettera corretta.

Adesso dobbiamo riportarci dentro a system32

D:\>cd Windows\system32
D:\windows\system32>

In questo modo possiamo accedere ai file di sistema.

Per disinstallare un update manualmente, dobbiamo conoscerne il codice (KBxxxyyy), possiamo elencare gli update installati con

wmic qfe list brief

nota: possiamo anche salvare una copia su file con i comandi

wmic qfe list brief /format:htable > "%USERPROFILE%\hotfix.html"
wmic qfe list brief /format:texttablewsys > "%USERPROFILE%\hotfix.txt"

che produrranno rispettivamente un file html o un file txt e lo salveranno nella cartella dell'utente.

In ogni caso la lista completa dei comandi WMIC è reperibile qui.

 

L'output a video sarà simile al seguente:

 undefined


Adesso possiamo procedere alla disinstallazione selettiva degli ultimi update. Scorrere l'elenco e segnarsi i codici dei KB per i quali il sistema sembra essere andato in crash.

Procedere alla rimozione selettiva (ROLLBACK):

wusa /uninstall /kb:{update ID}
esempio: wusa /uninstall /kb:980311

L'update sarà disinstallato (è possibile rimuovere tutti quelli che vogliamo).

Adesso provare a riavviare il PC e vedere se l'errore è stato corretto. (chiudere il prompt)


Alternative

Nel caso venisse ancora la schermata blu all'avvio, tornare sul prompt di ripristino, e provare ad eseguire uno scannow:

D:\windows\system32>sfc /scannow

per fare eseguire un check totale di file danneggiati/di dati corrotti o che impediscono il corretto funzionamento del sistema.

 

Se neanche questo funziona è possibile provare ad affidarsi ad uno scandisk completo (stavolta da X:)

X:\windows\system32>chkdsk D: /f /r /x

scandisk con opzione di ripristino settori danneggiati, e con forzato smontaggio dell'unità.

NOTA: inserire la lettera di unità in cui è realmente il sistema operativo, seguendo le prime fasi di questa guida.

 

Se il sistema non parte neanche dopo queste ultime procedure, credo che rimanga solamente l'opzione della formattazione e installazione pulita dell'intero sistema. Dopo ovviamente aver fatto un backup dei propri dati (seguire le guide apposite).

Cosa sono Tor e il Deep Web: guida introduttiva

Anonimato Online

Forse non tutti lo sapranno, ma l'anonimato online è un terreno che ultimamente sta facendo molto discutere.
Una cosa è sicura: su internet nessuno è completamente al sicuro.

Esistono i più svariati metodi per cercare di catturare dati, anche quelli a prima vista più insignificanti, come ad esempio le ricerche recenti su Amazon. Le società vanno a caccia di queste informazioni e molte volte le rivendono per abbondanti compensi.

Ci sono poi i dati sensibili, ai quali stavolta non sono interessate le società, ma piuttosto persone con molti meno scrupoli.

Deep Web

Nell'ultimo decennio è stata costruita una vera e propria rete nascosta (da deep: profondo), in prevalenza da parte di hackers con lo scopo di 'isolarsi' ad un livello inferiore dal web comune che tutti conoscono.
Isolarsi per nascondere comunicazioni, isolarsi per scambiare dati senza possibilità di essere intercettati, isolarsi soprattutto per sferrare attacchi.

Insomma una specie di "far web", dove non ci sono controlli e dove c'è completa (o quasi) libertà di agire.

undefined

Il funzionamento

Sui vari server interni alla rete sono ospitati molti siti. Questi siti non sono raggiungibili dal web comune e sono visibili solo connettendosi con Tor.

I siti del deep web non sono risolti da server DNS e non hanno IP pubblici: non potremo quindi digitare il loro nome sulla barra di navigazione (e non potremo neanche inserire eventuali IP).
L'unico modo per raggiungere un deep site è quello di conoscere il suo codice univoco, come ad esempio 'vc8icxqa7c8idc.onion'.

Ci sono anche dei motori di ricerca (simili a Google) che consentono di cercare deep sites senza dover per forza conoscere il loro codice.

Gli strumenti

Il programma principale per interfacciarsi a questa rete è TOR.

Tor è l'acronimo per The Onion Router (ovvero: instradatore a cipolla) e funziona nel seguente modo:
permette di collegare un computer A ad un computer B, attraversando tanti altri computer della Onion Net (i cosidetti non-exit relay) e criptando ogni connessione: con questo sistema l'indirizzo IP di A non è più visibile al computer B, poiché B vedrà l'indirizzo IP dell'ultimo computer relay (chiamato exit relay node), che instrada la richiesta di A usando il proprio DNS (Domain Name Server) e quindi bypassando eventuali censure imposte sui DNS dell'ISP usato da A.

Un'immagine aiuterà la comprensione; Alice accede al sito 'blob' passando per una serie di nodi intermedi tramite connessione criptata, in questo modo una eventuale verifica sul richiedente il sito avrà come risposta non il vero indirizzo di Alice, ma l'ultimo e innocente nodo usato.

undefined

Inoltre per evitare in ogni modo che si possa risalire alla sorgente, ogni nodo della rete conosce solo l'indirizzo IP del nodo precedente e del nodo successivo; i nodi sono sparsi per il pianeta ed ogni circa 10 minuti viene generato un altro percorso casuale.

 

Come connettersi

ATTENZIONE: questa guida è a puro scopo informativo, per evitare di mettere a rischio il proprio pc sconsigliamo di provare a connettersi al deep web e decliniamo ogni responsabilità per eventuali conseguenze ad esso connesse.

La procedura è fin troppo semplice, esiste un bundle scaricabile dal sito torproject.org che include tutti gli strumenti per stabilire un collegamento. Inoltre il bundle contiene anche una versione portatile e modificata ad-hoc di Firefox per avere la navigazione subito pronta.

Per maggiori informazioni, leggere la documentazione del sito ufficiale.

 

Usi benevoli

Naturalmente oltre ai criminali, il fatto di poter mantenere l'anonimato è spesso vitale per altri scopi più lodevoli.

Giornalisti, divulgatori, magari impegnati in pubblicazioni per qualcuno molto scomode che preferiscono comunicare senza che il loro IP possa essere letto, o magari perché in zone di guerra.

Inoltre connettersi potrebbe risultare necessario in situazioni di blocco (o censura, come in paesi dell'est) quando viene reso impossibile da parte dei provider o governi di accedere a determinate risorse, anche se in quei casi la scelta forse migliore in termini di prestazioni è di affidarsi a una VPN.

 

Affidabilità e futuro

Neanche a dirlo i governi cercano da sempre di chiudere o per lo meno cercare di "bucare" Tor per tenere sotto controllo i suoi utilizzatori.

Una recente ricerca del governo britannico (con migliaia di sterline spese) ha evidenziato ad oggi l'inviolabilità di tale rete. Insomma neanche i più bravi hacker del mondo sono riusciti a violare quello che dei loro compagni avevano costruito anni fa.

Tor è in continua espansione e si prevede che nell'arco di 20 anni arrivi a coprire una considerevole fetta del traffico dati giornaliero globale.

Come creare una cartella condivisa su Linux in pochi passi

Una semplice guida per creare una cartella condivisa accessibile e scrivibile da qualunque dispositivo in rete locale.

Valida per Ubuntu, Debian, RaspberryPi, ecc..

Attenzione: questa è una delle procedure più semplici e brevi; per creare cartelle con utenti e password la procedura si complica di non poco.

1. installare samba

sudo apt-get install libcupsys2 samba samba-common

2. creare cartella e permessi

mkdir -p /home/samba-share/allusers
chmod –R a+rwx /home/samba-share/allusers

3. editare il file di configurazione

vi /etc/samba/smb.conf

 nota:     per scrivere nel file premere “i”, per cancellare “canc”

 per salvare premere: “esc” e digitare “:wq” (che corrisponde a :writequit)

Modificare nel file:

security=user con security=share (in caso togliere il simbolo di commento)

Inserire nel file (in fondo):

[SHARED]
comment = PMS files
path = /home/samba-share/allusers
browseable = yes
guest account = nobody
guest ok = yes
write ok = yes
writable=yes
read only=no

4. riavviare il servizio

sudo /etc/init.d/samba restart

5. creare un link sul desktop (scrivania)

sudo su
cd /home/pi/Desktop
ln –s /home/samba-share/allusers

 

La cartella sarà ora visibile in LAN con permessi di Lettura/Scrittura per tutti gli utenti (cartella pubblica).

Su Spaceclick.com troverai anche una guida per installare e configurare da zero il tuo RaspberryPi.

Home