Finestre.  Virus.  I Quaderni.  Internet.  ufficio.  Utilità.  Autisti

La lotta alla pirateria sta guadagnando nuovo slancio, i titolari dei diritti e le agenzie governative stanno raddoppiando i loro sforzi in questa difficile questione. Suppongo che ognuno di noi abbia pensato a come proteggere i file personali dall'invasione di "ospiti inaspettati" e persone semplicemente troppo curiose.

introduzione

Crittograferemo i dischi mezzi standard Ubuntu e la chiave di crittografia, come la partizione /boot, verranno posizionati su un'unità rimovibile. Ma perché crittografare la partizione di root? Dopotutto, puoi crittografare solo /home? Ci sono diverse ragioni per questo. Il primo è basato su file di configurazione alcune informazioni possono essere estratte da /etc, anche se non si tratta di dati sensibili. La seconda è che se improvvisamente il contenuto del disco si interessa, puoi sempre dire che è successo tutto e che il disco era già pieno di dati pseudo casuali. Quindi, cosa è necessario per questo?

  • Unità flash con MBR
  • Ubuntu 12.10
  • Pulito HDD

Useremo AES come algoritmo di crittografia del disco, poiché è accettato come standard e resistente alla crittografia e cryptsetup / LUKS come mezzo. Per poter aggiungere spazio libero al volume crittografato, utilizziamo i volumi logici (LVM).

Crea un volume crittografato

Dopo l'avvio dal LiveCD, è necessario preparare un'unità flash: creare una seconda partizione su di essa, dove verranno posizionati /boot e la chiave di crittografia. Creando la partizione /boot con il file system ext2 come seconda, uccidiamo due piccioni con una fava: la prima partizione sarà visibile in tutti i sistemi e i dati possono essere archiviati su di essa e la seconda da Windows non può essere vista così facilmente, il che aggiunge disagio ai curiosi. Per il partizionamento ho usato gparted, ma nessuno ti disturba a usare, ad esempio, fdisk. Successivamente, è necessario montare la partizione appena creata e generare file chiave:

Perché leggere un byte alla volta? Il punto è che la piscina numeri casuali nel kernel è relativamente piccolo e non sempre contiene abbastanza dati casuali, quindi il mouse è stato spostato in modo casuale durante la generazione.


Vediamo cosa fa questo comando. La prima chiave specifica il tipo di funzione hash da utilizzare per eseguire l'hashing della chiave principale. La seconda chiave specifica l'algoritmo e il tipo di crittografia. Mi soffermerò su questo in modo un po 'più dettagliato. Cos'è il CBC? Come sai, AES è un cifrario a blocchi che opera in blocchi di 128, 192 o 256 bit. Ma, di norma, vengono crittografate quantità di informazioni molto maggiori. E sorge il problema: come crittografare in modo che non sia visibile una distribuzione non casuale, dalla quale un crittoanalista può estrarre informazioni. Le persone intelligenti lo hanno risolto in questo modo: il primo blocco contiene IV, un insieme casuale di bit. E ogni blocco successivo di dati aperti viene sottoposto a XOR con il blocco precedente di dati già crittografati. Tutto sembra andare bene, ma nel caso della crittografia del disco, un tale schema, per ovvie ragioni, non è applicabile (non aspetterai 10-20 minuti ogni volta che il sistema decodifichi la sezione che ti serve?). In LUKS, ESSIV viene utilizzato per risolvere il problema dell'accesso casuale alle informazioni: blocchi di dati relativamente piccoli vengono crittografati (settore per settore) e il vettore di inizializzazione viene generato in base al numero di settore e all'hash della chiave. Tale schema protegge anche da alcuni attacchi crittografici. In particolare, questo è il motivo per cui utilizzo LUKS. Confermando le tue intenzioni dopo il lancio squadra precedente, crea una mappatura del dispositivo LUKS:

# cryptsetup -d=/mnt/boot/key.bin luksOpen /dev/sdd disco crittografico

La prima fase della preparazione è completata: ora il dispositivo cryptodisk è apparso nella directory /dev/mapper, che può essere trattato come un normale disco.


Crea LVM su un volume crittografato

In linea di principio, ora puoi installare Ubuntu sul cryptodisk appena creato, ma, come ho già scritto, per poter aumentare lo spazio, è meglio creare un volume LVM sopra di esso, cosa che faremo. Inizializziamo il volume fisico e creiamo un gruppo di volumi:

Ora puoi formattarli in file system. Sei libero di scegliere te stesso, ma ho usato il buon vecchio ext4 sia per il volume root che per vg-home - secondo me, abbiamo già barato troppo per usare file system più recenti:

Abbiamo solo bisogno di installare Ubuntu su una partizione/disco non crittografato e spostarlo su uno crittografato.

Preparazione e migrazione di Ubuntu

Ora mettiamo in chiaro Disco Ubuntu- eseguire la configurazione a proprio piacimento, ad eccezione del posizionamento di /boot e bootloader. Devono essere posizionati su un'unità flash, dove hai creato in anticipo la sezione appropriata. Successivamente, eseguiamo l'avvio dall'unità flash USB per verificare se tutto è aumentato correttamente, installa da apt-get pacchetti lvm2 e cryptsetup - sono stati rimossi automaticamente dopo l'installazione di Ubuntu - e aggiungi / modifica righe /etc/fstab. Dovresti ottenere qualcosa di simile (ad eccezione delle linee con pseudo-file system, che, tuttavia, in sistemi moderni NO):

/etc/fstab UUID=dd7ca139-074a-4b1b-a116-3a42feab7459/boot ext2 defaults 0 2 /dev/mapper/vg-root/ext4 error=remount-ro 0 1 /dev/mapper/vg-home/home ext4 defaults 0 1 / dev / mapper / vg - swap nessuno swap sw 0 0

Montiamo la partizione /boot tramite UUID in modo che quando si aggiungono nuovi dischi non ci sia confusione con i loro nomi. Ora andiamo al file /etc/crypttab, lo abbiamo con il seguente contenuto:

Creiamo uno script per non montare nuovamente l'unità flash USB:

