Slide 1

Slide 1 text

Anbox補足と Anbox補足と Cryptomatorでクラ Cryptomatorでクラ ウドファイルを暗 ウドファイルを暗 号化 号化 Kenichiro Matohara(matoken) 1 / 39

Slide 2

Slide 2 text

南隅から参加(鹿児島の右下) 好きなLinuxディストリビューションはDebian お仕事募集 mailto:work@matohara.org Kenichiro Matohara(matoken) Kenichiro Matohara(matoken) https://matoken.org https://matoken.org 2 / 39

Slide 3

Slide 3 text

最近 最近 古いスマホが壊れたぽい(2013年製のAndroid 5端末) 楽天モバイル無料期間が今月まで → 今月下旬リリースの povo2.0 を契約?(1日使い放題トッピングが220円→330円になるけど基本料0 円に) 3 / 39

Slide 4

Slide 4 text

Anbox(Android in a Box) Anbox(Android in a Box) AndroidをLinuxで動かすもの にて発表 Kernel moduleが必要,しかしLinux 5.7 以降使えなくなった 最近のKernelであれば取り込まれているで無効なら有効にすれば OK 鹿児島Linux勉強会 2020.04 Linux上でAnBoxを利用してAndroidアプリを実行 $ grep ANDROID /boot/config-$(uname -r) CONFIG_ANDROID=y CONFIG_ANDROID_BINDER_IPC=y CONFIG_ANDROID_BINDERFS=y CONFIG_ANDROID_BINDER_DEVICES="binder" CONFIG_ANDROID_BINDER_IPC_SELFTEST=y 4 / 39

Slide 5

Slide 5 text

