Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
カーネルレベルでTwitterを禁 止しよう 会津大学 学部3年 しんぶんぶん
Slide 2
Slide 2 text
自己紹介 ● 名前: しんぶんぶん ● 所属: 会津大学学部 3 年 ● Twitter: @shinbunbun_, @4fa19623 ● Rust いっぱいちゅき ● LINE API Expert / seccamp ’23 / Cybozu labyouth 13th
Slide 3
Slide 3 text
みなさん、Twitterやりすぎてませんか?
Slide 4
Slide 4 text
Twitterを禁止する方法 ● Chrome拡張 ● ファイアウォールでブロック ● etc…
Slide 5
Slide 5 text
実はそれ、カーネルレベルでブロックできます
Slide 6
Slide 6 text
そう、eBPFならね!
Slide 7
Slide 7 text
eBPFとは ● カーネルのソースコードを変更したり、カーネルモジュールをロードしたりすることな く、安全にカーネルの機能を拡張できる ● ユーザースペースはGo,C++, Rustなどでかける ● eBPFプログラム自体はCやRustでかける
Slide 8
Slide 8 text
つまり...
Slide 9
Slide 9 text
全部Rustでかける!!!
Slide 10
Slide 10 text
今回作ったもの ● ayaというRustのライブラリを使用 ● 公式チュートリアルにXDPを使ってパケットのdropをするコードが載っているのでそ れを使用 ● コード: https://github.com/aya-rs/book/tree/main/examples/xdp-drop
Slide 11
Slide 11 text
実際に動かしてみよう!
Slide 12
Slide 12 text
まとめ ● やっぱり低レイヤーやりたかったらRustめちゃめちゃ良いなと思った ● eBPFまだ入門しただけなので、もっと深いところまで触っていきたい