Dockerを使ったカーネルのセキュリティについて調べています。私は seccomp をテストしていますが、Debian と Ubuntu ではうまく動作しますが、Kali Linux では動作しません。
例:
sec.json
このコンテンツで呼び出される単純な json ファイルを作成しました。
{
"defaultAction": "SCMP_ACT_ALLOW",
"syscalls": [
{
"name": "mkdir",
"action": "SCMP_ACT_ERRNO"
}
]
}
seccomp とこのファイルを使用してコンテナーを実行すると、mkdir
コンテナー内でコマンドを使用できなくなることが想定されます。これは docker run コマンドです。
docker run --rm -ti --security-opt seccomp=/path/to/sec.json ubuntu:xenial sh
前述したように、Debian と Ubuntu では非常にうまく機能しますが、Kali Linux では次のエラーが発生しました。
docker: Error response from daemon: linux seccomp: seccomp profiles are not supported on this daemon, you cannot specify a custom seccomp profile.
私の docker-engine のバージョンは17.05.0-ce
で、カーネルは4.9.0-kali3-amd64 #1 SMP Debian 4.9.18-1kali1 (2017-04-04) x86_64 GNU/Linux
です。私はこれについてグーグルで調べましたが、かなり奇妙です。これを確認できれば、seccomp がサポートされていると考えられます。
cat /boot/config-`uname -r` | grep CONFIG_SECCOMP=
私は結果として得た:
CONFIG_SECCOMP=y
だから支持されているのだろう。私は何を見逃していますか、またはこれが Kali で機能していないことについての説明は何ですか? ありがとう。