みなさんこんにちは。
私がAIITで一番記憶に残っている演習は「ネットワーク特別演習」です。
とても濃ゆい3ヶ月を送ったので学びも多く、とても充実した日々でした。
1.チーム結成
ネットワーク特別演習はAIITの情報技術専攻の講義です。
私は、「インフラまわりも勉強しておこう」という軽い気持ちで履修登録をしました。
夏の晴れた日でした。
サーバー室は空調がしっかりしていたのでとても涼しかったのを覚えています。
集まった学生たち(おっさんたち)は「どういうチーム分けになるのだろう」と不安な気持ちを全面に出して、適当な席に座っています。
授業が始まり、何をするか先生から説明がありました。
先生「サーバーを立ててください。」
先生「設定表や作業手順書も作ってレビューもしてください。」
先生「運用手順書も作成してください。」
先生「安心してください。フォーマットはある程度あります。」
先生「サーバーを立てて、運用体制まで確認できたらドメインを与えます。」
先生「余力があればサービス乗っけてみてください。最後に発表があります。」
先生「今座ってるところで3,4人でチーム作って。そこ席移ってー。」
先生「はい、はじめ」
こんな感じ。いや割とまじで。
ちなみに席を移ったのは私(テーブルに2人しか居ないところにjoin)
そこに居たのは…
前田PBLで顔なじみのアダチさんと同い年(ここの学生で初めて!)のクロキさんでした。
ちなみにアダチさんは長期履修で一年先輩で、クロキさんはひとつ下の後輩でした。
3人とも学年違うのかよ!しかも、
アダチ(創造技術専攻、文系出身プログラマ)
カンダ(創造技術専攻、情報工学出身鉄道エンジニア)
クロキ(情報技術専攻、体育会系出身ITエンジニア)
という異色のチームが出来上がりました。
多様性とは言ったものですが、多様すぎるチームでワクワクです。
2.サーバーを立てる
centOSをインストールすることにしました。
クロキさんがどこから調達したのかわからないOSディスクを持っていました。
※クロキさんは仕事が早いので目を離した隙にいろいろなものが進んでいます。
クロキ「最新版ぶちこむぜ!!!」
アダチ、カンダ「いったれ!いったれ!!」
サーバ「…」
先生「CentOSはver7入れると設定うまくいかないかも…」
クロキ「設定が手詰まったぞぉー!!」
アダチ、カンダ「ぬぉおおお!!!」
※基本、アダチとカンダはガヤ
というお約束の手戻りを乗り越えつつ、設定を進めました。
ちなみに私はルーターの設定が担当でした。
作業手順書を作成してレビューして
かんだ「よくわからんが、設定ってこれだけでいいのかな?」
クロキ「一応確認したけど、項目もあってるし、IPアドレスとかもあってるよ!」
ログの設定、アクセス権の設定、使わないポート閉じたり、NATの設定、アクセスリスト設定したりしました。
CISCO IOSは初めて触りましたが、黒い画面でコマンド叩いてるとエンジニアっぽいですよね。
手順書通り、設定完了。
ネットワーク・サーバーの設定も終わり(クロキさんの担当)
ついにSSHで接続するぞーって段階で
クロキ「あれ、繋がんないな…」
かんだ「pingとぶ?」
クロキ「飛ばない」
かんだ「ルーター設定かな…」
見直したらNATの設定が漏れていました。
その間に別のネットワーク・サーバーを立てるアダチさん
3.サーバーの運用を決めて公開
CentOSにはWEB、NTP、DNS、DHCP、メール(SMTP、IMAP/POP)などをぶち込みました。
クロキ「セキュリティ設定は前回との差分をチェックするプラグインを導入して日々管理するのとかどうでしょう」
かんだ、アダチ「良いと思います」
かんだ「攻殻機動隊で、ハックされたときに斧でケーブルを切るシーンが有るのですが」
かんだ「それが一番強いと思うんですよね」
アダチ「わかる」
クロキ「えっ!」
かんだ「アクチュエーターつけて物理的に遮断できる機構を実装したい」
アダチ「別回線でラズパイに接続してそこから指令を出す感じでいいかな」
かんだ「良いと思います。駆動周りは任せてください。ハイローのピン出力1つだけください。ラズパイはアダチさんよろです」
アダチ「了解!」
クロキ「(創造の人は考えがぶっ飛んでる…)面白そうですね!」
クロキ「運用は、マニュアルを作成するのでそれに従ってやりましょう!」
かんだ「どんなことやるんですか!センセイ!」
クロキ「基本的には差分データ確認して、意図してない変更がないか確認します。その他、ログ確認をして怪しいアカウントでログインしてないかとか、通信を行っていないかとかを確認します。情報共有はslack使ってやりましょう。」
かんだ「はい!(よく分かっていない)」
そんなこんなで、手順書とマニュアルを作成してサーバーの運用については決まったのでした。
運用についても見通しが立ったので、先生にレビューしてもらってサーバーを公開しました。
とりあえず、第一関門のサーバーの公開にこぎつけました。
4.アプリケーションエンべデッドの開発
この装置がネットワークやサーバーの稼働に必要だと思いますか?
作ったのは私ですが、私は全然必要だと思いません!!
作ったやつ変態です!本当にありがとうございました!
さて、ネットワーク・サーバの設定が若干残りつつ、例の物理遮断装置の開発に取り組みました。
取り組むにあたって、装置の名前は大事です。
我々は攻殻機動隊のあのシーンをもとに名前をつけました。
「エマージェンシー アックス」
語彙力のなさを全面に押し出すスタイルです。
さて、私は5v出力をもらったらLANケーブルを引き抜く機構を考えました。
まず、RJ-45は抜け防止のために爪があります。
ボキッ!
爪は取り除きましょう。
次にSWから引き抜くためにモーターか何かでケーブルを引っ張るor押し出す必要があります。
最近感銘を受けたアクチュエーター、「ソレノイド」を使うことにしました。
名前もそれっぽいでしょ。
当初案ではLANケーブルのコネクタに押される部分を取り付けてそれをソレノイドで押し出す事を考えていました。
て、実際に実験したところ…
ソレノイドの出力が足りない問題発生
と言う事で機構を再検討です。
ふと、目に止まったのはR-1ヨーグルト(ドリンクタイプ)
そこにはこう書いてありました。
「強さひきだす乳酸菌」
私は閃きました。
ソレノイドでR-1を押し出し、落下させてその運動エネルギーを使ってLANケーブルを引き抜くことに!
ありがとうmeiji!強さひきだせました!
と言う事で、力技でLANケーブルを抜く機構を思いつき第2回プロトタイプを開始しました。
と言っても、適当な紐をR-1とLANケーブルのコネクタにくくりつけて、セットするだけなんですが…
調整したのは
(1)引っ張った衝撃でSWが持っていかれないようにテープで固定
(2)紐の長さ
(3)ソレノイドとR-1の距離
試行錯誤の上、完成しました。
(2)は長すぎると先に地面についてしまい、強さを引き出せません。短いとmghを運動エネルギーに変換しきれずやはり強さを引き出せません。ちょうどいい長さを見つけました。
(3)はソレノイドの特性上、ゼロ距離だと出力が少ないので、ある程度離さなければならないのですが、離しすぎるとソレノイドパンチが足りずにR-1が落下しない。
ミリ単位で位置を変えて落下実験を繰り返しました。
最終的にこの位置だ!ってところに正式(?)な位置合わせテープ(に線を書き入れたもの)を貼り付けて、そこにR-1を置くことにしました。
↓デモ動画です
周りのチームはアプリケーションの開発とかサーバーの設定をしているのに、なぜか組込開発をしている我々。
若干の不安に駆られつつ、「信念を持ってセキュリティ対策に没頭する俺たちかっこいい」という中二病精神で乗り切りました。。
最後のラズパイからの信号を受け取れば完成!というところで
アダチ「あれ、家でやったら動いたのに学校のwifiだと動かない」
カンダ「な、なんだって!Ω」
言われてみれば学校のwifiはステレスだし、定期的にアカウント認証必要だったわ!盲点だった!
…本当は家でも動いてないんじゃない?という、疑いは全くないですよ!全くです!仲間ですから信じてます。ほんとに!
先生「いや、家でも絶対動いてないでしょ!?wwwwww」
カンダ、クロキ「(言いやがったー)wwwww」
カンダ「まぁ、デモ動画撮れたし、いっか。」
まぁ、そこはやればできるのでとりあえずアプリケーションの開発に取り組むことにしました。
5.アプリケーションの開発
次にアプリケーションの開発です。
サーバなんてものはアプリケーション動かすためにたてるんですよ。
アプリケーション動いてなんぼですわ。
という事でアプリケーション何作るか話合いをしました。
カンダ「なにか面白いサービスを作りたいですね」
クロキ「そうですねー!」
アダチ「何にします?」
カンダ「ところで、アダチさん出身インドでしたっけ?」
アダチ「そうそう、インドのムンb…って違うわい!新潟ですよ!」※
カンダ「あ、失礼!新潟って米どころですよね!いや、江戸時代年貢の計算めちゃ大変だっただろうなって事で年貢を計算するサービスどうですか?」
アダチ「つまり、長岡藩から「毎年の年貢の計算が大変!文官が悲鳴を上げてるからAO化して!」って依頼があったってこと?」
カンダ「まぁ、そういうことですね。」
アダチ「まぁ、いいんじゃない?クロキさんもいい?」
クロキ「あ、はい。」
カンダ「じゃ決まりで。」
クロキ「(やばい奴らや…)」
カンダ「時間ないのでhtml直打ちでUX/UI無視した感じで実装しますね!」
アダチ「速さ大事!よろしく!」
クロキ「各種ドキュメント整理しますね!」
発表に向けて怒涛の2週間でした。
6.発表
発表資料は各自が各担当パートを作ってきて発表者カンダが発表しやすいようにまとめて発表しました。
(スライド)
全体的にネタだろ!って感じがしますが、聞き手が聞きたくなるような発表であるべきだと思って突き進みます。
技術的なこともちゃんとやってるけど、みんなはそこらへん作業して理解してるので分量少なめ。
工夫したところとか運用で苦労したところを重点的に発表しました。
誰に向けての発表かと言うことを考えての発表です。
7.成績発表
ついにアツい演習は終わり、後日成績が発表されました。
クロキ「おかげさまで5でした!」
カンダ「私も5だったよ!あんな(ぶっ飛んだ)発表だったのに先生優しい!」
アダチ「あれ、私も5だ。」
これだけ汗かいて取り組んだ演習の成績5は嬉しいものです。
でもそれ以上に、クロキさんやアダチさんの成績が良かったことが、本当に嬉しかった。
最初は共通点のないチグハグなチームでスタートした私達が、良いチームで良い成果を出せたのは、
よく話しお互いを信頼し、各自の目的を共有し共通の目標に向かって突き進んだからだと思います。
チームみんながいい成績を取れたのは、いい人材が集まったからじゃない。
僕たちが最高のチームを作れたからだと感じました。
最高のチームは最高の成果を出せる。
僕がこの演習で学んだ事はネットワークについてのハードスキルもそうですが、チーミングの大切さでした。
※アダチさんは前田先生の官僚時代の先輩で加藤先生(元大使)が史実を伝えたい!とセミナーを開いていてその中で
加藤先生「イギリス人はイギリスの織機が売れないからと言ってインド人の職人の手を切り落とした残虐な支配をしていた!皆さん知ってました?」
一同「知らないです。」
加藤先生「ところで、あなた、ご出身は?」
アダチ「あ、新潟です!」
加藤先生「なんと、現地の方もこの事実を知らないとは!」
という、エピソードがあってからアダチさんはインド人という事になってます。
コメント