Szyfrowanie plików i folderów za pomocą terminala


Odpowiedzi:


15

Możesz szyfrować i deszyfrować pliki za pomocą gpg

Aby zaszyfrować plik

gpg -c file.to.encrypt

Aby odszyfrować plik

gpg file.to.encrypt.gpg

Ale gpg nie zrobi całych katalogów. Dla całych katalogów masz kilka opcji, ecryptfs jest popularny.

# Install if ecryptfs-utils if needed
sudo apt-get install ecryptfs-utils

# Make an encrypted directory
ecryptfs-setup-private

To sprawi, że katalog będzie „Prywatny”. Wszelkie dane wprowadzone do katalogu Privatezostaną automatycznie zaszyfrowane po wylogowaniu i odszyfrowane po zalogowaniu.

Jeśli chcesz innego zachowania lub innego katalogu ...

mkdir ~/secret
chmod 700 ~/secret

sudo mount -t ecryptfs ~your_user/secret ~your_user/secret

Umieść swoje dane w ~ / secrte

Szyfrować

sudo umount ~your_user/secret

Aby odszyfrować

sudo mount ./secret ./secret -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes

Wskazówka: utwórz alias dla tego drugiego polecenia.

Dodatkowe informacje można znaleźć na stronie http://bodhizazen.com/Tutorials/Ecryptfs lub man ecryptfs .


10

ecryptfs z pewnością zaszyfruje pliki i foldery, zapewniając, że dane zapisywane na dysku są zawsze szyfrowane, a aplikacje, które potrzebują dostępu do kontekstu czystego tekstu, mogą to uzyskać bezproblemowo.

Jednak, aby odpowiedzieć konkretnie na twoje pytanie, z pewnością możesz zaszyfrować pojedynczy plik za pomocą hasła i gpg:

gpg -c /tmp/file > /tmp/file.gpg

Aby zaszyfrować folder, powinieneś użyć tar w połączeniu z gpg:

tar zcvf - /tmp/directory | gpg -c > /tmp/directory.tar.gz.gpg

3
Dla wszystkich, którzy przeczytali to szybko i byli trochę zdezorientowani wynikiem .. 14.04 gpg -c /tmp/file > /tmp/file.gpgnie zwraca tego, czego się spodziewałem, zamiast tego pisze pusty plik. Moje użycie polega na gpg -c /tmp/filetym, że automatycznie dodaje rozszerzenie .gpg do pliku wynikowego.
Phil,

1

encfs, jak sugerują dokumenty społeczności , działa całkiem dobrze.

Instalowanie: Aby zainstalować, musisz najpierw dodać repozytorium wszechświata

Następnie wydaj polecenie:

sudo apt install encfs

Następnie wystarczy wpisać w terminalu: encfs encrypted visibletworzyć foldery w bieżącym katalogu o nazwie encrypteda visiblei ustawić hasło.

Na przykład, jeśli jestem w domyślnym katalogu (domowym) (użyj, pwdaby zobaczyć, gdzie jesteś), spowoduje to utworzenie folderów /home/ijoseph/visiblei /home/ijoseph/encrypteddla mnie, ponieważ moja nazwa użytkownika to ijoseph.

visiblemogą być zapisywane i odczytywane, a dane są zaszyfrowane w encryptedfolderze.

Aby „ukryć” swoje dane i pozostawić tylko zaszyfrowaną wersję folderu, wpisz fusermount -u visible. Będziesz chciał to zrobić przed wylogowaniem lub fizycznym przeniesieniem laptopa, zwykle w celu ochrony. Podczas visiblepisania zauważysz, że wszystko znika z folderu ls.

Aby ponownie zamontować (ponownie uzyskać dostęp do visiblefolderu w celu odczytu / zapisu), uruchom encfs encrypted visibleponownie.


Dziękuję za tę odpowiedź! Gdybym mógł być tak odważny, aby to zasugerować, odpowiedź ta zostałaby poprawiona poprzez dodanie kroków niezbędnych dla nowego użytkownika do zainstalowania i używania encfs
Elder Geek

2
Mam na myśli nowego użytkownika Ubuntu bez doświadczenia lub doświadczenia. Przepraszam za brak jasności! Wygląda na to, że masz dość dobrze opisane użycie, ale ktoś nowy w Ubuntu może nie wiedzieć, jak uzyskać dostęp do repozytorium Universe i zainstalować go encfs. Twoje zdrowie!
Elder Geek

2
ElderGeek próbuje powiedzieć, że być może mógłbyś sprawić, by twoja odpowiedź była bardziej przyjazna dla
Nooba

1
Tak lepiej. ;-)
Starszy Geek

1
W razie wątpliwości Package.ubuntu.com zapewnia wiele informacji. Jest na moim szybkim wybieraniu. ;-)
Starszy Geek
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.