$30 off During Our Annual Pro Sale. View Details »

🧅

 🧅

「鹿児島Linux勉強会 2022.03(オンライン開催)」で発表
https://kagolug.connpass.com/event/240326/

source
https://gitlab.com/matoken/kagolug-2022.03/-/blob/master/slide/slide.adoc

Kenichiro MATOHARA

March 21, 2022
Tweet

More Decks by Kenichiro MATOHARA

Other Decks in Technology

Transcript

  1. 🧅 🧅 Kenichiro Matohara(matoken) <maroken@kagolug.org> 1 / 51

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

    2 / 51
  3. 最近 最近 楽しいけどマウス利用面倒 tmuxを久々に確認すると以前足りないなと思っていた機能が大 体揃っているのに気づいて設定中 先月教えてもらった磁石でくっつくUSBケーブルをAliexpressでぽ ちる ケーブルだけ,先端だけのバラ売りもあり価格も安い 16日に日本に……まだ来ない 一昨日の

    での発表 便利なのでおすすめ 先月のvtm 小江戸らぐ 3月のオフな集まり(第236回) 画像つきHTMLファイルを1ファイルで共有 3 / 51
  4. Torで色々 🧅 Torで色々 🧅 最近の状況から利用できると嬉しい人が増えていそうとリレーノードを2つ 80Mbps/日本 80MBps/日本 0.3Mbps) Nitterをonion siteでもhost

    ダークウェブと呼ばれたり怖そうなイメージ でも便利にも使えます http://nitter2l2szql27s7siskdgvtr4sgeq43x7jodtqmltxu 4 / 51
  5. Tor? Tor? 接続経路を匿名化する.通信内容はTor内では暗号化されるが,出入 り口では暗号化されないので別途TLS等が必要 Tor経路内では1ホップごとにカプセル化されてその様がタマネギの 皮のようなのでオニオンルーティングと呼ばれるように  匿名ネットワークはTor以外にもI2P,ZeroNet,Freenetなど がある Tor

    Project | Anonymity Online 5 / 51
  6. 遅いのでは? 遅いのでは? 100Mbps環境 100Mbps環境 Tor利用 6 / 51

  7. ADSL環境 ADSL環境 Tor利用 7 / 51

  8. speedtest-cliだとありえない数値が出る? $ torsocks speedtest-cli Retrieving speedtest.net configuration... Testing from Cia

    Triad Security LLC (185.220.101.40)... Retrieving speedtest.net server list... Selecting best server based on ping... Hosted by Gemeindewerke Nümbrecht GmbH (Nümbrecht) [13147.27 km]: 943.083 ms Testing download speed........................................................................ Download: 1.42 Mbit/s Testing upload speed.......................................................................... Upload: 2.68 Mbit/s 8 / 51
  9. 以前はとても遅かったが今はウェブブラウジング程度なら問題ない感 じ 反応の悪さは気になる 9 / 51

  10. ウェブブラウジングをしてみる ウェブブラウジングをしてみる Firefox ESRベースでTorの設定や匿名性を高める拡張機能な どがセットになっている 設定不要でセキュリティも高いのでおすすめ Debianだと torbrowser-launcher というパッケージ Chromimベース.広告ブロック,IPFSなども

    Shift + Alt + n でTorを使ったプライベートブラウジングが可 能に お手軽だが匿名性は少し下がると思う Torブラウザ Braveブラウザ 10 / 51
  11. Torを導入してProxyとして利用 amd64以外でも動く Debianだと tor というパッケージ さんの OnionRouter Torネットワークにルーティングするルータ SBCなどに導入しておくと便利 Tor

    @ebijun Raspberry Pi向けNetBSDにも入った 11 / 51
  12. Android用アプリ 指定した特定のアプリケーションをTor経由で通信できるように できる  既定値では出口ノードになるよう設定されているので注意 (「︙ 」 →「設定」→「リレー中 この端末を非出口リレーにする」にチェッ ク)

    Orbot 12 / 51
  13. どこに繋ぐ? どこに繋ぐ? せっかくならTorを使わないとアクセスできない.onionドメインに 最近Twitterも対応 The Tor Project (@torproject): "We’re very

    happy to see now offering an .onion address. 🐦🧅 https://twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5k For many years Tor users have been looking for such a f Twitter! Now is a vital time to help people stay connect services help to do this." | nitter Onionドメインの一覧 - Wikipedia 13 / 51
  14. emailも emailも SeaMonkey/Thunderbirdの拡張機能 プライバシーを設定を強化し,Torを介して電子メールが利用できるよ Torは別途必要 している TorBirdy ProtonMailもTorに対応 https://mail.protonmailrmez3lotccipshtkleegetolb73f 14

    / 51
  15. / torify / torify 指定したアプリケーションをTor経由で利用できるようにする torsocks torsocks $ w3m -dump

    https://check.torproject.org/ | head This page is also available in the following languages: [English ] [Go] [tor-off] Sorry. You are not using Tor. Your IP address appears to be: 180.131.110.140 If you are attempting to use a Tor client, please refer to the Tor website and specifically the frequently asked questions. $ torsocks w3m -dump https://check.torproject.org/ | head This page is also available in the following languages: [English ] [Go] [tor-not] Congratulations. This browser is configured to use Tor. Your IP address appears to be: 185.82.127.25 However, it does not appear to be Tor Browser. Click here to go to the download page 15 / 51
  16. sshやwgetなんかも $ torsocks ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion $ torsocks wget http://dl.amnesia.boum.org/tails/stable/tails-amd64-4.28/tails-amd64-4.28.img https://mirrors.edge.kernel.org/tails/stable/tails-amd64-4.28/tails-amd64-4.28.img.sig

    16 / 51
  17. Tor ssh tips Tor ssh tips torsocks, torify経由で接続可能(sshサーバの設定は後述) ssh_config に設定しておくことでいつものようにsshだけでも使え

    る kex_exchange_identification: read: Connection reset by peer ssh_confg設定済でtorsocksを使うとエラーに $ torsocks ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion $ torify ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion Host *.onion ProxyCommand /bin/nc -xlocalhost:9050 -X5 %h %p 17 / 51
  18. .onion接続時に too long for Unix domain socket と怒ら れる >

    unix_listener: path "/home/matoken/.ssh/tmp/ssh- user@hostname:22.r3NYV60KUEAXUuRZ" too long for Unix domain socket hostnameが長くて, ControlPath で設定したファイルの作成 時にファイルシステムの制限で失敗 ControlPath を ~/.ssh/tmp/ssh-%r@%h:%p → ~/.ssh/tmp/%C にして回避 %C は %l%h%p%r のハッシュ( a1e724af86ad309c968737a2fb73a3f1c0298e05 )人間には 難しい 18 / 51
  19. DNS漏洩の問題 DNS漏洩の問題 DNSはUDP/TCPに対応しているがUDPが規定値なのでTCP専用 のTorを介さずに直接名前解決してしまい記録が残ってしまう TorにはDNSリゾルバが搭載されているのでiptable等を利用して 名前解決をTorのDNSリゾルバに向けることで解決できるけど切り 替え大変 後述のセキュリティOSを利用するのがお手軽  DNSキャッシュを構築することでDNS

    over HTTPS over Tor等も可能 19 / 51
  20. onion siteをホストする onion siteをホストする Torネットワーク内にウェブサイトを立ち上げる サーバの所在を調べにくい Tor exitノードを通らない 20 /

    51
  21. 設定 設定 Torの設定ファイルのtorrcを編集 HiddenServiceDir / HiddenServicePort を有効にしてTor再起 動 ${HiddenServiceDir}/hostname のonionアドレスで接続でき

    るようになる ウェブサーバでonionアドレスをVirtualHost設定  ${HiddenServiceDir} 以下のファイルは要バックアップ HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 80 127.0.0.1:80 21 / 51
  22. $ sudo ls /var/lib/tor/hidden_service hostname hs_ed25519_public_key hs_ed25519_secret_key $ sudo cat

    /var/lib/tor/hidden_service/hostname nitter2l2szql27s7siskdgvtr4sgeq43x7jodtqmltxur3kioycnjid.onion $ torsocks w3m -dump nitter2l2szql27s7siskdgvtr4sgeq43x7jodtqmltxur3kioycnjid.onion/matoken1 | @matoken だったけどBANされた人 YoutubeもBANされたよ 🔆🚲📷💻 秋葉原方面に住みたい過疎地住 matoken.org/ Joined June 2018 • Tweets 8,858 • Following 70 • Followers 89 22 / 51
  23. https? https? onionアドレス対応サービスが少ない Let’s Encryptのフォーラムでもたまに話題に上がるが難しそう? https://community.letsencrypt.org/search?q=onion 23 / 51

  24. Vanity Address Vanity Address onionアドレスは[a-z|3-7]の32文字(BASE32)からなる16文字の o スと,56文字の onion v3 アドレスがあって,v2アドレスは2021年11月

    後者のv3アドレスが使われる 通常はTor初回起動時に鍵とアドレスが作られるが分かりづらい 例: ixp4g35iisccjb326xjynni3jjl4dgbd26s2x3mjns432i3pz Vanity Addressの例 facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7 (旧 facebookcorewwwi.onion) twitter3e4tixl4xyajtrzo62zg5vztmjuricljdp2c5kshju4av 24 / 51
  25. ツールを使って好みの単語から始まるアドレスを探すことが可能 Raspberry Pi 3 model Bでも7文字合致なら結構すぐに掘れる Raspberry Pi 3 model

    B(aarch64 kernel)  GitHub - cathugger/mkp224o: vanity address generator for tor onion v3 (ed25519) hidden services >calc/sec:103867.893552, succ/sec:0.003333, rest/sec:0.003333, elapsed:300.130969sec >calc/sec:100761.039921, succ/sec:0.003333, rest/sec:0.003333, elapsed:600.155046sec >calc/sec:94511.877034, succ/sec:0.009999, rest/sec:0.009999, elapsed:900.194934sec >calc/sec:91854.274354, succ/sec:0.003334, rest/sec:0.003334, elapsed:1200.130938sec torのhidden serviceで使うアドレスを計算する(Vanity Addresses) – matoken’s meme 25 / 51
  26. sshも繋がるようにしてみる sshも繋がるようにしてみる torrcにsshの設定を追加 & Tor再起動 sshdにはlocalhostからの接続に見える(ので接続できるようにし ておく)  同様に他のサービスも設定可能 HiddenServicePort

    22 127.0.0.1:22 26 / 51
  27. HiddenServiceのメリット? HiddenServiceのメリット? 実は透過性が高い 自宅内LanのTor HiddenServiceのonionアドレスに外部から Tor経由で接続可能 外部からTor経由でssh loginしたりVPN代わりにも? 遅いけど非常時には助かることも $

    sshuttle -r matoken@pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion 0/0 27 / 51
  28. Torに貢献したい Torに貢献したい 寄付 Tor Project | Donate 28 / 51

  29. Torリレーになる Torリレーになる エントリーノードや転送リレーになる(一般公開される) 他のTorリレーやexitノードに転送はするがインターネットへの出口に はならない 29 / 51

  30. Torブリッジになる Torブリッジになる Torのパブリックディレクトリに記載されないリレーノード 政府等によりパブリックリレーがブロックされても接続できるように 30 / 51

  31. Tor exitノードになる Tor exitノードになる Torネットワークからインターネットへの出口となる インターネットの出口になるのでサーバに管理アドレスが記録されるこ ととなり,逮捕等される可能性もあるので試したことはない…… 31 / 51

  32. リレーノードの設定例 リレーノードの設定例 torrcで設定を行う 複数建てる場合は Nickname や MyFamily も設定しておくと良さそ う /etc/tor/torrc

    1 ポート設定,firewallの開放も行う. 2 転送帯域.最低でも20Kbpsを設定 3 バースト帯域 4 exitノードにならないように拒否 ORPort 9001 RelayBandwidthRate 1000 KB RelayBandwidthBurst 2000 KB ExitPolicy reject *:* 1 2 3 4 32 / 51
  33. TorモニタのNyx TorモニタのNyx 昔はTor-Armというものがあったが現在はNyxという名前に Debianだと nyx というパッケージ $ sudo apt install

    nyx $ sudo -u debian-tor nyx 33 / 51
  34. 34 / 51

  35. リレーノードのTorバージョン リレーノードのTorバージョン リレーに使っているTorのバージョンが0.3.5だと拒否されるように なるはやでアップデートを The Tor Project (@torproject): "Dear relay

    operators, Any relays running Tor version 0.3.5 will be rejected from the Tor network next week. Please upgrade your relay ASAP. If you need any help, please feel free to ask on the Tor Forum: https://forum.torproject.net/ Thank you for your help powering Tor." | nitter 35 / 51
  36. Debian Buster(1つ前のバージョン)だとちょうど0.3.5 buster-backportsに0.4.5があるのでそれで繋いで折を見て Bullseyeにdist-upgradeするのが良さそう $ rmadison -a amd64 tor tor

    | 0.2.5.16-1 | oldoldoldstable | amd64 tor | 0.2.9.16-1 | oldoldstable | amd64 tor | 0.3.5.10-1~bpo9+1 | stretch-backports | amd64 tor | 0.3.5.16-1 | oldstable | amd64 tor | 0.4.4.5-1~bpo9+1 | stretch-backports-sloppy | amd64 tor | 0.4.5.10-1~bpo10+1 | buster-backports | amd64 tor | 0.4.5.10-1~deb11u1 | stable | amd64 tor | 0.4.6.8-1~bpo10+2 | oldstable-backports-sloppy | amd64 tor | 0.4.6.8-1~bpo11+2 | bullseye-backports | amd64 tor | 0.4.6.10-1 | testing | amd64 tor | 0.4.6.10-1 | unstable | amd64 tor | 0.4.7.4-alpha-1 | experimental | amd64 36 / 51
  37. セキュリティOS セキュリティOS Torの設定はそんなに難しくないが誤った設定で情報が漏れるのが怖 い.セキュリティOSを使うと少し安心? Debianベース,Gnomeデスクトップ環境 ライブDVD/USBシステムでシャットダウン時にデータはすべて 消える USBではluksの永続化領域の利用は可能 SecureBootにも対応したので使いやすくなった すべての通信にTorを利用

    個人的に一番良く使っている TailsOS 37 / 51
  38. fedoraベース Xenを使った仮想化でアプリケーションごとにシステムを分離, 使い捨てにすることも Whonixを統合してシステム全体でTor利用 Debianベース,KDEデスクトップ環境 すべての通信にTorを利用 Qubes OS Whonix 38

    / 51
  39. 便利なツール 便利なツール OnionShare Enterprise Onion Toolkit 39 / 51

  40. Torを使ったファイル共有ソフト ファイルアップロード,ダウンロード,テキストチャット,onionサイトの ホストが可能 既定値でprivate keyが設定される private keyを設定するとBraveやAndroid版Torブラウザでア クセスできない…… 同時に複数のサービスを起動可能 OnionShare

    OnionShare 40 / 51
  41. Debianパッケージもあるが,バージョンが古く日本語が利用できな いなどの問題がある Flatpakやsnapで導入できるようになっているが巨大(1.5GB) OnionShare cli版もある(68MB) 現在は依存関係の解決に失敗するよう > ImportError: cannot import

    name 'soft_unicode' from 'markupsafe' $ pip3 install markupsafe==2.0.1 41 / 51
  42. 42 / 51

  43. 43 / 51

  44. 44 / 51

  45. 既存のサイトをOnion site化するためのツール Twitterもこれを使っているらしい 主なサポートプラットホーム Ubuntu 20.04 LTS/OSX Mojave/Raspbian Stretch(!) Enterprise

    Onion Toolkit Enterprise Onion Toolkit GitHub-alecmuffett / eotk:Enterprise Onion Toolkit 45 / 51
  46. まとめ まとめ 日本のような場所で少し試すくらいならお手軽に試せる もし本当に匿名性を保ちたいなら注意深く操作する必要がある セキュリティホール,設定ミス等 セキュリティOSを使うのが良さそう 必要な人も居ると思うのでしばらくはリレーノードは起動したままのつ もり 46 /

    51
  47. 余録 余録 47 / 51

  48. exit node listの国別アドレス数 exit node listの国別アドレス数 $ curl -s https://check.torproject.org/torbulkexitlist

    | xargs -n1 geoiplookup | grep 'GeoIP C 389 US, (アメリカ) 182 DE, (ドイツ) 82 NL, (オランダ) 57 SE, (スウェーデン) 43 LU, (ルクセンブルク) 38 RO, (ルーマニア) 34 FR, (フランス) 31 AT, (オーストリア) 26 UA, (ウクライナ) 25 CH, (スイス) 48 / 51
  49. 5分毎にTorにアクセスしてexit 5分毎にTorにアクセスしてexit nodeになったipアドレスを記録, nodeになったipアドレスを記録, 直近10000件をカウント 直近10000件をカウント $ tail -10000 ./.tor.ip

    | cut -d, -f2 | xargs -n1 geoiplookup | awk '{print $4}' | grep -V IP 5793 DE, (ドイツ) 857 US, (アメリカ) 408 NL, (オランダ) 399 AT, (オーストリア) 332 SE, (スウェーデン) 265 RO, (ルーマニア) 216 CH, (スイス) 209 LU, (ルクセンブルク) 202 FR, (フランス) 172 CZ, (チェコ) 49 / 51
  50. 参考url 参考url Tor exit address.Torからのアクセスを処断したいときなどにも ajvb/awesome-tor: A list of awesome

    Tor related projects, articles, papers, etc 5ky1ar/Awesome-Onion-Links: A list containing .onion links for the tor network aka the dark web Welcome to Tor Metrics https://check.torproject.org/torbulkexitlist 50 / 51
  51. 奥付 奥付 発表 発表者 利用ソフトウェア ライセンス CC BY 4.0 鹿児島Linux勉強会

    2022.03(オンライン開催) Kenichiro Matohara(matoken) Asciidoctor Reveal.js 51 / 51