サイバーセキュリティの講義と演習を行った

5月25〜26日にかけて大阪大学で高度サイバーセキュリティPBL Iという講義を行った(これも例のごとくProSecというコースの一環である)。講義と言っても講義が6割で演習が4割と言った配分である。この講義は自分以外に、情報通信研究機構から明石邦夫先生を招き講義してもらった。明石先生は、Interop Tokyoという日本最大のネットワークの展示会のネットワーク運用センター(通称NOC)で運用を行っているような人で、ガチでネットワークに詳しいので、かなり面白い話が聞けたと思う。

講義の内容は、ネットワークの基礎から学んで、最終的にOpenBSDのpfを設定してDMZのあるネットワークの構築を行うまでを目標にしている。1日目はネットワークの基本的な内容、いわゆるネットワークスペシャリストに出るような内容を講義し、その後学生同士でチームになってもらい、ウェブブラウザでURLを開いたときにスイッチやNAPTルータの内部で何が起きているかをプレゼンしてもらった。当初ネットワークは全然わからないと言っていた学生が、スイッチ内部のテーブルや、NAPTのアドレス変換について解説できるようになるのはなかなか凄いことではないだろうか。

2日目の講義ではネットワークスタックの実装方法や、radix treeを用いたルーティングテーブルのルックアップエンジンの実装方法といった内容の講義を行ったが、これは普通のネットワークの講義ではやらないような濃い内容になったと思う。また、OpenBSDのpfを使ったDMZネットワークの構築を行う演習の方だが、こちらも当初はBSDを使うのが初めてで、ましてやpfとは一体、という学生が大半だった。しかし、最終的には、完璧でないにしろpfでフィルタリングができるようになった学生がそれなりに居たため大変喜ばしい。

ネットワークの講義というと、いかんせん暗記科目になりがちで、暗記はしたけど実際問題いまいち良く分からないとなりがちだが、本講義では何故そうなっているか、実装はどうなっているかといった哲学と実際の仕組みを念入りに教え、さらにpfも使って演習したため、2日間で一気にネットワークセキュリティに詳しい人材が出来上がってしまった。

大学の講義は実社会で役に立たないと言われがちだが、これほど実社会に役に立つ講義もないのではないかと思う。準備がめちゃくちゃ大変だったが、無事に終わってよかった。終わって安堵するのもつかの間、そろそろ次の講義の準備をしないといけない。こんなに面白い内容が聞けて演習できるなんて(自画自賛)、大学はまことにレジャーランドである。