Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
誰でもファイルアップロード
Search
Kenichiro MATOHARA
December 26, 2020
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
誰でもファイルアップロード
Kenichiro MATOHARA
December 26, 2020
More Decks by Kenichiro MATOHARA
See All by Kenichiro MATOHARA
ターミナルグラフィックウェブブラウザ!?
matoken
0
20
軽量ウェブブラウザDilloのPlugin
matoken
0
39
今更LLMを触り始める(ローカルLLM bonsai)
matoken
0
140
念願のNDLOCR-Lite を試す
matoken
0
110
Nextcloud と互換性のある軽量WebDAV server のKaraDAV を試す
matoken
0
100
ActivityPub Server の snac その3
matoken
0
81
ActivityPub Server の snac その2
matoken
0
59
端末録画再生共有アプリ asciinema 3.0 リリース
matoken
0
96
アナウンス向けにミニマリスト向け ActivityPub Server の snac を利用
matoken
0
140
Other Decks in Technology
See All in Technology
暗号化?某ファイルストレージはどうなるの!? 3rd Partyとうまく付き合う秘密度ラベル設計
kasada
0
210
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
0
260
信頼性はSREだけのものじゃない
hkawaras
0
160
internal/testlog で遊ぼう
rokuosan
0
250
AWSとGitHub Actionsの責任境界と 組織で安全に使用する取り組み
nealle
0
180
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
54k
RelayerというPHPのフレームワークを作った
polidog
PRO
0
150
EMの役割で 変わったこと・変わらなかったこと
sansantech
PRO
0
140
[ホンマでっか SRE] あなたはなぜ SRE に?
_awache
0
270
国家プロジェクトを支える「さくらONE」 大規模LLM開発におけるGPU障害を乗り越えるクラスター運用戦略
gpuunite_official
0
300
:syncing_time:
sksat
2
780
カーネルまで探検して理解するふたつの自動計装
sumiyae
0
330
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
A better future with KSS
kneath
240
18k
Being A Developer After 40
akosma
91
590k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
670
HDC tutorial
michielstock
2
820
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
300
Building Adaptive Systems
keathley
44
3.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
From π to Pie charts
rasagy
0
330
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Transcript
/ 誰でもファイル 誰でもファイル アップロード アップロード Kenichiro Matohara 1 / 31
/ 南隅から参加(鹿児島の右下) 好きなLinuxディストリビューションはDebian お仕事募集 mailto:
[email protected]
Kenichiro Matohara(matoken) Kenichiro Matohara(matoken) https://matoken.org
https://matoken.org 2 / 31
/ Rakuten mini 2台目到着 Rakuten mini 2台目到着 といってもLTE BAND1対応品への交換 9月に届いてすぐにお願いしていたのがやっと届いた
これでdocomo回線でも使いやすくなるはず 締切は12月いっぱいまでらしいので未だの人はお早めに https://corp.mobile.rakuten.co.jp/news/notice/2020/0626_01/ 3 / 31
/ https://nitter.net/matoken1/status/1338043888531955712#m 4 / 31
/ https://nitter.net/matoken1/status/1338051036733304832#m 5 / 31
/ Epic Gameでゲーム貰おう Epic Gameでゲーム貰おう 最近は週に1本無料配信をしていたけど現在毎日無料配信中 アカウント登録のみでクレジット登録も不要 Linux版は(多分)ないけどWine経由で動くものも多い(現在動かなく ても動くようになるかも) LutrisでEpic
Games Storeを導入すればお手軽 (Linux版もあるSteamは現在ウィンターセール中) 毎週無料ゲームが登場 | Epic Games Store ゲーミングプラットホームのLutris紹介 Lutrisを使ってLinuxでもEpic Gamesで遊ぶ 6 / 31
/ OSC20FKの参加者アンケートで OSC20FKの参加者アンケートで 書籍当選! 書籍当選! 回答者少ないらしいのでみんな回答しよう 解答で言及されると嬉しいし (回答者少なくて当選率高いらしいですよ) 7 /
31
/8 / 31
/ 現在ODC2020 Onlineアンケート 現在ODC2020 Onlineアンケート 募集中 募集中 参加した人は回答しよう https://event.ospn.jp/ODC2020- Online/article/books
9 / 31
/ 最近の発表 最近の発表 2020-11-28 2020-12-12 Twitterをちっちゃいリソースで 鹿児島Linux勉強会 2020.11@オープンソースカンファレンス福岡 (オンライン開催) 常駐アプリ等を軽く出来ないかな?な試み
小江戸らぐ 12月のオフな集まり(第221回) 10 / 31
/ 2020.02補足 2020.02補足 2月の発表でAndroid端末のバッテリーを満充電しない(80%で充電終 了)ようにして労れないか? → 1年経たずにバッテリー劣化の症状が あまり意味はなかったみたい…… LinuxからAndroidの充電を制御する 11
/ 31
/ 誰でもファイルアップロード 誰でもファイルアップロード アカウントや認証無しでファイルをアップロードしてもらいたい 太古はanonymous FTPを設定して使っていた(WU-FTPD) オンラインストレージでは Box, Dropbox, ftopia,
Koofr, MEGA, OpenDrive, pCloud等で使えるらしい?(有料のみ?) 特殊な機能を持つ オンラインストレージ | free. 12 / 31
/ 少し前 少し前 OwnCloudにアップロードオンリーの共有機能が付いた 早速試したけど程なくEnterpriseのみの機能になる forkのNextcloudのOSS版にこの機能が取り込まれたのでOwnCloudか らNextcloudに移行した (当時は移行がとても簡単だった) 13 /
31
/ Nextcloud file-drop Nextcloud file-drop 共有したいフォルダで「URLで共有」→「ファイルドロップ(アッ プロードのみ)」 有効期限を設定しなければずっと同じURLで使える 同名のファイルがアップロードされたら `
(2)` のようなデミリタが 付く (hoge.jpgというファイルが3つアップロードされると,hoge.jpg, hoge (2).jpg, hoge (3).jpg となる) file-drop – Nextcloud 14 / 31
/ 共有設定 共有設定 15 / 31
/ アップロード画面 アップロード画面 16 / 31
/ Nextcloudを*試す*のにはsnapがお Nextcloudを*試す*のにはsnapがお 手軽 手軽 Debian sid amd64/Ubuntu 20.04 LTS/Raspberry
Pi OS armhfでは以下の手 順でOK 1 システムのパッケージを最新にする 2 snapを使えるように snapd パッケージを導入 3 snapでnextcloudを導入 ウェブブラウザにIPアドレスを入力するとセットアップ画面が表示さ れるので管理者ID/PASSWORDを設定 $ sudo apt update && sudo apt upgrade $ sudo apt install snapd $ sudo snap install nextcloud 1 2 3 17 / 31
/ OnionShare OnionShare Podcastの #セキュリティのアレ 第57回で知った Tor経由でファイルのやり取りが出来る(Up/Down) 起動するたびに毎回アドレスは変わるので毎回URLのやり取りが必 要 ルーターの内側でもTorは外に出られちゃうのでポート開放は(大
抵)不要 https://onionshare.org/ http://www.tsujileaks.com/?p=696 https://wiki.matoken.org/linux/tor/onionshare 18 / 31
/ 導入 導入 Linux版はUbuntuはPPAが,Fedoraはパッケージがある,Debianなので Ubuntu版が使えそうだけどsourceをcloneして依存関係の少ないcli版を 試してみた 依存パッケージの導入 sourceの入手 cli版起動 $
apt install -y python3-flask python3-stem python3-pyqt5 python3-crypto \ python3-socks python3-nautilus tor obfs4proxy python3-pytest python3-pytestqt \ build-essential fakeroot python3-all python3-stdeb dh-python \ python3-flask-httpauth python3-distutils python3-psutil python3-socketio \ python3-flask-socketio python3-qrcode $ git clone https://github.com/micahflee/onionshare.git $ cd onionshare $ ./dev_scripts/onionshare 19 / 31
/ ファイル受け取りモードで起動 ファイル受け取りモードで起動 --receive オプションでファイルを受け取れる ファイルは ~/OnionShare/西暦年-月-日/時.分.秒/ 以下に保存さ れる $
./dev_scripts/onionshare --receive 20 / 31
/ ファイル受け取りモード ファイル受け取りモード 21 / 31
/ その他の機能 その他の機能 --chat オプションでtext chatモードになる(日本語は化ける) --website オプションで指定したコンテンツをOnion siteで公開できる 22
/ 31
/ 問題 問題 Android版Torブラウザでは利用できなかった ダウンロードが途中で終了して失敗する Debianパッケージ版ではない最新のTorを利用するか,Torを利用 しないようにする OnionShare closes before
downloading is complete · Issue #929 · micahflee/onionshare 23 / 31
/ Droopy Droopy Python製 New BSD License ファイルのアップロードに使えるミニウェブサーバ Pythonがあればファイル1つで動作するのでお手軽( Depends:
python3:any ) http://stackp.online.fr/droopy https://wiki.matoken.org/linux/fileshare/droopy 24 / 31
/ install install Debian jessie以降,Ubuntu 16.04 LTS以降でパッケージが存在する $ sudo apt
install droopy 25 / 31
/ 起動 起動 にアクセスするとアップロードページが表示され る.ポート変更も可能. ※同じネットワークからも見える. $ droopy http://localhost:8000 26
/ 31
/ オプション例 オプション例 1 アップロードディレクトリ指定(既定値はカレントディレクト リ) 2 メッセージ 3 バナー画像
4 アップロードディレクトリのファイルをダウンロードできるよ うリンクを表示する.※このオプションを付けなくてもファイ ル名がわかっていればダウンロードできてしまう. 5 アップロードファイルが8進数で指定したパーミッションにな $ droopy -d ~/tmp/upload/ \ -m 'hello droopy' \ -p ~/tmp/upload/13-3733667.jpg \ --publish-files \ --chmod 400 1 2 3 4 5 27 / 31
/ Droopy利用例 Droopy利用例 28 / 31
/ FW内で実行 FW内で実行 FW内のPC等で実行する場合ngrok等のトンネリングサービスを使っ て公開するとお手軽 $ ngrok http localhost:8000 --region
jp --log stdout --bind-tls true 29 / 31
/ 問題 問題 debian packege版で認証をかけようとするとエラーとなり動作しない Upstreamでは修正済のようでこの修正で動作するのを確認 Debianは DLリンクを表示していなくてもファイル名がわかっていれば誰でもダウ ドできてしまう --chmod
000 のようにしてアップロードファイルのパーミッション すようにしてとりあえず回避 https://github.com/hdf/Droopy/commit/3ac476fe4a703c1df99aa5208e164646 reportbugしておいた 30 / 31
/ まとめ まとめ 常時利用するならNextcloud ただし導入管理コストや消費リソース量多 アドホックに使うならDroopyが便利 Python Script1つでok アドホック&TorならOnionShare? 導入や説明が少し面倒?
31 / 31