![見出し画像](https://assets.st-note.com/production/uploads/images/131307989/rectangle_large_type_2_7bc1409628fa9e71f5ec21749281f73c.png?width=800)
Photo by
yui001
獄に禁する プログラム作成挑戦記その3
初級者がプログラム作成に挑戦する記事の第二段の第三回です。
今回は、前回作成したHTTPプロキシを禁獄するための監獄を作成しました。
対象OS
これまでのプログラムは、汎用性を持たせるために、POSIXという規格の範囲内で作成していました。しかし、今回の監獄は、POSIXの機能だけでは実現できません。実現のためには、LinuxというOSに独自の機能が必要になります。したがって、今回のプログラムはLinuxに依存しています。
Linuxは、ブサイクなペンギンがマスコットのOSであり、C言語で書かれています。一般的には、「アセンブラを使ってでも無理やり動かす実装がなされており、BSD系に比べて行儀が悪いパチモノのUnix」として知られています。
監獄
なぜ、WebプロキシやTorなどを動かすのに監獄が必要なのか?それは心配だからです。これらのプログラムは、外部と通信しています。そのため、乗っ取られるかもしれません。
乗っ取られたときの対策として、被害を最小限に止めるために、プロキシを閉じ込めてしまうことが考えられます。そのための仕組みが監獄です。
今回のプログラムでは、監獄を構築するために、仮想環境と権限制御(capability)という二つの技術を組み合わせました。
ここから先は
4,199字
¥ 300
古往今来得ざれば即ち書き得れば即ち飽くは筆の常也。と云うわけで御座います、この浅ましき乞食めに何卒皆々様のご慈悲をお願い致します。