$ sudo git -C /etc diff HEAD~ /etc/default/grub diff --git a/default/grub b/default/grub index 926dd2b..a67db35 100644 --- a/default/grub +++ b/default/grub @@ -6,7 +6,7 @@ GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` -GRUB_CMDLINE_LINUX_DEFAULT="" +GRUB_CMDLINE_LINUX_DEFAULT="binder.devices=binder,hwbinder,vndbinder,anbox-binder,anbox-hwbind #GRUB_CMDLINE_LINUX_DEFAULT="intel_palate-no_hwp i915.preliminary_hw_support=1" GRUB_CMDLINE_LINUX="" $ sudo update-grub $ sudo shutdown -r now 5 / 39

Slide 6

Slide 6 text

Waydroid というものも見つけた Waydroid というものも見つけた Linux(Wayland)上でAndroid まだうまく動かせていない…… https://waydro.id/ 6 / 39

Slide 7

Slide 7 text

クラウドのファイルを暗号化し クラウドのファイルを暗号化し よう よう ミリタミー趣味とかはあまりないけどもセキュリティ関連の文章 とかを置いてても同じようにテロ活動としてBANされかねないよ うな…… E2EEなサービス? 自分で建てる(ちょっと面倒) 暗号化してクラウドに保存しておけば大丈夫なはず Google has locked my account for sharing a historical archive they labeled as "terrorist Activity" - Google Drive Community 7 / 39

Slide 8

Slide 8 text

過去の試み 過去の試み Slax で暗号化fs を持ち運ぶ - Speaker Deck 偏執的な人の為の? NotePCセキュリティ HDD編 -小江戸らぐ1月の オフな集まり(第102回)- Lessfs をかじってみた(小江戸らぐオフな集まり第110回) ext4のファイルベース暗号化FSを試してみる - Speaker Deck VeraCryptをzuluCryptで - Speaker Deck 暗号化ファイルシステム EncFS の Reverse mode を試す 暗号化FS EncFS Windows 移植版の EncFS4Winy を試す EncFSに似た暗号化ファイルシステムのCryFSを試す 8 / 39

Slide 9

Slide 9 text

暗号化ファイルシステム 暗号化ファイルシステム 暗号化ファイルをクラウド上に置き,同期したコンピュータ上で透 過的に復号化して利用. VeraCrypt/LUKS(dm-crypt) ファイル群が1ボリュームに格納され,1 ファイルの更新でも全領域の同期がされるのでクラウド向けでは ない encfs/CryFS/lessfs/eCryptfs/Cryptomator…… 1ファイルが1暗号化ファ イル(くらい)に対応しているので更新ファイルだけの同期で済むの でクラウドで同期しやすい 今回新たに Cryptomator を試した (( 🔐🗃️ )) <- 🔐 -> 🖥️🔑📁 <- 🔐 -> 💻️🔑📁 <- 🔐 -> 📱🔑📁 9 / 39

Slide 10

Slide 10 text

Cryptomator Cryptomator クラウドサービス向けの暗号化ファイルシステムのよう OSS,第三者機関での監査,マルチプラットホーム(iOS/Androidを含 む) GUI/CLI標準で利用可能 Cryptomator - Free Cloud Encryption for Dropbox & Co 10 / 39

Slide 11

Slide 11 text

入手と実行 入手と実行 $ wget https://github.com/cryptomator/cryptomator/releases/download/1.5.15/cryptomator-1.5.15-x https://github.com/cryptomator/cryptomator/releases/download/1.5.15/cryptomator-1.5.15-x86_64.A $ cat << __EOF__ > ./key -----BEGIN PGP PUBLIC KEY BLOCK----- : -----END PGP PUBLIC KEY BLOCK----- __EOF__ $ gpg --verify ./cryptomator-1.5.15-x86_64.AppImage.asc gpg: assuming signed data in './cryptomator-1.5.15-x86_64.AppImage' gpg: Signature made Wed Apr 21 19:48:10 2021 JST gpg: using RSA key 58117AFA1F85B3EEC154677D615D449FE6E6A235 gpg: Good signature from "Cryptobot " [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 5811 7AFA 1F85 B3EE C154 677D 615D 449F E6E6 A235 $ chmod u+x ./cryptomator-1.5.15-x86_64.AppImage $ ./cryptomator-1.5.15-x86_64.AppImage 11 / 39

Slide 12

Slide 12 text

GUIで金庫を作る GUIで金庫を作る 12 / 39

Slide 13

Slide 13 text

13 / 39

Slide 14

Slide 14 text

14 / 39

Slide 15

Slide 15 text

15 / 39

Slide 16

Slide 16 text

16 / 39

Slide 17

Slide 17 text

17 / 39

Slide 18

Slide 18 text

18 / 39

Slide 19

Slide 19 text

19 / 39

Slide 20

Slide 20 text

20 / 39

Slide 21

Slide 21 text

マウントオプション マウントオプション 21 / 39

Slide 22

Slide 22 text

22 / 39

Slide 23

Slide 23 text

23 / 39

Slide 24

Slide 24 text

24 / 39

Slide 25

Slide 25 text

設定 設定 25 / 39

Slide 26

Slide 26 text

FUSE or WebDAV 26 / 39

Slide 27

Slide 27 text

27 / 39

Slide 28

Slide 28 text

28 / 39

Slide 29

Slide 29 text

29 / 39

Slide 30

Slide 30 text

ファイルの場所 ファイルの場所 暗号化ファイル ~/Yandex.disk/大切な金庫 複合ファイル ~/.local/share/Cryptomator/mnt/大切な金庫 30 / 39

Slide 31

Slide 31 text

ファイルを作成して暗号化状態 ファイルを作成して暗号化状態 を確認 を確認 1 初期状態のファイル,ディレクトリ 2 ファイルを作ってみる $ tree ~/Yandex.Disk/大切な金庫/ /home/matoken/Yandex.Disk/大切な金庫/ ├── IMPORTANT.rtf ├── d │ └── Q2 │ └── OKK5TINV6Q3GFWETLKX6RSIUF3XETG │ └── 5qb56BO3tx4bSZKY-r-XTvTqp7dVbTBdO0j5.c9r ├── masterkey.cryptomator └── masterkey.cryptomator.F0FD16CE.bkup 3 directories, 4 files $ echo 'HELLO' > /home/matoken/.local/share/Cryptomator/mnt/大切な金庫/hello.txt 1 2 31 / 39

Slide 32

Slide 32 text

1 再度ファイル,ディレクトリを確認 2 ファイルが増えた 3 ファイル名も内容も暗号化されている $ tree ~/Yandex.Disk/大切な金庫/ /home/matoken/Yandex.Disk/大切な金庫/ ├── IMPORTANT.rtf ├── d │ └── Q2 │ └── OKK5TINV6Q3GFWETLKX6RSIUF3XETG │ ├── 5qb56BO3tx4bSZKY-r-XTvTqp7dVbTBdO0j5.c9r │ └── l8hk2h_zzd0fr4fhnxSxB22dQ004nHuXaw==.c9r ├── masterkey.cryptomator └── masterkey.cryptomator.F0FD16CE.bkup 3 directories, 5 files $ od -c ~/Yandex.Disk/大切な金庫/d/Q2/OKK5TINV6Q3GFWETLKX6RSIUF3XETG/l8hk2h_zzd0fr4fhnxSxB22dQ00 0000000 314 221 \ 206 335 370 L 337 263 213 322 r 243 365 E 352 0000020 \a 246 272 022 V \n 276 R 244 326 360 o U 246 346 \a 0000040 207 261 : 265 023 033 3 0 331 330 5 215 217 353 201 315 0000060 300 A 340 037 Y h K 1 300 241 ' 9 e L 7 ! 0000100 8 X n 267 E V O 274 ] 025 271 7 b 255 3 ] 0000120 ? 207 370 V 304 244 333 ' L 335 001 < N 263 356 y 0000140 t h K [ 356 361 370 264 346 7 326 247 214 213 257 344 0000160 224 004 D 237 335 311 216 320 1 317 d Y x 357 8 : 0000200 U ( 0 { 315 202 354 031 y ? 204 O 321 342 0000216 1 2 32 / 39

Slide 33

Slide 33 text

CUI CUI $ java -jar ./cryptomator-cli-0.4.0.jar 14:01:37.499 [main] ERROR org.cryptomator.cli.CryptomatorCli - No vault specified. usage: java -jar cryptomator-cli.jar --bind localhost --port 8080 --vault mySecretVault=/path/to/vault --password mySecretVault=FooBar3000 --vault myOtherVault=/path/to/other/vault --password myOtherVault=BarFoo4000 --vault myThirdVault=/path/to/third/vault --passwordfile myThirdVault=/path/to/passwordfile --bind TCP socket bind address of the WebDAV server. Use 0.0.0.0 to accept all incoming connections. --password Format must be vaultName=password --passwordfile Format must be vaultName=passwordfile --port TCP port, the WebDAV server should listen on. --vault Format must be vaultName=/path/to/vault 33 / 39

Slide 34

Slide 34 text

ファイル名長 ファイル名長 通常は255 $ getconf NAME_MAX . 254 $ num=1;str="a";while :; do if ! touch $str; then echo $num; break; fi; $((num++)); str="${str touch: cannot touch 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1025 34 / 39

Slide 35

Slide 35 text

mobile APPちょっと高め? mobile APPちょっと高め? F-Droid版は無料かと思ったけどライセンス鍵を求められた 35 / 39

Slide 36

Slide 36 text

類似ツール 類似ツール rfjakob/gocryptfs: Encrypted overlay filesystem written in Go 36 / 39

Slide 37

Slide 37 text

まとめ まとめ EncFSと同じように使いやすいうえにマルチプラットホーム(EncFS にもEncFS4Winyなどが) 公式のGUIがあって日本語ローカライズもされていておすすめしや すい クラウドドライブ向け いろいろなネットワークドライブを暗号化しよう :) 37 / 39

Slide 38

Slide 38 text

余録: オンラインストレージ招待 余録: オンラインストレージ招待 リンク リンク Dropbox 2GB + 500MB One Drive 5GB +500MB Yandex Disk 10GB + 500MB pCloud 10GB + 1GB pCloud Premium account ($5 value) for free for 1 month. Degoo 100GB + 5GB 38 / 39

Slide 39

Slide 39 text

奥付 奥付 発表 発表者 利用ソフトウェア ライセンス CC BY-NC-SA 4.0 鹿児島Linux勉強会 2021.09(オンライン開催) Kenichiro Matohara(matoken) Asciidoctor Reveal.js 39 / 39