Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Anbox補足とCryptomatorでクラウドファイルを暗号化

 Anbox補足とCryptomatorでクラウドファイルを暗号化

鹿児島Linux勉強会 2021.09(オンライン開催)
https://kagolug.connpass.com/event/223477/

Kenichiro MATOHARA

September 25, 2021
Tweet

More Decks by Kenichiro MATOHARA

Other Decks in Technology

Transcript

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

    View Slide

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

    View Slide

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

    View Slide

  4. 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

    View Slide

  5. $ 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

    View Slide

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

    View Slide

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

    View Slide

  8. 過去の試み
    過去の試み
    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

    View Slide

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


    🔐
    ->
    💻️🔑📁


    🔐
    ->
    📱🔑📁
    9 / 39

    View Slide

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

    View Slide

  11. 入手と実行
    入手と実行
    $ 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

    View Slide

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

    View Slide

  13. 13 / 39

    View Slide

  14. 14 / 39

    View Slide

  15. 15 / 39

    View Slide

  16. 16 / 39

    View Slide

  17. 17 / 39

    View Slide

  18. 18 / 39

    View Slide

  19. 19 / 39

    View Slide

  20. 20 / 39

    View Slide

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

    View Slide

  22. 22 / 39

    View Slide

  23. 23 / 39

    View Slide

  24. 24 / 39

    View Slide

  25. 設定
    設定
    25 / 39

    View Slide

  26. FUSE or WebDAV
    26 / 39

    View Slide

  27. 27 / 39

    View Slide

  28. 28 / 39

    View Slide

  29. 29 / 39

    View Slide

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

    View Slide

  31. ファイルを作成して暗号化状態
    ファイルを作成して暗号化状態
    を確認
    を確認
    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

    View Slide

  32. 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

    View Slide

  33. 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

    View Slide

  34. ファイル名長
    ファイル名長
    通常は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

    View Slide

  35. mobile APPちょっと高め?
    mobile APPちょっと高め?


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

    View Slide

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

    View Slide

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

    View Slide

  38. 余録: オンラインストレージ招待
    余録: オンラインストレージ招待
    リンク
    リンク
    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

    View Slide

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

    View Slide