Copia la chiave e cryptsetup

cp / boot / chiave .bin $ ( DESTDIR ) / etc / crypto copy_exec / sbin / cryptsetup / sbin

E lo script effettivo per connettere il cryptodisk (viene eseguito durante l'avvio di initrd):

/etc/initramfs-tools/scripts/local-top/cryptokeys. . . modprobe -b dm_crypt while ! /sbin/cryptsetup -d=/etc/crypto/key.bin luksOpen /dev/disk/by-uuid/c34e4c91-1fa1-4802-88ca-9c3be5c99097 cryptodisk ; do echo "Riprova..." done

Il ciclo while è necessario se successivamente aggiungi lo sblocco del volume con una password. Entrambi gli script devono essere eseguibili, altrimenti il ​​comando successivo non li vedrà e creerà un'immagine standard. Ora puoi emettere il comando initrd update:

# aggiorna initrd -u -k all -v

Ci siamo quasi dimenticati della configurazione del bootloader. Esistono due modi per modificarlo: uno è semplice ma sbagliato: modifica diretta del file /boot/grub/grub.cfg, il secondo è anch'esso semplice, ma questa volta corretto. L'inesattezza del primo metodo è che con ogni aggiornamento del kernel, la configurazione viene sovrascritta utilizzando script da /etc/grub.d/. Andremo dall'altra parte: aggiungeremo uno script che genererà le righe corrette nella vera configurazione di Grab. Tuttavia, ce n'è uno "ma": quando aggiorni il kernel, dovrai cambiarlo ogni volta o rimanere su quello vecchio (quest'ultimo, secondo me, è preferibile - vedi barra laterale). Ecco come appaiono le sue battute:

/etc/grub .d/40_custom menuentry "Ubuntu crypto" ( recordfail = 1 if [ - n $ ( have_grubenv ) ] ; then save_env recordfail ; fi set quiet = 1 insmod part_msdos insmod ext2 insmod gzio

L'UUID è tratto da un file preregistrato

ricerca -- no - floppy -- fs - uuid -- set = root dd7ca139 - 074a - 4b1b - a116 - 3a42feab7459

La partizione /boot è considerata la partizione root per Grub, quindi i percorsi per il kernel e l'immagine initrd sono relativi ad esso.

Facoltativamente, puoi disattivare le voci di menu che non ti servono. Per fare ciò, rimuovi semplicemente il permesso di esecuzione da tutti gli script non necessari in /etc/grub.d/. Ora puoi aggiornare la configurazione principale:

Dopo la copia, puoi provare ad eseguire l'avvio dall'unità flash: seleziona la voce di menu Ubuntu Crypto. Se tutto è andato bene, dopo un po' vedrai una richiesta di login. In tal caso, posso congratularmi con te: stai già lavorando in un sistema crittografato.


Aggiungi/Cambia chiavi

Diciamo che devi cambiare la chiave: l'hai compromessa o hai appena creato una politica di modifica e vuoi seguirla rigorosamente. Cosa è necessario per questo? Prima di tutto fallo backup intestazione del volume LUKS - se tutto va bene, dopo aver cambiato la chiave puoi distruggerla. Lo facciamo, ovviamente, su una partizione non crittografata:

Esaminiamo gli attuali keylot (i posti nell'intestazione del volume crittografato in cui sono archiviate le chiavi - sì, possono essercene più di uno) e ricordiamo il numero di quello attivo (Abilitato). In genere, questo è zero.

Semenenko V.

Quando installi il sistema operativo Ubuntu, potresti non pensare di impostare la crittografia dei dati al suo interno. Oppure potrebbe esserci una situazione in cui aggiungi un utente al sistema senza crittografare la sua home directory. Ma ora hai cambiato idea e hai deciso di configurare la protezione di questa directory. In altre parole, tu (o un altro utente sul computer) vuoi essere in grado di farlo questo momento NO...

Creazione di una partizione crittografata in Ubuntu

Come puoi aggiungere la possibilità di crittografare in un file già installato Sistema Ubuntu Linux?

Fortunatamente, è abbastanza facile da implementare. Per fare ciò, basta seguire tre passaggi fondamentali:

  • creare una copia crittografata della tua home directory;
  • eliminare la home directory originale non crittografata;
  • crittografare la partizione di swap (eseguita solo una volta, quando si installa un sistema Ubuntu o quando si segue questa guida passo dopo passo).

I passaggi in questo articolo sono stati eseguiti su un sistema Ubuntu Precise 12.04 completamente aggiornato.

Preparazione

A causa di un bug in corso ubuntu linux non è possibile accedere se l'immagine di accesso si trova nella cartella principale crittografata dell'utente. Se l'utente ha modificato l'aspetto predefinito, assicurati che non si trovi nemmeno nella cartella Inizio dell'utente.

La creazione di una copia crittografata della home directory dell'utente è una procedura sicura. Tuttavia, vale la pena prestare attenzione al fatto che per la sua implementazione è necessaria una certa quantità di spazio su disco rigido. Se si scopre che c'è troppo poco spazio, è necessario eseguire il backup dei dati, quindi eliminare tutti i file di grandi dimensioni (ad esempio i film) da esso e ripristinarli da questo backup dopo che la crittografia è stata completata. In genere ti consiglio di eseguire il backup di tutti i tuoi dati per evitare possibili problemi.

Usando il tuo gestore di pacchetti preferito, installa il programma encrypt-utils.

Crittografia

In questo tutorial, userò il login di paddy come nome utente su cui agire. Devi sostituirlo con il nome dell'utente la cui home directory verrà crittografata.

Riavvia Ubuntu Linux e vai in "Modalità di ripristino" ( modalità di recupero). Un consiglio: mentre il sistema si avvia, tieni premuto il tasto Maiusc per aprire il menu di Grub. Di solito la riga "Recovery Mode" (Recovery Mode) si trova per seconda dall'alto nell'elenco di questo bootloader.

Nel menu della modalità di ripristino, seleziona "Rilascia" per visualizzare un messaggio riga di comando Per account radice.

Per correggere l'errore di programmazione menzionato all'inizio di questo articolo, inserisci i seguenti due comandi:

mount --opzioni rimonta,rw /
montare --tutto

Ora possiamo creare una copia cifrata della home directory dell'utente paddy. Per fare ciò, inserisci il comando qui sotto. Allo stesso tempo, prenditi la briga di ricordare la tua password, come questa utilità lo richiederà per eseguire l'operazione:

Al termine del processo di crittografia, verranno visualizzati diversi avvisi. Puoi ignorarli. Ma dovrai ricordare il percorso della cartella temporanea creata da questo comando. Il suo aspetto sarà qualcosa del genere: /home/paddy.ChPzzxqD

In questo caso, gli ultimi otto caratteri (dopo il punto) sono un insieme casuale. Avrai bisogno di questa directory nei prossimi passaggi "Completa" o "Ritorna allo stato iniziale", che verranno discussi in seguito.

Riavvia il tuo sistema Ubuntu Linux. Per fare ciò, inserisci il comando: riavvia ora

Potrebbero essere necessari alcuni secondi dopo aver digitato ed eseguito il comando, quindi sii paziente.

Completamento

Accedi al tuo sistema Ubuntu nel solito modo, come hai fatto ogni volta. Controlla che tutto funzioni come prima.

Se qualcosa non va, puoi andare immediatamente alla voce "Ritorna allo stato originale".

Se tutto nel sistema funziona correttamente, completa i passaggi finali.

Apri il terminale e inserisci il comando per eliminare la directory temporanea. Per fare ciò, dovrai ricordare il percorso della cartella temporanea che è stata creata quando la home directory è stata crittografata.

sudo rm -R /home/paddy.ChPzzxqD

Ripristina i dati che hai eliminato (se presenti) nel passaggio "Preparazione".

Apri di nuovo il terminale e inserisci il comando per crittografare la partizione di swap. Se in precedenza avevi configurato un utente con la crittografia della home directory, puoi tranquillamente saltare questo passaggio: sudo ecryptfs-setup-swap

Riavvia di nuovo.

Ritorno allo stato originale

Se il processo di crittografia non è riuscito, sarà necessario ripetere nuovamente i passaggi precedenti.

Esegui i comandi:

mount --opzioni rimonta,rw /
montare --tutto
ecryptfs-migrate-home --user paddy

Immettere quindi il comando per visualizzare il contenuto della cartella temporanea creata durante il processo di crittografia. Per fare ciò, devi ancora una volta ricordare il percorso per raggiungerlo. Questo non dovrebbe generare errori. Se lo fanno, allora hai bisogno di aiuto.

ls -l /home/paddy.ChPzzxqD

Ora completa il processo di ripristino emettendo tre comandi:

cd /home
rm -R paddy .ecryptfs/paddy
mv paddy.ChPzzxqD

Riavvia di nuovo.

Spero che i passaggi precedenti ti abbiano aiutato. Se hai problemi irrisolvibili, puoi inviare una richiesta sul mio thread del forum Ubuntu.

Modalità sospensione quando crittografata

La maggior parte degli utenti spesso si chiede perché il sistema operativo Ubuntu non va in letargo dopo aver eseguito le operazioni precedenti (descritte in precedenza in questo articolo) e come ripristinare questa capacità. Il motivo è la crittografia configurata. Se hai configurato la crittografia della home directory, anche la partizione di swap è crittografata, ma con una chiave casuale. Quando si iberna il sistema, il file data memoria ad accesso casuale memorizzati nella partizione di swap, mentre sono crittografati con una chiave casuale. Quando si ripristina il sistema dall'ibernazione, la chiave utilizzata per crittografare la partizione di swap è già irrimediabilmente persa e il sistema non è in grado di leggere questa partizione. Di conseguenza, i dati non possono essere recuperati e non è possibile un ritorno allo stato precedente.

Se non hai configurato la crittografia delle partizioni sul tuo sistema, ripristinare l'ibernazione in Ubuntu è facile. Per fare ciò, basta eseguire i comandi: ls -l /home/paddy.ChPzzxqD
rm -R paddy .ecryptfs/paddy

Ma se la partizione home dell'utente e la partizione di swap sono crittografate sul sistema, è necessario sostituire la crittografia della partizione di swap non con una chiave casuale, ma con una passphrase preselezionata.

Tuttavia, tieni presente che ogni utente del computer dovrà conoscere questa passphrase al momento dell'avvio del sistema.

Sono stato messo alla prova questo metodo in entrambi i casi, sia su un normale sistema Ubuntu 12.04 che su un sistema Ubuntu installato su macchina virtuale scatola virtuale. In quest'ultimo caso, si sono verificati problemi con la visualizzazione dello schermo durante il ripristino dalla modalità di sospensione. Ma su un sistema normale tutto ha funzionato bene.

Preparazione

Immettere il seguente comando nel terminale: sudo cryptsetup status crypt scambio 1

Di conseguenza, vedrai una linea che indicherà il dispositivo, simile a questa: /dev/sda1

o /dev/sdb5

Questo dispositivo è la partizione di swap sul tuo sistema. Ricordalo, perché ne avrai bisogno in seguito.

Quando si apportano modifiche al sistema, consiglio sempre di eseguire un file full backup dati. Nel nostro caso, sarà anche utile.

Impostazione del sonno

Immettere i seguenti comandi. Assicurati di sostituire /dev/sdXN con la partizione di swap creata nella sezione "Preparazione". Quando si inseriscono i comandi, è necessario attenersi rigorosamente alla sequenza specificata:

sudo swapoff /dev/mapper/cryptswap1
sudo cryptsetup luksChiudi /dev/mapper/cryptswap1
sudo cryptsetup luksFormat cipher aes cbc essiv:sha256 verifica passphrase dimensione chiave 256 /dev/sdXN

AVVERTIMENTO!
========
Questo sovrascriverà irrevocabilmente i dati su /dev/sda1.
Sei sicuro? (Digitare maiuscolo sì): SI
Inserisci la passphrase LUKS:
Verifica passphrase:
sudo cryptsetup luksOpen /dev/sdXN cryptswap1

Inserisci la passphrase per il dispositivo /dev/sda1 (e ripetila per evitare errori di battitura):

sudo mk scambio/dev/mapper/crypt scambio 1
sudo scambia su tutto
di swapon

L'ultimo comando visualizzerà il nome file del dispositivo /dev/crypt swap 1 .

Apri il file di configurazione /etc/crypttab nel tuo editor preferito. Sostituisci la riga crypt swap 1 con la seguente (non dimenticare di modificare /dev/sdXN sul tuo dispositivo di scambio): cryptswap1 /dev/sdXN nessuno luks

Ora modifica il file /usr/share/initramfstools/scripts/local-top/cryptroot . In esso, trova la riga (di solito ha il numero 288, ma può cambiare): messaggio "cryptsetup: errore sconosciuto durante l'impostazione della mappatura del dispositivo"

Vai al successivo riga vuota(prima di FSTYPE=") e inserire una nuova riga (non dimenticare di sostituire il dispositivo /dev/sdXN): /sbin/cryptsetup luksOpen /dev/sdXN cripta scambio 1

Modifica il file /etc/acpi/hibetnate.sh . Sulla prima riga vuota, incolla il valore: DEVICE="/dev/mapper/crypt scambio 1"

Modifica il file /etc/initramfstools/conf.d/resume. Sostituisci la riga esistente al suo interno con la seguente: RESUME=/dev/mapper/crypt scambio 1

Quindi modifica il file /etc/polkit1/localauthoriyt/50-local.d/com.ubuntu.enable-hibernate.pkla . Il file inizialmente non esiste, quindi dovrai prima crearlo. Quindi aggiungi le righe ad esso:
Identità=utenteunix:*
Azione=org.freedesktop.upower.hibernate
ResultActive=sì

Infine, apri un terminale e inserisci il seguente comando: sudo update initramfs u k all

Riavviare.

Utilizzo della modalità di sospensione

La prossima volta che avvierai Ubuntu Linux, ti chiederà una nuova passphrase per la partizione di swap. Inseriscilo e l'ulteriore normale processo di accesso continuerà.

Usando unità cloud, gli utenti sono sempre più interessati alla crittografia distribuzioni linux. ti presenterò programma interessante"Crittografia nuvola".

Hai mai pensato che, puramente teoricamente, quei file che memorizzi nel cloud storage, puramente tecnicamente, possono diventare pubblici in pochi minuti in determinate circostanze. Personalmente no, e con tutta la mia mancanza di paranoia, pubblico queste informazioni esclusivamente per coloro che sono "già allevati da ZOG", perché come diceva la vecchia barzelletta: "Se non sei paranoico, questo non significa che non sei perseguitato”. Quindi seguimi. Amici.

IN Crittografia Linux disk è implementato in vari modi ea vari livelli. Esistono centinaia di modi per crittografare un intero disco. Mostrerò solo il lavoro del programma che mi piace, che anche un noob come me può capire. Questa app si chiama Crittomatore.

Cosa mi è piaciuto di questo:

  • Funziona alla grande e istantaneamente con Google Drive, Yandex Disk, OneDrive, Mail.ru Cloud, Dropbox, ownCloud, Nextcloud e, in generale, con qualsiasi servizio di cloud storage in grado di sincronizzarsi con una directory locale;
  • è un'applicazione open source, che indica la possibilità di verificare la presenza di backdoor e altre cose.
  • esegue la crittografia AES con una lunghezza di 256 bit;
  • aprire fonte significa niente backdoor;
  • crittografa i nomi dei file e offusca la struttura delle cartelle;
  • può essere utilizzato localmente, non è richiesta alcuna connessione a Internet.

In effetti, la crittografia avviene su computer locale e poi sincronizzato con il cloud, quindi anche se il tuo archiviazione cloud qualcuno ottiene lo stesso accesso, quindi i suoi occhi vedranno un insieme di file e cartelle con un nome abracadabra e lo stesso contenuto.

Mi è piaciuta questa applicazione per due motivi, il primo è un'implementazione interessante e conveniente per connettere contenitori crittografati come un disco rigido virtuale. Implementato dal tipo di connessione chiavetta USB. E il secondo è multipiattaforma, il cryptomator è disponibile per Linux, Windows e Mac OS. Cioè, se hai Linux a casa, su Lavoro Mac OS e in vacanza visitando Windows, puoi accedere facilmente ai tuoi file crittografati nel cloud semplicemente installando Cryptomator e inserendo la tua password al suo interno.

Installazione di Cryptomator: un'applicazione che crittografa file e cartelle in Linux

Per installare su Ubuntu e derivate digitare da terminale:

#aggiungi repository sudo add-apt-repository ppa:sebastian-stenzel/cryptomator #update rep elenchi di pacchetti sudo apt-get update #installa direttamente Cryptomator sudo apt-get install cryptomator

Installazione in ArcoLinux e le sue derivazioni è comunque semplice, come sempre

Yaourt -S cryptomator #Non scriverò di pacaur e quindi è chiaro

L'installazione in Fedora, Centos e altre distribuzioni rpm viene eseguita semplicemente scaricando un pacchetto rpm binario e installandolo effettivamente.
Scarica il pacchetto rpm

Utilizzo di Cryptomator

Ecco come appare la creazione di un nuovo repository


Selezione della directory in cui verrà creata la directory crittografata

Questa directory può essere locale o una directory sincronizzata nel tuo archivio cloud.


Creiamo una chiave forte, che useremo in futuro per connettere il nostro archivio crittografato.


Successivamente, resta solo da inserire la chiave appena creata e la partizione crittografata viene montata.


Nello screenshot qui sopra, ho gettato un pacchetto con file da 536,9 megabyte nella cartella di cifratura montata e ha risolto questo mucchio di piccoli file per me in 1 minuto.


Autore: Paddy Landau
Data di pubblicazione: settembre 2012
Traduzione: Semenenko V.
Data di pubblicazione della traduzione: 13 novembre 2012

Quando installi il sistema operativo Ubuntu, potresti non pensare di impostare la crittografia dei dati al suo interno. Oppure potrebbe esserci una situazione in cui aggiungi un utente al sistema senza crittografare la sua home directory. Ma ora hai cambiato idea e hai deciso di configurare la protezione di questa directory. In altre parole, tu (o un altro utente sul computer) desideri una funzionalità che attualmente non esiste...

Creazione di una partizione crittografata in Ubuntu

Come puoi aggiungere la possibilità di crittografare già sistema installato ubuntu linux?

Fortunatamente, è abbastanza facile da implementare. Per fare ciò, basta seguire tre passaggi fondamentali:

  • creare una copia crittografata della tua home directory;
  • eliminare la home directory originale non crittografata;
  • crittografare la partizione di swap (eseguita solo una volta, quando si installa un sistema Ubuntu o quando si segue questa guida passo dopo passo).

I passaggi in questo articolo sono stati eseguiti su un sistema Ubuntu Precise 12.04 completamente aggiornato.

Preparazione

A causa di un bug corrente in Ubuntu Linux, non è possibile accedere se l'immagine di accesso si trova nella cartella home crittografata dell'utente. Se l'utente ha modificato l'aspetto predefinito, assicurati che non si trovi nemmeno nella cartella Inizio dell'utente.

La creazione di una copia crittografata della home directory dell'utente è una procedura sicura. Tuttavia, vale la pena prestare attenzione al fatto che per la sua implementazione è necessaria una certa quantità di spazio su disco rigido. Se si scopre che c'è troppo poco spazio, è necessario eseguire il backup dei dati, quindi eliminare tutti i file di grandi dimensioni (ad esempio i film) da esso e ripristinarli da questo backup dopo che la crittografia è stata completata. In genere ti consiglio di eseguire il backup di tutti i tuoi dati per evitare possibili problemi.

Usando il tuo gestore di pacchetti preferito, installa il programma encrypt-utils.

Crittografia

In questo tutorial, userò il login di paddy come nome utente su cui agire. Devi sostituirlo con il nome dell'utente la cui home directory verrà crittografata.

Riavvia Ubuntu Linux e vai in "Modalità di ripristino". Un consiglio: mentre il sistema si avvia, tieni premuto il tasto Maiusc per aprire il menu di Grub. Di solito la riga "Recovery Mode" (Recovery Mode) si trova per seconda dall'alto nell'elenco di questo bootloader.

Dal menu della modalità di ripristino, seleziona "Drop" per visualizzare il prompt della riga di comando per l'account root.

Per correggere l'errore di programmazione menzionato all'inizio di questo articolo, inserisci i seguenti due comandi:

Mount --options remount,rw / mount --all

Ora possiamo creare una copia cifrata della home directory dell'utente paddy. Per fare ciò, inserisci il comando qui sotto. Allo stesso tempo, prenditi la briga di ricordare la tua password, poiché questa utility la richiederà per completare l'operazione:

cryptfs-migrate-home --user paddy

Al termine del processo di crittografia, verranno visualizzati diversi avvisi. Puoi ignorarli. Ma dovrai ricordare il percorso della cartella temporanea creata da questo comando. Il suo aspetto sarà qualcosa del genere:

/home/paddy.ChPzzxqD

In questo caso, gli ultimi otto caratteri (dopo il punto) sono un insieme casuale. Avrai bisogno di questa directory nei prossimi passaggi "Completa" o "Ritorna allo stato iniziale", che verranno discussi in seguito.

Riavvia il tuo sistema Ubuntu Linux. Per fare ciò, inserisci il comando:

Riavvia ora

Potrebbero essere necessari alcuni secondi dopo aver digitato ed eseguito il comando, quindi sii paziente.

Completamento

Accedi al tuo sistema Ubuntu nel solito modo, come hai fatto ogni volta. Controlla che tutto funzioni come prima.

Se qualcosa non va, puoi andare immediatamente alla voce "Ritorna allo stato originale".

Se tutto nel sistema funziona correttamente, completa i passaggi finali.

Apri il terminale e inserisci il comando per eliminare la directory temporanea. Per fare ciò, dovrai ricordare il percorso della cartella temporanea che è stata creata quando la home directory è stata crittografata.

Sudo rm -R /home/paddy.ChPzzxqD

Ripristina i dati che hai eliminato (se presenti) nel passaggio "Preparazione".

Apri di nuovo il terminale e inserisci il comando per crittografare la partizione di swap. Se in precedenza avevi configurato un utente con la crittografia della home directory, puoi tranquillamente saltare questo passaggio:

sudo ecryptfs-setup-swap

Riavvia di nuovo.

Ritorno allo stato originale

Se il processo di crittografia non è riuscito, sarà necessario ripetere nuovamente i passaggi precedenti.

Esegui i comandi:

Mount --options remount,rw / mount --all ecryptfs-migrate-home --user paddy

Immettere quindi il comando per visualizzare il contenuto della cartella temporanea creata durante il processo di crittografia. Per fare ciò, devi ancora una volta ricordare il percorso per raggiungerlo. Questo non dovrebbe generare errori. Se lo fanno, allora hai bisogno di aiuto.

ls -l /home/paddy.ChPzzxqD

Ora completa il processo di ripristino emettendo tre comandi:

Cd /home rm -R paddy .ecryptfs/paddy mv paddy.ChPzzxqD

Riavvia di nuovo.

Spero che i passaggi precedenti ti abbiano aiutato. Se hai problemi irrisolvibili, puoi inviare una richiesta sul mio thread del forum Ubuntu:

Modalità sospensione quando crittografata

La maggior parte degli utenti spesso si chiede perché il sistema operativo Ubuntu non va in letargo dopo aver eseguito le operazioni precedenti (descritte in precedenza in questo articolo) e come ripristinare questa capacità. Il motivo è la crittografia configurata. Se hai configurato la crittografia della home directory, anche la partizione di swap è crittografata, ma con una chiave casuale. Quando si mette il sistema in modalità ibernazione, i dati della RAM vengono archiviati nella partizione di swap e crittografati con una chiave casuale. Quando si ripristina il sistema dall'ibernazione, la chiave utilizzata per crittografare la partizione di swap è già irrimediabilmente persa e il sistema non è in grado di leggere questa partizione. Di conseguenza, i dati non possono essere recuperati e non è possibile un ritorno allo stato precedente.

Se non hai configurato la crittografia delle partizioni sul tuo sistema, ripristinare l'ibernazione in Ubuntu è facile. Per fare ciò, basta eseguire i comandi:

ls -l /home/paddy.ChPzzxqD rm -R paddy .ecryptfs/paddy

Ma se la partizione home dell'utente e la partizione di swap sono crittografate sul sistema, è necessario sostituire la crittografia della partizione di swap non con una chiave casuale, ma con una passphrase preselezionata.

Tuttavia, tieni presente che ogni utente del computer dovrà conoscere questa passphrase al momento dell'avvio del sistema.

Ho provato questo metodo in entrambi i casi, sia su un normale sistema Ubuntu 12.04 sia su un sistema Ubuntu installato su un computer virtuale macchina virtuale. In quest'ultimo caso, si sono verificati problemi con la visualizzazione dello schermo durante il ripristino dalla modalità di sospensione. Ma su un sistema normale tutto ha funzionato bene.

Preparazione

Immettere il seguente comando nel terminale:

sudo cryptsetup status crypt swap 1

Di conseguenza, vedrai una riga in cui verrà designato il dispositivo, simile a questa:

/dev/sda1

/dev/sdb5

Questo dispositivo è la partizione di swap sul tuo sistema. Ricordalo, perché ne avrai bisogno in seguito.

Consiglio sempre di eseguire un backup completo dei dati ogni volta che si apportano modifiche al sistema. Nel nostro caso, sarà anche utile.

Impostazione del sonno

Immettere i seguenti comandi. Assicurati di sostituire /dev/sdXN con la partizione di swap creata nella sezione "Preparazione". Quando si inseriscono i comandi, è necessario attenersi rigorosamente alla sequenza specificata:

sudo swapoff /dev/mapper/cryptswap1 sudo cryptsetup luksClose /dev/mapper/cryptswap1 sudo cryptsetup luksFormat cipher aes cbc essiv:sha256 verifica dimensione chiave passphrase 256 /dev/sdXN ATTENZIONE! ======== Questo sovrascriverà irrevocabilmente i dati su /dev/sda1. Sei sicuro? (Digitare maiuscolo sì): SÌ Immettere la passphrase LUKS: Verificare la passphrase: sudo cryptsetup luksOpen /dev/sdXN cryptswap1

Inserisci la passphrase per il dispositivo /dev/sda1 (e ripetila per evitare errori di battitura):

sudo mk swap /dev/mapper/crypt swap 1 sudo swapon --all swapon -s

L'ultimo comando visualizzerà il nome file del dispositivo /dev/crypt swap 1 .

Apri il file di configurazione /etc/crypttab nel tuo editor preferito. Sostituisci la riga crypt swap 1 con la seguente (non dimenticare di modificare /dev/sdXN sul tuo dispositivo di scambio):

Cryptswap1 /dev/sdXN non funziona

Ora modifica il file /usr/share/initramfstools/scripts/local-top/cryptroot . In esso, trova la riga (di solito ha il numero 288, ma può cambiare):

Messaggio "cryptsetup: errore sconosciuto durante la configurazione della mappatura del dispositivo"

Passa alla riga vuota successiva (prima di FSTYPE=") e inserisci una nuova riga (non dimenticare di sostituire il dispositivo /dev/sdXN):

/sbin/cryptsetup luksOpen /dev/sdXN scambio di cripta 1

Modifica il file /etc/acpi/hibetnate.sh . Sulla prima riga vuota, incolla il valore:

DEVICE="/dev/mapper/crypt swap 1"

Modifica il file /etc/initramfstools/conf.d/resume. Sostituisci la riga esistente al suo interno con la seguente:

RESUME=/dev/mapper/crypt swap 1

Quindi modifica il file /etc/polkit1/localauthoriyt/50-local.d/com.ubuntu.enable-hibernate.pkla . Il file inizialmente non esiste, quindi dovrai prima crearlo. Quindi aggiungi le righe ad esso:

Identity=utenteunix:* Action=org.freedesktop.upower.hibernate ResultActive=yes

Infine, apri un terminale e inserisci il seguente comando:

Sudo aggiorna initramfs u k all

Riavviare.

Utilizzo della modalità di sospensione

La prossima volta che avvierai Ubuntu Linux, ti chiederà una nuova passphrase per la partizione di swap. Inseriscilo e l'ulteriore normale processo di accesso continuerà.

Se improvvisamente hai dimenticato la passphrase, inserisci qualcosa. Dopo tre tentativi falliti il sistema continuerà comunque il processo di accesso, ma senza montare la partizione di swap. Per ottenere un nuovo parola chiave seguire le istruzioni in questo articolo istruzioni passo passo Ancora.

Ora troverai la modalità "Ibernazione" nel menu di spegnimento di Ubuntu Linux e puoi usarla. Se vuoi entrare in modalità sospensione dalla riga di comando, digita semplicemente il seguente comando nel terminale.

È l'unico modo affidabile protezione delle informazioni, nelle condizioni in cui è possibile accesso fisico estranei al computer. Qualsiasi password di avvio sistema operativo- Windows, Linux o Mac OS, possono salvare solo dai bambini. Qualsiasi specialista aggirerà protezione della password in un paio di minuti, circa il tempo necessario per collegare un'unità flash USB al computer e avviare il sistema operativo da essa.

Ma i dati crittografati sono molto più difficili da aprire. O addirittura impossibile senza una chiave digitale o una passphrase. Naturalmente, esistono diversi algoritmi di crittografia e all'interno di questi algoritmi ci sono parametri diversi: tutto ciò influisce sulla resistenza all'hacking. Quando si utilizzano algoritmi deboli o impostazioni vulnerabili, è possibile accedere a file e cartelle crittografati. Ma nel caso generale, possiamo presumere che la crittografia sia una protezione dei dati affidabile.

Il modo più comune per proteggere i dati è crittografare i file. Una cartella crittografata viene creata sul disco e i file vengono scritti su di essa. Teoricamente, questo è affidabile se viene utilizzato l'algoritmo AES, le chiavi sono lunghe. Ma rimane un'ovvia vulnerabilità dei dati con questo metodo di crittografia. Il fatto è che il sistema operativo rimane non protetto. E questo offre a un utente malintenzionato l'opportunità di installarsi nel sistema programma speciale, (keylogger, rootkit) che verrà avviato all'avvio del sistema operativo e monitorerà le azioni dell'utente e quindi prima o poi un utente malintenzionato riceverà una password o un file chiave per accedere a cartelle e file crittografati. Oppure sarà in grado di ottenere questi dati da solo dopo che l'utente apre il file crittografato.

Quindi, la protezione davvero forte dei dati sul disco non è la crittografia singoli file e cartelle, ma l'intera partizione. Inoltre, per una protezione affidabile, è necessaria la crittografia dell'intero disco. Nulla dovrebbe rimanere "in superficie". Questo articolo fornirà istruzioni su come creare un file crittografato partizione di sistema e disco nel sistema operativo Linux Ubuntu.

Il file system crittografato in Linux è supportato a livello di kernel del sistema operativo. Cioè, non è necessario cercare alcuni fantasiosi programmi crittografici e, inoltre, l'uso di crittografia partizioni linux avviene in modo trasparente: l'utente non ha bisogno di sapere nulla sulla crittografia e non deve fare nulla per crittografare i propri file e cartelle.

Per creare un potente sistema crittografato sotto Linux, è necessario capire quali parti di questo sistema devono essere protette. Ci sono quattro di loro:

  • Area di sistema - indicata come radice O / .
  • Area di avvio - denominata /stivale radice sotto forma di una cartella.
  • Area dati utente - indicata come /casa. Può essere posizionato su una sezione separata o su una sezione radice sotto forma di una cartella.
  • Area di memoria virtuale - indicata come scambio. Molto spesso posizionato su una sezione separata, ma può essere posizionato su una sezione radice come file.

Tutte queste aree devono essere protette.

L'articolo riguarderà una configurazione semplificata - scambio E /stivale in sezioni separate e radice E /casa riuniti in una sezione. Ma per casi più complessi, la tecnologia di protezione sarà la stessa.

Con crittografia dell'area radice, scambia E /casa non ci sono difficoltà, ma con protezione /stivale C'è un problema. Il fatto è che da quest'area il caricatore di sistema avvia initrd e Kernel Linux. Se quest'area è crittografata, il bootloader non sarà in grado di avviare il kernel e, di conseguenza, il sistema operativo non si avvierà. Questo è crittografare /stivaleè impossibile, ma è anche impossibile lasciarlo aperto, perché in questo caso sarà possibile sostituire il kernel con un altro contenente un codice dannoso che intercetterà la password per decifrare il disco..

La via d'uscita è posizionare una sezione /stivale su supporto rimovibile, su un'unità flash. L'unità flash sarà una specie di chiave elettronica per il sistema. Senza di esso, sarà impossibile avviare il sistema operativo da un disco crittografato. Cioè, protezione della partizione /stivale effettuato il livello fisico- estraendolo dal computer.

Così schema generale protezione è:

  • Sezioni radice, scambia E /casa posizionato su un disco rigido completamente crittografato.
  • Capitolo /stivale posizionati su supporti rimovibili.

L'installazione di Ubuntu crittografato verrà eseguita con usando Ubuntu vivere. Perché vivere? Dopotutto, la distribuzione alternativa ti consente di fare lo stesso senza ballare con un tamburello, ci sono opzioni di crittografia nel programma di installazione. Personalmente, non mi piace il fatto che Alternate sia solo una distribuzione di installazione, non puoi più usarla, né per la diagnostica, né per lavoro. Inoltre, il programma di installazione alternativo funziona nella console, che è in qualche modo arcaico nel 21° secolo. Quindi vivi.

Questa istruzione è applicabile a due versioni LTS 10.04 e 12.04, in entrambi i casi tutto è fatto allo stesso modo. Sebbene sia stato testato in pratica solo su queste due versioni, dovrebbe funzionare anche su altre.

Dopo aver scaricato su Live, avrai bisogno di una connessione Internet, poiché non esiste un pacchetto lvm2 nelle versioni Live: dovrai scaricarlo e installarlo. Ecco quindi la guida passo passo.

Installazione di LVM

Stabilire una connessione Internet. Quindi esegui due comandi:

sudo apt-get update
sudo apt-get install lvm2

È possibile scaricare in anticipo, masterizzare i pacchetti libdevmapper-event, lvm2, watershed su un'unità flash USB o un disco e quindi installarli con il comando dpkg. Ma Internet sarà ancora necessario nella fase finale.

Preparazione del disco rigido e dell'unità flash

Sul disco rigido, è necessario creare una partizione vuota e non allocata nel file system. Il formato del disco può essere MS-DOS o GPT, non importa. Questa sezione fungerà da contenitore crittografico.

È inoltre necessario creare una partizione sull'unità flash, ma con sistema di file est3.

Crittografia dell'unità di sistema

La crittografia dell'intera partizione sul disco rigido viene eseguita dal comando:

sudo cryptsetup --cipher aes-xts-plain --key-size 512 --verify-passphrase luksFormat /dev/sda1

Nota importante.

Questo comando emetterà una richiesta e dovrai inserire la parola SÌ per confermarla, proprio così, lettere maiuscole. Questa richiesta viene fatta per assicurarti di avere esattamente ciò che è abilitato sulla tua tastiera. lingua inglese! Successivamente, dovrai inserire la passphrase due volte. Questa frase dovrebbe essere lunga e non dovrebbe contenere caratteri ripetuti frequentemente. Idealmente, questo dovrebbe essere un insieme arbitrario di lettere e numeri. È meglio inventare questa frase in anticipo, anche prima dell'inizio dei lavori per la creazione di un sistema.

Quando si inserisce una passphrase, nessun carattere verrà visualizzato nel terminale, quindi è necessario digitare con attenzione. Ma la frase verrà richiesta due volte, quindi se commetti un errore, il programma lo segnalerà.

Dopo aver creato con successo il cryptocontainer, per ulteriori lavori, è necessario connettere questo disco crittografato:

sudo cryptsetup luksOpen /dev/sda1 criptato

Questo comando richiederà la passphrase immessa nel comando precedente.

Crea partizioni crittografate

Il passaggio successivo consiste nel creare partizioni crittografate all'interno del contenitore crittografico LUKS. Per creare queste partizioni, viene utilizzato il meccanismo LVM.

sudo pvcreate /dev/mapper/crypted
sudo vgcreate ubuntu /dev/mapper/crypted
sudo lvcreate -L 2600M -n scambia Ubuntu
ssudo lvcreate -l 100%FREE -n root ubuntu
sudo mkswap /dev/mapper/ubuntu-swap
sudo mkfs.ext3 /dev/mapper/ubuntu-root

Nota.

La dimensione della partizione di swap dovrebbe essere circa il 30% più grande della dimensione della RAM. La partizione root è di almeno 5-7 Gigabyte.

Installazione di Ubuntu su un disco crittografato

Dopo aver creato partizioni crittografate, è necessario eseguire il programma di installazione, il cui collegamento si trova sul desktop. L'installazione è normale, è importante solo smontare l'unità flash USB in cui verrà scritto /boot prima di avviare il programma di installazione e specificare correttamente le partizioni per l'installazione.

Devi rispondere "Sì" a questa richiesta. Questa è un'unità flash in cui dovrai installare la partizione /boot. Tale richiesta verrà emessa se dimentichi di smontare l'unità flash prima dell'avvio del programma di installazione.

Ed ecco come collegare le sezioni:

Le partizioni crittografate per l'installazione di Ubuntu sono /dev/mapper/ubunu-root, /dev/mapper/ubunu-swap. Partizione / avvio sull'unità flash (questo è sdb1).

Nella finestra del programma di installazione, al passaggio 8, è necessario fare clic sul pulsante "Avanzate" e assicurarsi che il bootloader venga installato sull'unità flash USB:

In Ubuntu 12.04 entrambe le partizioni e il bootloader si trovano nella stessa finestra:

Successivamente, nella finestra del passaggio 8, è necessario fare clic sul pulsante "Installa" e attendere il completamento dell'installazione. Al termine dell'installazione, il programma di installazione richiederà di riavviare il computer. Non puoi ricaricare!È necessario rimanere in Live Ubuntu. Il fatto è che non esiste alcun pacchetto lvm2 in Ubuntu installato sul disco rigido, il che significa che l'avvio del sistema da disco rigido sarà impossibile.

Installazione di LVM su un disco rigido

Per installare lvm2 in Ubuntu appena installato sul disco rigido, è necessario eseguire i seguenti comandi:

sudo mount /dev/mapper/ubuntu-root /mnt
sudo mount /dev/sdb1 /mnt/boot
sudo mount -o bind /dev /mnt/dev
sudo mount -t proc proc /mnt/proc
sudo mount -t sysfs sys /mnt/sys

sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
sudo chroot /mnt /bin/bash
echo "UUID crittografato=$(ls -la /dev/disk/by-uuid | grep $(basename /dev/sda1) | cut -d " " -f 9) nessuno luks" >> /etc/crypttab
aggiornamento apt-get
apt-get install cryptsetup lvm2
Uscita

Nota 1. In Ubuntu 12.04 invece di taglia -d " " -f 9 bisogno di scrivere cut -d " " -f 11! Inoltre, dopo echo ... /etc/crypttab , ti consiglio di eseguire cat /etc/crypttab per verificare se la stringa è corretta:

Nota 2. Dopo il penultimo comando, ci saranno messaggi di errore, puoi ignorarli.

Ora puoi riavviare il computer e utilizzare Ubuntu crittografato installato. Ovviamente, nel BIOS, devi specificare l'avvio dall'unità flash in cui è installata la partizione /boot!

In Ubuntu installato in questo modo, puoi persino utilizzare la modalità di ibernazione, senza temere che il contenuto della memoria scaricato su disco diventi disponibile per un utente malintenzionato.

Nota 1

È importante capire che anche con una crittografia così totale, le vulnerabilità rimangono.

  • Innanzitutto, devi mantenere segreta la frase chiave. Se lo scrivi su un adesivo e lo attacchi al monitor, non va bene. Se un utente malintenzionato ottiene la passphrase, sarà in grado di aprire il tuo disco crittografato utilizzando qualsiasi distribuzione Live Linux.
  • In secondo luogo, è necessario proteggere l'unità flash USB avviabile a livello fisico. Non lasciarla incustodita. Spegni il computer: rimuovi l'unità flash e riponila in un luogo sicuro.
  • In terzo luogo, non lasciare incustodito incluso computer. Quando il computer è acceso, sono disponibili sia il disco crittografato che l'unità flash avviabile.

È anche necessario capire che la crittografia è una protezione per il momento in cui il tuo computer è spento e tu non ci sei. Ma quando lavori su un computer, rimane la possibilità di entrare nel tuo computer. malware da Internet. Tali programmi possono "rubare" le tue informazioni mentre utilizzi il computer e Internet.

Pertanto, è importante adottare misure protettive generali. Non "rifuggire" da nessuna parte su Internet. Non installare programmi non verificati. Usa firewall. E per requisiti di sicurezza più seri, è necessario utilizzare tbc E SELinux.

Nota 2

Fare una copia unità flash avviabile, il modo più semplice è con il comando gg. Masterizza questa immagine su un'altra unità flash o su un disco laser. Una copia su un'altra unità flash è più comoda perché, se necessario, puoi utilizzarla immediatamente. Ma in ogni caso, questa copia, qualunque essa sia, dovrà essere conservata in un luogo sicuro. E dopo aver aggiornato il kernel o il bootloader, dovrai aggiornare la copia dell'unità flash.

Ivan Suchov, 2012

Durante la stesura di questo articolo, sono state utilizzate le informazioni dalla pubblicazione in

Se noti un errore, seleziona una parte di testo e premi Ctrl + Invio
CONDIVIDERE: