gocryptfs

Dawno, dawno temu przestałem używać EncFS. Przestałem z kilku powodów. Po pierwsze, pojawiło się ostrzeżenie o tym, że nie jest to rozwiązanie do końca bezpieczne. Niby nic i w moich zastosowaniach nie przeszkadzało[1], ale jakaś tam zadra w pamięci i niechęć zostały. Po drugie, zwykłe dyski zacząłem szyfrować „normalnie” przy pomocy LUKS. A backupy itp. przy pomocy GPG. Dziś odkryłem godnego następcę: gocryptfs.

Mimo zmian w używanym szyfrowaniu, po EncFS została jedna dziura: dyski zdalne typu Dropbox czy Google drive. Miło by było móc z nich korzystać „normalnie”, ale tak, żeby dane na tych dyskach były zaszyfrowane. LUKS tu nie pomoże, bo działa dla dysków lokalnych. Szyfrowanie przez GPG dla pojedynczych plików jest niewygodne, a pakowanie w jakieś archiwa jest dobre do backupów, nie do normalnego korzystania. EncFS jako overlay dostępny poprzez FUSE ze swoim szyfrowaniem per katalog był idealny. Nie trzeba z góry określać rozmiaru szyfrowanych danych, dostęp online do pojedynczych plików, z zachowaniem ich struktury.

Okazuje się, że jest godny następca dla EncFS i nazywa się gocryptfs. Nie wiem czemu nie znalazłem go wcześniej. Może odrzuciłem, bo był świeży i w golang? Może przeważył brak realnej potrzeby?

W każdym razie: jest i wygląda bardzo dobrze. Przeczytałem opis projektu i zasadę działania. Posiada sensowne założenia, był audytowany, brak przypadłości EncFS. Do tego jest bardzo szybki. Instalacja w Debianie z pakietu – żadnych kompilacji. Do tego świetna dokumentacja, proste użycie i… dopracowanie. Oczywiście open source. Działa na Linuksie, macOS, istnieją nieoficjalne porty dla Windows i Androida.

Żeby przybliżyć o czym mowa. Weźmy takie utworzenie szyfrowanego katalogu. Jedno proste polecenie, podajemy hasło, powtarzamy je i… dostajemy master key, wraz z przeznaczeniem i jak się z nim obchodzić. Aż pokażę[2], bo na stronie tego nie ma:

$ gocryptfs -init cipher/
Choose a password for protecting your files.
Password:
Repeat:

Your master key is:

d28966ae-f39ff48a-695993f9-a5e354eb-
3d31e7a1-29c834c5-31b2cb3b-b38b6cec

If the gocryptfs.conf file becomes corrupted or you ever forget your password, there is only one hope for recovery: The master key. Print it to a piece of paper and store it in a drawer. This message is only printed once.
The gocryptfs filesystem has been created successfully.
You can now mount it using: gocryptfs cipher MOUNTPOINT

Prawda, że piękne? Bardzo możliwe, że przyda się i wkrótce wrócę do tematu zdalnych dysków.

[1] Moje zastosowania: nie będą mi dyski sieciowe w stylu Dropbox grzebać po plikach, nawet jeśli nic tajnego tam nie ma.
[2] Jakby ktoś zaczynał panikować, że „ojej, master key podał” to spieszę donieść, że to z testowego katalogu utworzonego na potrzeby tego wpisu, żadnych danych tam nie ma i nie będzie.

Dostęp tymczasowy

Zaczęło się niewinnie, bo od obrazkowego komentarza. Kumpel DJ pochwalił się w firmie, że okazyjnie kupił mixer, więc jako komentarz poleciała od razu stosowna scena z filmu Nienawiść (La Heine):

DJ scene La Heine

Fanem francuskiego hip-hopu/rapu nie jestem, ale… jest trochę kawałków, które doceniam. Albo wręcz lubię. Przypomniało mi się, że całkiem niedawno odkryłem pewien godny uwagi kawałek i chciałem się nim podzielić.

Tylko był „drobny” problem – nie pamiętałem ani tytułu, ani wykonawcy. Co gorsza, zupełnie nie kojarzyłem, kiedy go ostatnio słyszałem na liście na Spotify. Więc się nie podzieliłem.

Jednak nie dawało mi to spokoju. Stwierdziłem, że może dodałem go jeszcze w Tidalu, a migracja playlisty ciągle czeka, podobnie jak wpis na ten temat, więc może jest tam? Zalogowałem się na Tidal i… zaczęło się przeglądanie.

Mam tam ponad pięćset utworów w jednym worku. Niby jest chronologiczna kolejność dodawania do listy, ale jakoś nie kojarzyłem, kiedy dokładnie dodałem ten utwór. W trakcie przeglądania zwróciłem uwagę na coś innego. Niektóre utwory były oznaczone innym kolorem. I nie dawały się odtworzyć. Początkowo sądziłem, że to jakiś problem techniczny, konieczność załadowania z wolniejszego storage albo covery, które w jakiś sposób łamią prawa autorskie, bo dotyczyło to raczej niszowych utworów.

Jednak nie. To samo dotyczyło oryginalnych utworów pewnych, zupełnie nie niszowych, wykonawców. I – z tego co zaobserwowałem – raczej właśnie całej twórczości artysty, a nie poszczególnych kawałków. Czyli w Tidal mamy dokładnie tę samą sytuację, co np. w Netflix: płacimy jedynie za możliwość korzystania z platformy w danym okresie czasu. Nie kupujemy dostępu do konkretnej treści. Nie mamy żadnej gwarancji, że za parę miesięcy będziemy mogli posłuchać naszych ulubionych utworów. Ani że nasze playlisty będą takie, jakimi je stworzyliśmy[1].

