lxc-execute وارد نمایه Apparmor نمیشود، اما محفظهای که ایجاد میکند محدود میشود. 6.9.1. سفارشی کردن خط مشی های کانتینر
اگر آن را پیدا کردید lxc-start به دلیل دسترسی قانونی که توسط خط مشی Apparmor رد شده است، ناموفق است، می توانید نمایه lxc-start را با انجام زیر غیرفعال کنید:
sudo apparmor_parser -R /etc/apparmor.d/usr.bin.lxc-start
sudo ln -s /etc/apparmor.d/usr.bin.lxc-start /etc/apparmor.d/disabled/
این باعث می شود lxc-start بدون محدودیت اجرا شود، اما به محدود کردن خود ظرف ادامه دهید. اگر میخواهید محصور کردن کانتینر را نیز غیرفعال کنید، علاوه بر غیرفعال کردن آن، آن را نیز غیرفعال کنید usr.bin.lxc-start نمایه، باید اضافه کنید:
lxc.aa_profile = نامحدود
به فایل پیکربندی کانتینر.
LXC با چند سیاست جایگزین برای کانتینرها ارسال می شود. اگر میخواهید کانتینرها را در داخل کانتینرها اجرا کنید (تودرتو)، میتوانید با افزودن خط زیر به فایل پیکربندی کانتینر از نمایه lxc-container-default-with-nesting استفاده کنید.
lxc.aa_profile = lxc-container-default-with-nesting
اگر می خواهید از libvirt در داخل کانتینرها استفاده کنید، باید آن خط مشی را ویرایش کنید (که در /etc/ apparmor.d/lxc/lxc-default-with-nesting) با حذف کامنت خط زیر:
mount fstype=cgroup -> /sys/fs/cgroup/**،
و سیاست را دوباره بارگذاری کنید.
توجه داشته باشید که خط مشی تودرتو با کانتینرهای دارای امتیاز بسیار کمتر از خط مشی پیش فرض امن است، زیرا به کانتینرها اجازه می دهد دوباره سوار شوند. / sys و / پروسه در مکانهای غیراستاندارد، دور زدن محافظهای ظاهری.
کانتینرهای غیرمجاز این اشکال را ندارند زیرا ریشه کانتینر نمی تواند در root-posed بنویسد مجموعه مقالات
و سیستم فایل های.
نمایه دیگری که با lxc ارسال می شود به کانتینرها اجازه می دهد تا انواع سیستم فایل بلوکی مانند ext4 را نصب کنند. این می تواند در برخی موارد مانند تهیه maas مفید باشد، اما به طور کلی ناامن تلقی می شود زیرا کنترل کننده های superblock در هسته برای مدیریت ایمن ورودی های نامعتبر بررسی نشده اند.
اگر نیاز به اجرای یک کانتینر در یک نمایه سفارشی دارید، می توانید یک نمایه جدید در زیر ایجاد کنید /etc/apparmor.d/ lxc/. نام آن باید با شروع شود lxc- برای lxc-start اجازه انتقال به آن نمایه را داشته باشد. را lxc- پیش فرض نمایه شامل فایل انتزاعی قابل استفاده مجدد است /etc/apparmor.d/abstractions/lxc/container- base. بنابراین یک راه آسان برای شروع یک نمایه جدید این است که همین کار را انجام دهید، سپس مجوزهای اضافی را در پایین خط مشی خود اضافه کنید.
پس از ایجاد خط مشی، آن را با استفاده از:
sudo apparmor_parser -r /etc/apparmor.d/lxc-containers
نمایه به طور خودکار پس از راه اندازی مجدد بارگیری می شود، زیرا منبع آن فایل است /etc/apparmor.d/ lxc-containers. در نهایت برای ساخت ظرف CN از این جدید استفاده کنید lxc-CN-profile، خط زیر را به فایل پیکربندی آن اضافه کنید:
lxc.aa_profile = lxc-CN-profile