| DOAS.CONF(5) | File Formats Manual | DOAS.CONF(5) |
نام (NAME)
doas.conf —
فایل
پیکربندی
doas
توضیحات (DESCRIPTION)
ابزار
doas(1)
دستورها را
با هویت
سایر
کاربران بر
اساس قواعد
تعریفشده
در فایل
پیکربندی
doas.conf اجرا
میکند.
قواعد دارای قالب زیر هستند:
permit|deny
[options] identity
[as target]
[cmd command
[args ...]]قواعد از بخشهای زیر تشکیل شدهاند:
permit|deny- عملیاتی که در صورت تطابق این قاعده باید انجام شود.
- options
- گزینهها
عبارتند از:
nopass- کاربر ملزم به وارد کردن گذرواژه نیست.
nolog- اجرای موفقیتآمیز دستور در syslogd(8) ثبت نشود.
persist- پس از آنکه کاربر با موفقیت احراز هویت شد، تا مدتی دوباره از او گذرواژه خواسته نشود.
keepenv- متغیرهای محیطی، غیر از موارد فهرستشده در doas(1) ، هنگام ایجاد محیط برای فرآیند جدید حفظ شوند.
setenv {[variable ...] [variable=value ...]}- متغیرهای
مشخصشده
را که با
فاصله از
هم جدا
شدهاند،
حفظ یا
تنظیم کند.
همچنین
میتوان
متغیرها
را با
پیشوند ‘-’
حذف کرد یا
با
استفاده
از ساختار
دوم
مقداردهی
نمود. اگر
نویسه
نخست value
برابر با
‘
$’ باشد، مقداری که تنظیم میشود از متغیر محیطیِ موجود با همین نام گرفته خواهد شد. این گزینه پس از ایجاد محیط پیشفرض پردازش میشود.
- identity
- نام کاربری مورد نظر برای تطابق. گروهها را میتوان با قرار دادن یک دونقطه (‘:’) در ابتدای نام مشخص کرد. شناسههای عددی نیز پذیرفته میشوند.
astarget- کاربر مقصدی که کاربر اجراکننده مجاز است دستور را با هویت او اجرا کند. حالت پیشفرض تمام کاربران است.
cmdcommand- دستوری که
کاربر مجاز
یا غیرمجاز
به اجرای آن
است. حالت
پیشفرض
تمام
دستورها
است. توجه
داشته
باشید که
بهتر است
مسیرهای
مطلق مشخص
شوند. اگر
یک مسیر
نسبی مشخص
شود، تنها
یک متغیر
PATHمحدود جستجو خواهد شد. args[argument ...]- آرگومانهای
دستور.
آرگومانهای
ارائهشده
برای دستور
توسط کاربر
باید با
موارد
مشخصشده
مطابقت
داشته
باشند.
کلیدواژه
argsبهتنهایی به این معناست که دستور باید بدون هیچ آرگومانی اجرا شود.
آخرین قاعده منطبق، اقدام انجامشده را تعیین میکند. اگر هیچ قاعدهای مطابقت نداشته باشد، اقدام رد (denied) میشود.
توضیحات (کامنتها) را میتوان با استفاده از علامت هش (‘#’) در هر کجای فایل قرار داد، و تا انتهای خط جاری امتداد مییابند.
قواعد نقلقول زیر اعمال میشوند:
- متن میان یک جفت علامت نقلقول دوتایی (‘"’) دقیقاً همانگونه که هست در نظر گرفته میشود.
- نویسه اسلش وارونه (بکاسلش) (‘\’) نویسه بعدی، از جمله نویسههای خط جدید را در خارج از توضیحات اسکیپ میکند؛ در نتیجه، توضیحات نمیتوانند در چندین خط امتداد یابند.
- اگر در یک کلمه از نقلقول یا بکاسلش استفاده شود، آن کلمه به عنوان کلیدواژه در نظر گرفته نمیشود.
فایلها (FILES)
- /etc/doas.conf
- فایل پیکربندی doas(1).
- /etc/examples/doas.conf
- نمونه فایل پیکربندی.
مثالها (EXAMPLES)
مثال زیر
به کاربر aja
اجازه
میدهد
بستهها را
از یک مخزن
آینهای
ترجیحی نصب
کند؛ به
گروه wheel
اجازه
میدهد
دستورها را
با هویت هر
کاربری
اجرا کند و
در عین حال
متغیرهای
محیطی PS1
و SSH_AUTH_SOCK را
حفظ کرده و
متغیر ENV
را حذف کند؛
به tedu اجازه
میدهد procmap را
بدون
گذرواژه با
دسترسی
ریشه (root) اجرا
کند؛ و
همچنین به root
اجازه
میدهد
دستورهای
نامحدود را
با هویت
خودش اجرا
کند در حالی
که متغیر
اصلی PATH را
حفظ
مینماید.
permit persist setenv { PKG_CACHE PKG_PATH } aja cmd pkg_add
permit setenv { -ENV PS1=$DOAS_PS1 SSH_AUTH_SOCK } :wheel
permit nopass tedu as root cmd /usr/sbin/procmap
permit nopass keepenv setenv { PATH } root as root
همچنین ببینید (SEE ALSO)
تاریخچه (HISTORY)
فایل
پیکربندی
doas.conf
نخستین بار
در OpenBSD 5.8
ظاهر شد.
نویسندگان (AUTHORS)
Ted Unangst <tedu@openbsd.org>
| October 9, 2020 | Linux 6.12.107+deb13-amd64 |