権限のない lxcontainer 間で Unix ソケットを共有する

権限のない lxcontainer 間で Unix ソケットを共有する

2つの権限のないコンテナがあり、その間にUnixソケットを共有したいと思います。各コンテナには、ホストに別々のsubuidマッピングとsubguidマッピングを持つ独自のユーザーがあります。

コンテナにグループを作成し、それをホストのグループにマップしてみました。しかし、これはうまくいきません。コンテナを互いに公開することなく、関連するユーザーの数と潜在的なセキュリティホールをできるだけ小さく保つために追加のユーザーを作成したくありません。

ベストアンサー1

UnixソケットはIPソケットと同じように動作しますが、アドレスはファイルパスです。コンテナがする必要があるのは、ソケットアドレス=ファイルパスを確認することだけです。 UID権限は確認されません。まだ試していませんが(理由は後で説明します)、共有マウントの名前空間で十分です。そうでなければ、おそらくIPCでしょうか?

おそらく名前付きパイプを意味するのでしょうか?名前付きパイプへのUIDアクセスを確認しますが、ファイルアクセス制御リストを使用してマッピングされたユーザーへのアクセスを許可できます。

mkfifo abc; setfacl -m u:12345:rw abc; setfacl -m u:23456:rw abc

Unixソケットを使用するのが妥当でない理由は、IPソケットよりも高速でも安全でもないからです。もしそうなら、本当の質問はなぜ通信にUnixソケットが必要なのかということです。

おすすめ記事