101010

プログラミング備忘録とともに、ポエムってます。

mitmproxyとスペック

左はMac(クライアント&開発マシン)、右はsurface pro(linuxホストマシン)、真ん中はRaspberry Pi zero(linuxホストマシン)

Macのテープはvim訓練のため。(一週間程度ではあるがだいぶ慣れた)


f:id:araemonz:20190404005737j:image

 

遊びがてらはてなブログのAPIを使ってみようとした。だけどoauth1.0がよくわからなすぎる。Oauthライブラリを使ってしまうと面白くないので自力で鍵の生成を試みる。パラメーターキー順にソートしてhashかけてと一日かけてかなり頑張ったが、はてなからはシグネチャーエラーが返ってくる。そこからどうしても抜け出せなかった。これ以上突き詰めても無駄な時間を過ごすと思って諦めた。それにoauth1.0なんてそのうち使われなくなるだろうと勝手に納得することにした。こうなったら方向転換してパケキャプってやってやろうじゃないかと。

 

あっさり、curlでログインはできたが、Macだと画像postの表示でmitmproxyがクラッシュ。別の問題でつまづく。これでは画像投稿のパラメーターが解読できない。mitmproxyを何とかしないと。クグルとクラッシュバグの報告は一年前から投稿があるようだ。しかし最新版でも改善されていないとなると開発者はMacを使ってないんだろうなー。(後々分かったがLinuxだとクラッシュはしないでちゃんと画像データも表示された。これはもしかしてcrlf問題なのでは!?MacとLinuxって改行コード違うから!)訂正: OS10以降のMacはLinuxと改行コードは同じなようです。

 

それならRaspberry Piで動かしてみよう!何とか動かせたは良いがmitmproxyが重すぎる!Raspberry Piのスペックの問題もあるのか。スマホからの接続もなんかもっさりする。これではキャプって解析作業がはかどらない。あぁー、python3.7も入れるの大変だったんだよ?ソースからコンパイルしてビルドに1時間以上かかったし、リンクエラー起こしたりと。セッティングまでにいろいろ大変だったのに。それでも久々に昔のパソコンの世界を再体験した気分になって、これはこれで楽しめたので良し。また自分を納得させることにした。

 

その後、Sufaceでmitmproxyを動かすことにした。でもsuface嫌いなんだよなー。surface pro6、今年買ったやつ。windows7ぶりに使ってみたけど相変わらずのwindows10。全然ダメ。タブレット機能とpc機能がごっちゃになっていて使いづらい。コンパネがワケワカメすぎ。やっぱLinuxかUnixっしょ!パソコン買ってそうそうUbuntuを入れ直した。(ホントはcentos入れたかったけれどgrubが起動しちゃってインストール方法がよくわからなかった。)ちなみにUbuntuはCUIで動かしている。操作はMacからsshで繋いでいる。ローカル環境なのにssh。オーバーヘッドだがsshのリモートコントロールに慣れてるためこうしている。(現在ローカルネットワークのみ暗号アルゴリズムを低くして速度の改善に努めている)

それにしても、Surfaceのキーボードやペン、ディスプレイがもったいない。けどしょうがない。意味不明なUbuntuの使い方とパソコンの装備に遠い目になるものの、スペックだけは最先端なのでmitmproxyも悲しいほどにサクサク動く。

 

どうでもいいけど、ubuntuのコンソール画面文字がめちゃめちゃ小さい。これもオーバースペックなディスプレイのおかげかな。