31 OpenWrtとのデータ共有方法いろいろ

enter image description here
例えばtcpdumpをつかって通信ログをとったので、wiresharkでログを眺めたい、なんてとき。OpenWrtでtcpdumpを走らせてdns_query.datとかバイナリデータを保存しても、そのデータをどうやってwiresharkが動いているPCと共有すればいいのだろう。なかーり素人な知見で恐縮ではありますが、4つ方法があります。
  1. scpコマンド
  2. OpenWRtをsftpサーバーにする
  3. Openwrtをsambaサーバーにする
  4. Openwrtをtftpサーバーにする

OpenWrt : オープンソースルーターOS。SSHサーバー。tcpdumpコマンドでログを取る
PC : WireSharkを起動する。SSHクライアント。Linuxを想定
tcpdump : tcp/ip通信の生ログを取得して保存

OpenWrt >> PC
のファイル共有方法をどうしよう?という記事内容です。sftpがChromeBookでは一番手間がなくておすすめでした!!




scpでSSHクライアントからファイルを取得する

SSHクライアントから接続先SSHサーバーのディレクトリにあるファイルを取得できる。文法は、

scp ユーザー@OpenWrt.の.IP.アドレス:/ディレクトリ/ファイル 宛先ディレクトリ
## OpenWrt > PC
scp watashi@192.168.x.y:/root/dns_query.dat /home/watashi/Downloads

さっとコマンドを叩けばいいので、scpによるファイル取得の使い勝手は悪くない。しかし、上記コマンドを実行しているような、SSHクライアントがLinuxなら問題はないが、私のメインPCであるChromeBookのようにscpコマンドが使用できない場合。そういうときは、OpenWrtを種々ファイルサーバーにするのが楽。sftpサーバーが一番手間がかからないのにread&writeできておすすめです。



2 OpenWrtをsftpサーバーにする

opkg install openssh-sftp-server
参考URL: OpenWrt Project: SFTP server

パッケージをインストールした瞬間からsftpサーバーとして機能する。sftpのマウントディレクトリは/root。ChromeOSのファイラーだと以下のようにサイドバーに表示されアクセスできる。
Gdriveと同じような使用感であらためて便利ですね!sftpディレクトリのマウントは、Chrome拡張機能のSecureShellAppからさくっとできるので、このあとに紹介するdsambaサーバーにするより遥かに楽です


 sftpディレクトリへのファイル・フォルダ作成、ファイル読み込みも可能で難しいことがなくてほんと便利でおすすめです。sftp参照ディレクトリのファイルを直接wiresharkで開けるというわけではなく、ローカルディレクトリにコピーしないといけない

LinuxのthunarならファイラーからまるまるOSのディレクトリ参照


3OpenWrtをSambaサーバーにする

opkg install samba36-server luci-app-samba uci-i18n-samba-ja
参考URL: OpenWrt Project: Samba


OpenWRTのディレクトリが他のPCから参照できるのが、sftpと同様(あたりまえだけど)便利。共有ディレクトリの参照だけなら、LUCIでかんたんに設定できる。ゲストアクセスを許可するだけなら上記スクショのようにするだけでOK





4DnsMasqを利用したtftpサーバー

dnsmasqには、openWrtをtftpサーバーにする機能があります。この方法でtftpサーバーにする場合、他クライアントからのファイルのアップロードはできない仕様になっています。サーバーに対して、PCとかクライアントはファイルの参照のみできるようになっています
mkdir /root/tftpdir
uci set dhcp.@dnsmasq[0].enable_tftp=1
uci set dhcp.@dnsmasq[0].tftp_root=/root/tftpdir
uci set dhcp.@dnsmasq[0].dhcp_boot=pxelinux.0

#Commit changes
uci commit dhcp

#Restart Dnsmasq
/etc/init.d/dnsmasq restart
参考URL: TFTP Server on Your OpenWRT Router · alghanmi/openwrt_netgear-wndr3700 Wiki · GitHub


PCなどでtftpクライアントソフトで、/root/tftpdirにあるファイルをget可能に
Written with StackEdit.






さいごまでお読みいただきありがとうございました

当ブログは、ChromebookやLinuxなITライフスタイル記事を投稿しています。コンテンツの柱は、ChromebookでVimmerLVを上げる、ChromeBookでWEBプログラミング、シェルスクリプトLVを上げる、となっております



ChromebookでVimmerになる

実践VIMという書籍を読んで「うわキーバインディングすげぇ」と感動したのが、Vimmerを目指しはじめたきっかけ。Vimは古のテキストエディタ。VimLVをあげればテキスト編集をより効率的に行えるようになるでしょう

メインテキストエディタをVIMに矯正し、実践VIMを読み進め、Vimmerになるまでの道のりを記事にしています
ChromeBookでVimmerになる 記事一覧


実践Vimおすすめです!


ChromebookでWebプログラミング

Chromebookを買ったはいいけど、Blog更新・ネット閲覧くらいしかやることがない!  Aという目的のためにBという手段を用いるとは逆で、当ブログではChromeBookを買ったからChromeBookでなにかできることはないか!?  と思って初めたのがWEBプログラミング(ここまで前置きが長い!) html cssはもういいのでJSの学習をすすめています

ChromeBookでWebプログラミング 記事一覧


シェルスクリプトLVを上げる

シェルスクリプトって覚える文法が少なめなのにLinuxでいろいろできるのが楽しい!
断捨離ブームに乗り書籍250冊近くをimageMagicとBashで自前電子化したのがシェルスクリプトが好きになったきっかけ  >> 250冊の自前電子化した経緯とか

ちょっとずつですが、シェルスクリプトの記述の幅が広がってる段階。レベルを上げシェルスクリプトLV50前後を目指しています
シェルスクリプトLVをあげる 記事一覧



おすすめのChromebook

私が使用しているのはASUS ChromebookFlip101pa 980g と軽量でCrostiniやPlayStoreも動く おすすめです

コメント

item