AA-GENPROF(8) AppArmor AA-GENPROF(8)

aa-genprof - ایجاد و تولید پروفایل جدید AppArmor برای برنامهها

aa-genprof <executable> [-d /path/to/profiles] [-f /path/to/logfile]

-d --dir /path/to/profiles

مشخص می‌کند مجموعه پروفایل‌های امنیتی AppArmor در کجا جستجو شوند.
پیش‌فرض /etc/apparmor.d است.

-f --file /path/to/logfile

مکان فایل گزارش (logfile) را مشخص می‌کند.
مکان‌های پیش‌فرض از /etc/apparmor/logprof.conf خوانده می‌شوند.
پیش‌فرض‌های معمول عبارتند از:
         /var/log/audit/audit.log
         /var/log/syslog
         /var/log/messages

هنگام اجرای aa-genprof، باید برنامه‌ای را برای ایجاد پروفایل مشخص کنید. اگر برنامه مشخص‌شده یک مسیر کامل نباشد، aa-genprof متغیر $PATH را برای یافتن برنامه جستجو خواهد کرد.

اگر پروفایلی برای این برنامه وجود نداشته باشد، aa-genprof با استفاده از aa-autodep(1) یک پروفایل ایجاد می‌کند.

سپس Genprof کارهای زیر را انجام می‌دهد:

- تنظیم پروفایل روی حالت شکایت (complain mode)
- ثبت یک علامت (نشانه) در گزارش سیستم
- هدایت کاربر به اجرای برنامه مورد نظر در پنجره‌ای دیگر و آزمودن عملکردهای آن

سپس دو گزینه به کاربر ارائه می‌دهد: (S)can برای پویش گزارش سیستم جهت یافتن ورودی‌های قابل افزودن به پروفایل و (F)inish برای پایان کار.

اگر کاربر گزینه (S)can را انتخاب کند یا کلید اینتر (Enter) را فشار دهد، aa-genprof گزارش‌های حالت شکایت را تحلیل کرده و از طریق aa-logprof(1) موارد نقض دسترسی ایجادشده را پیمایش می‌کند.

پس از اینکه کاربر انتخاب ورودی‌های پروفایل را بر اساس موارد نقض شناسایی‌شده در طول اجرای برنامه به پایان رساند، aa-genprof پروفایل‌های به‌روزرسانی‌شده را مجدداً در حالت شکایت بارگذاری کرده و دوباره گزینه‌های (S)can و (F)inish را به کاربر نمایش می‌دهد. این چرخه می‌تواند تا زمانی که تمامی عملکردهای برنامه بدون ایجاد موارد نقض دسترسی اجرا و آزموده شوند، تکرار شود.

هنگامی که کاربر در نهایت گزینه (F)inish را انتخاب کند، aa-genprof پروفایل اصلی و هر پروفایل دیگری را که تولید شده باشد، در حالت اعمال اجباری (enforce mode) قرار داده و خارج می‌شود.

اگر هرگونه اشکالی پیدا کردید، لطفاً آن را در نشانی زیر گزارش دهید: https://gitlab.com/apparmor/apparmor/-/issues

apparmor(7)، apparmor.d(5)، aa-enforce(1)، aa-complain(1)، aa-disable(1)، aa_change_hat(2)، aa-logprof(1)، logprof.conf(5) و https://wiki.apparmor.net

2026-03-10 AppArmor 4.1.7