Wielki Brat nie widzi – jak ukryć treść plików przed Microsoft, Google i innymi w ich chmurze

Dodano:

TL;DR: jak zaszyfrować pliki w chmurze pCloud darmowym rclone, żeby zwiększyć ich prywatność i bezpieczeństwo, a w Windows mieć do nich dostęp podobnie jak do zwykłego dysku.

Jeśli zależy ci na prywatności, pewnie zwracasz uwagę, jakie usługi wybierasz i jaką reputację ma ten, kto trzyma twoje dane.

Trzymam prawie wszystko w chmurze. Chroni mnie to przed tym, że jak coś się stanie ze sprzętem, to zawsze mam backup. Mam też dostęp do tych danych z dowolnego miejsca.

Problem jest wtedy, gdy chcesz trzymać w chmurze pliki, których nie chcesz, żeby Google czy Microsoft widział. Tym bardziej w czasach, gdy krążą wiadomości, że dla trenowania tzw. AI skanuje się nasze prywatne pliki (a osobiście nie polegam na deklaracjach dostawców).

O co chodzi i dla kogo to jest

Otóż powiem wam, że możecie korzystać z Google Drive, OneDrive, pCloud czy czego tam używacie (o ile wspiera to rclone) – i wrzucać tam pliki. Nawet jakby ktoś miał wasz login i hasło do tych usług, to nie zobaczy treści waszych plików1.

Zaszyfrowane pliki
Tak mogą wyglądać wasze zaszyfrowane pliki i foldery.

A dlaczego? Bo można je zaszyfrować. Stosunkowo łatwo i za darmo.

Pokażę, jak to można robić na Windows (rclone działa też na macOS i Linux). Próbowałem tego z OneDrive i pCloud i działało bez zarzutów. Na Google Drive da się to zrobić, ale konfiguracja jest bardziej skomplikowana. Proton Drive chciałbym polecić, ale na razie niestety działa niestabilnie z rclone.

Być może zniechęci cię interfejs tekstowy. Bez obaw :) Nie musisz się „znać na komputerach”, to nie jest żadne hackowanie. Będziemy tylko wybierać opcje i wklejać gotowe komendy. To po prostu okno z tekstem. Będziemy z tego korzystać tylko chwilę, to jest bardzo łatwe.

Zainstaluj rclone

Aby szyfrować i odszyfrowywać pliki, potrzebny będzie nam rclone. Pobieramy go ze strony: https://rclone.org/downloads/ (jeśli masz Windows, to najprawdopodobniej pobierzesz wersję Intel/AMD - 64 Bit.)

Pobrany plik rozpakowujemy i wrzucamy cały folder w wybrane miejsce na dysku (ja wrzuciłem na C:\rclone). Proponuję zmienić nazwę folderu na krótszą niż ta domyślna po wypakowaniu (np. po prostu „rclone”).

Zainstaluj WinFsp

Potrzebujemy jeszcze WinFsp, żeby móc montować dysk w Windows.

Pobierzesz go stąd, a potem instalujesz: https://winfsp.dev/rel/

Konfiguracja krok po kroku – połącz rclone z twoją chmurą

  1. Na dysku w chmurze robimy folder, w którym będą nasze zaszyfrowane dane. Możemy go nazwać jak chcemy. Ja dla przykładu nazwę go „Vault”.

Zrobimy dwie konfiguracje:

  • pierwsza łączy rclone z twoją chmurą,
  • druga tworzy „sejf”, czyli szyfrowaną wersję wskazanego folderu.
  1. Uruchamiamy Command Prompt (normalnie, nie jako administrator). W tym celu otwieramy Menu Start i wpisujemy cmd. Otwieramy.
  2. Kopiujemy i wklejamy: ścieżka\do\rclone.exe config (w moim przypadku: C:\rclone\rclone.exe config). Pojawia się kreator, czyli opcje do wybrania; jak na obrazku poniżej:
Kreator rclone

Patrz na nazwę opcji, nie na numer. Numer może być inny w nowszych wersjach rclone.

  1. Wpisujemy n, czyli opcję New remote, i klikamy Enter.
  2. Wybieramy nazwę. Może być dowolna. Ważne, żeby ją zapamiętać i potem konsekwentnie używać. Ja nazwałem to po prostu pcloud.
  3. Teraz trzeba wybrać, jaką chmurę mamy. Szukamy swojej i wpisujemy numer, po czym zatwierdzamy.
  4. Teraz rclone pyta o client_id i client_secret – możemy zostawić je puste. Klikamy Enter, żeby przejść dalej.