W przypadku filmów powiedzmy, że istnieją jakieś przesłanki techniczne, żeby ograniczać ilość contentu. Jednak muzyka jest znacznie mniejsza. Licząc na bogato 5MB na utwór, tysiąc kawałków to raptem 5 GB. Wrzucam to na telefon – o komputerze nie wspominając – i nawet nie zauważam zużycia miejsca…

Oczywiście nie chodzi o przyczyny techniczne. I nie powinienem być zaskoczony. Artysta zerwał umowę z platformą, więc utwory nie są dostępne, proste. Ale jestem zaskoczony, bo o ile filmy nie są „legalnie” dostępne wszędzie, w tym na największym pirackim portalu, to muzyka jak najbardziej dostępna jest. Czyli mamy paradoksalną sytuację, że płacąc nie dostaniemy dostępu do rzeczy, które są dostępne za darmo.

Czy coś w związku z tym zamierzam zrobić? Z płatnych platform nie zrezygnuję, bo jestem na doczepkę, z rodziną, a pod wieloma względami są wygodne. Ale zapewne zacznę zbierać muzykę offline. Przynajmniej to, co trafia do ulubionych na platformach streamingowych. Niekoniecznie na żywo, ale okresowa synchronizacja, raz na kwartał – czemu nie?

Na pewno motywuje mnie to też do uruchomienia – w końcu – self hosted storage. Pewnie jakiś Nextcloud. Zresztą, w przypadku muzyki mówimy o ilościach danych, które mieszczą się na darmowych dyskach webowych – zwykle dostępne jest 10-20GB za darmo.

Utwór, którego szukałem, ostatecznie znalazłem. Po prostu przypomniałem sobie tytuł na tyle, że wpisanie w wyszukiwarkę pozwoliło go znaleźć. Okazało się, że przeoczyłem go na liście w Tidalu, choć był chronologicznie dokładnie tam, gdzie się go spodziewałem.

La Rage – Keny Arkana

Cloud is fraud!

[1] Tzn. playlisty będą istniały w oryginalnej, tylko nie będzie można ich odtworzyć w pierwotnej formie, bo nie będzie „wsadu”.

Microsoft kupi Canonical?

Dziś przy porannej kawie natknąłem się na ten artykuł i postanowiłem skrobnąć szybką notkę. Sprawa nie jest wcale taka nieprawdopodobna.

Po pierwsze, wiadomo, że Microsoft interesuje się coraz bardziej rozwiązaniami opartymi o Linuksa. Uważam to za zupełnie naturalne, bo Linux w wielu zastosowaniach radzi sobie równie dobrze, albo i lepiej, niż Windows. Poczynając od nietypowych architektur (typu ARM), przez zastosowania serwerowe, po chmurę i wirtualizację. Jeśli chodzi o desktopy i łatwość obsługi (IMO pozorną, ale…), to oczywiście wygrywa Windows, choć nie ukrywajmy, że Ubuntu miało ambicje tu powalczyć, i miało trochę podobną filozofię, co Windows. Ze wszystkimi jej wadami i zaletami, ale także dodatkowymi wadami Linuksa.

Po drugie, Ubuntu to nie tylko kolejna dystrybucja Linuksa. Jest o tym w artykule, ale ponieważ ostatnio „trochę” siedzę w OpenStacku, to widzę, co mają w tej dziedzinie. A mają sporo, poczynając od dystrybucji w wersji LTS, z gwarantowanym wsparciem przez ok. 5 lat, co jest wartością przyzwoitą i akceptowalną, co niekoniecznie można powiedzieć o debianowym wariancie. Mają też sporo narzędzi ułatwiających tworzenie i zarządzanie chmurą (na różnych poziomach, od hardware’u, po wirtualizację (OpenStack)). Większość instalacji OpenStacka w tej chwili jest właśnie oparta o Ubuntu. Dochodzi do tego specyficzne podejście – Ubuntu ma tendencję do własnych rozwiązań, które niby są opensource, ale w praktyce nie bardzo jest sens używania ich bez Ubuntu. Z perspektywy wieloletniego użytkownika Debiana, Ubuntu jawi mi się trochę jako państwo w państwie…

Dlatego uważam, że jeśli Microsoft poważnie myśli o Linuksie, to kupno Canonical nie tylko jest możliwe, ale wręcz jest jedną z niewielu sensownych opcji pojawienia się na tym rynku. Niechęć części użytkowników do MS i tak pozostanie, ale z drugiej strony i tak musieliby z nią walczyć, jeśli chcą mieć swoją dystrybucję, community i pozycję na linuksowym rynku… Kupno Canonical (lub podobnej firmy) zapewniłoby dostęp do wiedzy, technologii i bazy „oswojonych” użytkowników. Bez tego są skazani na wymyślanie koła od nowa i eksperymenty, a wygląda mi na to, że Microsoft w ogóle nie grokuje Linuksa, więc mieliby trudne zadanie…

Zatem, choć wiele przemawia za tym, że plotka niekoniecznie jest prawdziwa, to raczej po prostu nie tym razem, a nie rzecz zupełnie nie do pomyślenia.