Uwaga: jeśli twój pCloud jest w regionie EU, trzeba zmienić jeszcze jedną opcję. Gdy rclone zapyta o zaawansowaną konfigurację, wybieramy y (Yes).
Potem będzie pytać o wiele rzeczy. Zostawiamy wszystko domyślne – nic nie wpisujemy i klikamy Enter, aż do pytania Option hostname. Tam wybieramy:
EU region / eapi.pcloud.com
Resztę znów zostawiamy domyślnie. Gdy wrócisz do pytania o konfigurację zaawansowaną, wybierz tym razem n (No), aby kontynuować.

  1. Zostaje autoryzacja w przeglądarce. Automatycznie otworzy się strona, gdzie trzeba się zalogować i pozwolić rclone na dostęp.

Na końcu potwierdzasz i masz już skonfigurowane swoje remote.

Możesz też dodatkowo sprawdzić czy wszystko działa wpisując: ścieżka\do\rclone.exe lsd nazwa-remote:

Ustaw szyfrowany folder

Zakładając, że nie zamknąłeś Command Prompt, wystarczy, że powtórzysz teraz kroki od 4 do 6.

W kroku 5 dajemy jednak inną nazwę (ja nazwałem to pcloud-encrypted). A w kroku 6 wybieramy nie naszą chmurę, tylko opcję Encrypt/Decrypt a remote / (crypt).

  1. Następnie rclone zapyta o ścieżkę do folderu. Wpisujemy nazwę remote i po dwukropku ścieżkę do folderu. W moim przypadku: pcloud:Vault (bo folder Vault jest w folderze głównym w chmurze).
  2. Wybieramy szyfrowanie nazw plików.
  3. I podobnie dla nazw folderów.
  4. Teraz rclone pyta o hasło, które będzie szyfrować nasze dane. Możemy wpisać własne albo wygenerować. Ja wybrałem generowanie. To będzie długie hasło, więc nie obawiaj się, że to coś, co musisz zapamiętać (raczej – zapisać).
  5. Potem zapyta, jak silne ma być hasło. Ja wybrałem zalecane 128 bitów, więc wpisuję 128 i zatwierdzam.
  6. Hasło zapisujemy w bezpiecznym miejscu – to bardzo ważne. Możesz je trzymać w menedżerze haseł (np. Bitwarden). Przyda się, gdy będziesz to konfigurować na innym komputerze. Bez tego hasła nie odzyskasz danych.
  7. Gdy masz już zapisane hasło, potwierdzasz, że chcesz go używać.
  8. Password2 możesz pominąć, jest opcjonalne.
  9. Nie musisz wchodzić w zaawansowaną konfigurację. Na końcu zatwierdzasz, że konfiguracja jest OK.

Już prawie gotowe :)

Jak to teraz uruchomić? Zamontuj folder jako dysk w Windows

Żeby to wszystko działało (wysyłanie plików, szyfrowanie i odczyt), najlepiej zrobić plik, który będzie to odpalał. Niech to będzie plik z rozszerzeniem .bat (np. mount_rclone.bat)2.

Otwieramy go w edytorze tekstowym i wklejamy kod:

@echo off
timeout /t 10 /nobreak >nul

set RCLONE=C:\rclone\rclone.exe
set CONF=%APPDATA%\rclone\rclone.conf
set CACHE=C:\rclone\cache\pcloud
set LOG=C:\rclone\logs\pcloud-mount.log

mkdir "C:\rclone\logs" 2>nul
mkdir "%CACHE%" 2>nul

"%RCLONE%" mount pcloud-encrypted: X: ^
  --config "%CONF%" ^
  --cache-dir "%CACHE%" ^
  --vfs-cache-mode writes ^
  --vfs-cache-max-size 2G ^
  --vfs-read-ahead 64M ^
  --no-modtime ^
  --log-level INFO ^
  --log-file "%LOG%"

Musisz podmienić tylko:

  • ścieżki do rclone (set RCLONE, set CACHE, set LOG) – tam, gdzie na początku wypakowałeś rclone,
  • oraz nazwę, którą podałeś w konfiguracji dla swojego crypt. Czyli podmieniasz: pcloud-encrypted: X:, gdzie X: to litera dysku, który będzie się montował (tak będziesz widział dysk w eksploratorze).

Zapisujemy plik.

Reszta to parametry, w które na razie nie będziemy się wgłębiać; powinny być dla ciebie na start OK.

Uruchomienie ręczne

Klikamy nasz plik .bat i po chwili w Eksploratorze plików powinieneś zobaczyć, że pojawił się nowy dysk X: (albo inna litera, którą wpisałeś). To tak naprawdę odszyfrowany widok naszego zaszyfrowanego folderu.

Cokolwiek tam wkleisz, zostanie zaszyfrowane i wysłane do chmury. Sprawdź: wklej plik i spróbuj wejść na swój dysk w chmurze w standardowy sposób – zobaczysz pliki i foldery z dziwnymi nazwami.

Podczas tego musisz mieć cały czas odpalone okno, które wyskoczyło po uruchomieniu pliku .bat. Jeśli je zamkniesz, dysk X: zniknie.

(Opcjonalnie) Automatyczny start po zalogowaniu

Być może chcesz, żeby to działało cały czas, a nie tylko wtedy, gdy ręcznie uruchomisz plik .bat. Da się to zrobić przez Harmonogram zadań.

Otwieramy Harmonogram zadań (najłatwiej: Menu Start → wpisz „Harmonogram zadań”). Potem tworzymy nowe zadanie, wybierając Utwórz zadanie… po prawej stronie:

Panel w harmonogramie zadań
  1. Na pierwszej zakładce wpisujemy dowolną nazwę zadania.
  2. Upewniamy się, że zadanie uruchamia się tylko, gdy użytkownik jest zalogowany.
  3. Zaznaczamy checkbox, żeby zadanie było ukryte.
Nowe zadanie w harmonogramie
  1. Przechodzimy na drugą zakładkę i ustawiamy wyzwalacz – klikamy przycisk, żeby utworzyć nowy.
  2. Ustawiamy, żeby wyzwalacz uruchamiał zadanie po logowaniu.
  3. Ustawiamy opóźnienie, np. 10 sekund, żeby nie startowało od razu.
Zakładka wyzwalacza w harmonogramie zadań
  1. Zatwierdzamy i przechodzimy do trzeciej zakładki z akcjami. Jako program wpisujemy: powershell.exe

  2. W polu argumentów wklejamy w jednej linii (pamiętaj, żeby podmienić ścieżki i nazwy na swoje): -NoProfile -WindowStyle Hidden -Command "$conf=Join-Path $env:APPDATA 'rclone\rclone.conf'; New-Item -ItemType Directory -Force -Path 'C:\rclone\logs','C:\rclone\cache\pcloud' | Out-Null; $args=@('mount','pcloud-encrypted:','X:','--vfs-cache-mode','writes','--vfs-cache-max-size','2G','--vfs-read-ahead','64M','--no-modtime','--config',$conf,'--cache-dir','C:\rclone\cache\pcloud','--log-level','INFO','--log-file','C:\rclone\logs\pcloud-mount.log'); Start-Process -WindowStyle Hidden -FilePath 'C:\rclone\rclone.exe' -ArgumentList $args"

  3. Pole „Start w” ustawiamy na główny folder rclone (u mnie: C:\rclone).

Bez tych argumentów wyskakiwałoby okno konsoli i musiałoby „wisieć” cały czas w tle, żeby to działało.

Zakładka akcji w harmonogramie zadań
  1. Zatwierdzamy i przechodzimy do zakładki z warunkami. Zaznaczamy checkbox, żeby zadanie startowało tylko, gdy mamy połączenie z daną siecią Wi-Fi (wybierasz z listy konkretną, albo zostawiasz dowolną). To na wszelki wypadek, żeby nie startowało bez internetu.
Zakładka warunków w harmonogramie zadań

Uff. To tylko tyle i aż tyle. Gratulacje, dobrnąłeś do końca! Teraz możesz kliknąć OK i zapisać całość. Przy następnym uruchomieniu komputera zaszyfrowany folder zamontuje ci się w tle jako dysk.

Minusy i ograniczenia

To rozwiązanie, jak każde, ma też minusy:

  • Na smartfonie nie jesteśmy tak elastyczni. Są sposoby, żeby rclone działał też na smartfonie, ale tutaj nie będę w to wchodził.
  • Niektóre aplikacje chmury nie pokażą, że coś się wysyła albo zostało usunięte. Np. OneDrive to pokazuje, ale pCloud już nie.
  • Większe zużycie dysku (cache potrafi zjeść cenne miejsce, jeśli masz go niewiele).
  • Działa najlepiej przy stabilnym internecie.
  • Mogą się zdarzyć konflikty plików, jeśli edytujesz tę samą rzecz jednocześnie na kilku urządzeniach.
  • Są większe opóźnienia niż przy normalnym czytaniu plików z chmury.

PS Chroń też plik %APPDATA%\rclone\rclone.conf, bo ma tokeny dostępu i klucze. To nie jest sejf.

Podsumowanie

Da się trzymać pliki w zwykłej chmurze (OneDrive, pCloud itp.), a jednocześnie nie dać nikomu podejrzeć ich treści – nawet dostawcy chmury. Robimy to tak, że rclone szyfruje pliki po twojej stronie, a w chmurze lądują „krzaki” – dziwne nazwy i nieczytelna zawartość. W Windows widzisz to jako normalny dysk (np. X:), więc używasz tego jak zwykłego folderu.

Najważniejsze to zapisz hasło do szyfrowania i go nie zgub. Bez niego nie odzyskasz danych. Poza tym wrzucasz pliki jak zawsze, tylko prywatność masz po swojej stronie :)

Przypisy

  1. Treść i nazwy są zaszyfrowane, ale np. rozmiary i czasy plików mogą pozostać widoczne.
  2. Jeśli nie widzisz .bat w nazwie pliku, to włącz pokazywanie rozszerzeń w Eksploratorze.