آشنایی با doas در OpenBSD

زمینه

جایگزین عاملها به sudoاست doas، اگر چه آن همان راه به عنوان دستور کار نمی کند و نیاز به تنظیمات. این مخفف "مخفف برنامه openbsd اختصاصی" است. OpenBSD 5.8 ، که در سال 2015 منتشر شد ، اولین نفری بود که شامل آن شد doas. پس از نارضایتی از پیچیدگی sudo و تدوین مشکلات پیش فرض sudo توسط Ted Unangst ایجاد شد.

این doasفرمان با طراحی ساده است و شامل ویژگی های پیشرفته ای نیست که برای زیرساخت های دقیق sysadmin مورد نیاز است. برای بیشتر افراد ، این بیش از حد کافی است. در صورت نیاز sudoآن را با pkg_add sudoریشه نصب کنید .

نصب و راه اندازی

OpenBSD نسخه 5.8 و بعد از آن از doasقبل نصب شده است.

پیکربندی

برای دسترسی به کاربران گروه چرخdoas ، موارد زیر را اضافه کنید /etc/doas.conf. برای ویرایش این پرونده به دسترسی root نیاز دارید.

permit :wheel

با این کار به همه کاربران گروه چرخ اجازه اجرای دستورات مانند هر کاربر را می دهد.

اگر دوست دارید کاربران بتوانند یک بار پسورد خود را وارد کنند ، پس مجبور نیستید برای مدتی وارد آن شوید ، از این persistگزینه استفاده کنید. در اینجا مثالی وجود دارد که فقط به گروه چرخ اجازه می دهد:

permit persist :wheel

در nopassصورت تمایل که آنها هرگز مجبور به وارد کردن رمز عبور خود نباشید ، می توانید از این گزینه استفاده کنید:

permit nopass :wheel

اگر دوست دارید کاربر "mynewuser" از حق مدیر برخوردار باشد ، می توانید با اجرای usermod -G wheel mynewuserroot یا آنها را به گروه چرخ اضافه کرده یا خطی را /etc/doas.confبه آن اضافه کنید ، بنابراین به نظر می رسد تا حدودی به شرح زیر است:

permit nopass :wheel
permit nopass mynewuser

این مثال فرض می کند که برای استفاده از رمز عبور هنگام استفاده ، نیازی به کاربران ندارید doas. اگر می خواهید آنرا تنظیم کنید که mynewuser فقط مجاز به اجرای دستورات به عنوان کاربر www باشد ، پیکربندی به شرح زیر است:

permit nopass :wheel
permit nopass mynewuser as www

اگر دوست دارید mynewuser بتواند فقط از دستور "vim" با doas استفاده کند ، از پیکربندی زیر استفاده کنید:

permit nopass :wheel
permit nopass mynewuser as www cmd vim

گزینه های پیکربندی دیگری نیز وجود دارد ، اما موارد رایج در اینجا رایج ترین هستند. در صورت تمایل به خواندن اطلاعات بیشتر ، می توانید از این دستور man doas.confبرای خواندن صفحه doas.conf (5) استفاده کنید.

آزمایش فایلهای پیکربندی

برای آزمایش یک فایل پیکربندی ، از doas -C /etc/doas.confدستور استفاده کنید . اگر فرمان را بعداً تهیه کنید ، به عنوان مثال doas -C /etc/doas.conf vim، به شما می گوید که آیا اجازه اجرای دستور را دارید یا نه بدون تلاش برای اجرای دستور.

طریقه استفاده

کاربر می تواند echo "test"با استفاده از دستور ، دستور را به عنوان root اجرا کند : doas echo "test"

کاربری که مجبور به استفاده از doas برای بالا بردن خود به کاربر "www" است ، ممکن است با استفاده از دستور ، دستور را vim /var/www/http/index.htmlبه عنوان کاربر "www" اجرا کند: doas -u www vim index.html این برای کسی که مدیر وب سرور را مدیریت می کند ، اما دارای مجوزهای کامل superuser نیست ، بسیار مفید است.

بهترین روشها

اکیداً توصیه می شود به جای انکار در صورت امکان از مجوز استفاده کنید. اگر کاربر را از استفاده از یک دستور خاص انکار کنید ، ممکن است در صورت وجود بتواند با استفاده از یک مسیر متناوب یا نام آن فرمان از بین برود. آنها همچنین می توانند عملکرد فرمان را در فهرست خانه خود کپی کرده و سپس آن را اجرا کنند ، در نتیجه سیستم مجوزهای شما را خراب می کنند.

به طور کلی ، بهتر است از doas استفاده کنید تا از su استفاده کنید زیرا هیچ کس مجبور نیست رمز عبور اصلی را به اشتراک بگذارد. اگر کسی از رمز عبور خود برای دسترسی root استفاده کند هیچ فرصتی برای تغییر آن وجود ندارد ، آن را فراموش کرده و همه را از سیستم قفل می کند. سیاهههای مربوط در داخل نگه داشته می شوند /var/log/secure.

نکات و ترفندها

می توانید متغیرهای محیط خود را با Keepenv نگه دارید ، که اگر ویرایشگر خود را روی چیزی تنظیم کرده اید مفید است و نمی خواهید وقتی کاربر دیگری شوید ، آن را تغییر دهد. در اینجا مثالی با mynewuser آورده شده است:

permit nopass keepenv mynewuser

بعضی مواقع موقعیت هایی وجود دارد که نوشتن هر متغیر محیط می تواند مواردی را از بین ببرد ، اما با استفاده از setenv ، می توانید انتخاب کنید که کدام یک را حمل کنید. در اینجا مثالی وجود دارد که ویرایشگر شما را برای استفاده از git و سایر موارد تنظیم می کند.

permit nopass setenv { VISUAL EDITOR } mynewuser

همچنین می توانید از setenv برای حذف متغیرهای محیط استفاده کنید (با قرار دادن خط ترد قبل از هر یک که می خواهید حذف کنید) یا با علامت برابر آنها را روی موارد خاص قرار دهید. به عنوان مثال ، اگر می خواستید متغیر محیط VISUAL را حذف کرده و EDITOR را vim تنظیم کنید ، از این خط پیکربندی استفاده می کنید:

permit nopass setenv { -VISUAL EDITOR=vim } mynewuser

اگر doasگذرواژه خود را به خاطر آورده اید ، می توانید doas -Lبرای فراموش کردن رمز عبور اقدام کنید.



Leave a Comment

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

از rezv.conf از DHCP در FreeBSD 10 محافظت کنید

از rezv.conf از DHCP در FreeBSD 10 محافظت کنید

اگر رأی دهنده خود را اجرا می کنید ، یا مایل به استفاده از یک ارائه دهنده شخص ثالث هستید ، ممکن است متوجه شوید که پرونده /etc/resolv.conf شما توسط DHCP رونویسی می شود

نحوه نصب X-Cart 5 در FreeBSD 12

نحوه نصب X-Cart 5 در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ X-Cart یک پلتفرم تجارت الکترونیک با منبع آزاد بسیار انعطاف پذیر است که دارای چندین ویژگی و ادغام است. کد منبع X-Cart میزبان است

WordPress را در OpenBSD 6.2 نصب کنید

WordPress را در OpenBSD 6.2 نصب کنید

مقدمه WordPress سیستم مدیریت محتوای غالب در اینترنت است. این قدرت همه چیز را از بلاگ ها گرفته تا وب سایت های پیچیده و دارای محتوای پویا انجام می دهد

OpenBSD به عنوان یک راه حل تجارت الکترونیکی با PrestaShop و Apache

OpenBSD به عنوان یک راه حل تجارت الکترونیکی با PrestaShop و Apache

مقدمه این آموزش OpenBSD را به عنوان یک راه حل تجارت الکترونیکی با استفاده از PrestaShop و Apache نشان می دهد. Apache لازم است زیرا PrestaShop دارای UR پیچیده است

نحوه نصب Anchor CMS در FreeBSD 11 FAMP VPS

نحوه نصب Anchor CMS در FreeBSD 11 FAMP VPS

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

نحوه نصب Tiny Tiny RSS Reader در FreeBSD 11 FAMP VPS

نحوه نصب Tiny Tiny RSS Reader در FreeBSD 11 FAMP VPS

با استفاده از یک سیستم متفاوت؟ Tiny Tiny RSS Reader خواننده و جمع کننده منبع خبری وب مبتنی بر منبع آزاد (RSS / Atom) رایگان و منبع باز است که به منظور پخش

نحوه نصب WonderCMS در FreeBSD 12

نحوه نصب WonderCMS در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ WonderCMS یک فایل CMS با منبع آزاد ، سریع و کوچک است که به زبان PHP نوشته شده است. کد منبع WonderCMS در Github میزبانی شده است. این راهنما است

نحوه نصب Pagekit 1.0 CMS در FreeBSD 11 FAMP VPS

نحوه نصب Pagekit 1.0 CMS در FreeBSD 11 FAMP VPS

با استفاده از یک سیستم متفاوت؟ Pagekit 1.0 CMS یک سیستم زیبا و مدولار زیبا ، مدولار ، قابل تمدید و سبک ، آزاد و منبع باز منبع آزاد (CMS) با

نحوه فعال سازی TLS 1.3 در Apache در FreeBSD 12

نحوه فعال سازی TLS 1.3 در Apache در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ TLS 1.3 نسخه ای از پروتکل Transport Layer Security (TLS) است که در سال 2018 به عنوان یک استاندارد پیشنهادی در RFC 8446 منتشر شد

iRedMail را در FreeBSD 10 تنظیم کنید

iRedMail را در FreeBSD 10 تنظیم کنید

در این آموزش نحوه نصب گروهی iRedMail بر روی نصب جدید FreeBSD به شما نشان داده می شود. شما باید از سرورهایی با حداقل یک گیگابایت o استفاده کنید

نحوه نصب Dolibarr در FreeBSD 12

نحوه نصب Dolibarr در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ Dolibarr یک برنامه ریزی منبع باز شرکت (ERP) و مدیریت ارتباط با مشتری (CRM) برای مشاغل است. دلیبار

نحوه نصب Paste 2.1 در FreeBSD 11 FAMP VPS

نحوه نصب Paste 2.1 در FreeBSD 11 FAMP VPS

با استفاده از یک سیستم متفاوت؟ Paste 2.1 یک برنامه pastebin ساده و انعطاف پذیر ، رایگان و منبع باز برای ذخیره کد ، متن و موارد دیگر است. این ابتکار عمل بود

Swap File را در FreeBSD 10 ایجاد کنید

Swap File را در FreeBSD 10 ایجاد کنید

خارج از جعبه ، سرورهای Vultr FreeBSD به گونه ای تنظیم نشده اند که فضای swap را در خود جای دهند. اگر قصد شما برای یک نمونه ابر یکبار مصرف است ، احتمالاً شما اصلاً نیکوکار نیستید

MariaDB را در OpenBSD 6 پیکربندی کنید

MariaDB را در OpenBSD 6 پیکربندی کنید

در این مقاله ، Ill به شما نشان می دهد که چگونه MariaDB را در OpenBSD 6 نصب کنید و پیکربندی کنید تا در دسترس یک وب سرور قرار گرفته (Apache یا Nginx) باشد. شما als

نحوه نصب پشته Apache ، MySQL و PHP (FAMP) در FreeBSD 12.0

نحوه نصب پشته Apache ، MySQL و PHP (FAMP) در FreeBSD 12.0

مقدمه یک پشته FAMP ، که قابل مقایسه با یک پشته LAMP در لینوکس است ، مجموعه ای از نرم افزارهای منبع باز است که به طور معمول در کنار هم نصب می شود.

نحوه نصب DokuWiki در FreeBSD 12

نحوه نصب DokuWiki در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ DokuWiki یک برنامه ویکی منبع باز است که به زبان پی اچ پی نوشته شده است و به پایگاه داده نیاز ندارد. این داده ها را در پرونده های متنی ذخیره می کند. DokuWik

راه اندازی بستر نشر حرفه ای Ghost در OpenBSD 6

راه اندازی بستر نشر حرفه ای Ghost در OpenBSD 6

Ghost جدیدترین و بزرگترین راهپیمایی وردپرس برای رقیب است. توسعه موضوع سریع و آسان برای یادگیری است زیرا توسعه دهندگان Ghost تصمیم گرفتند از هر دو استفاده کنند

نحوه نصب آلبوم عکس Lychee 3.1 در یک FAMP VPS FreeBSD 11

نحوه نصب آلبوم عکس Lychee 3.1 در یک FAMP VPS FreeBSD 11

با استفاده از یک سیستم متفاوت؟ Lychee 3.1 Photo Album ابزاری ساده و انعطاف پذیر ، رایگان و منبع باز منبع آزاد است که روی یک سرور VPS اجرا می شود. نصب می کند

تغییر اندازه استخر ZFS Storage در FreeBSD / TrueOS

تغییر اندازه استخر ZFS Storage در FreeBSD / TrueOS

هنگام به روزرسانی نمونه VPS در Vultr ، یک سیستم پرونده لینوکس به صورت خودکار تغییر اندازه می یابد. هنگام اجرای FreeBSD با سیستم پرونده پیشرفته ZFS ، برخی از کتابچه های راهنمای کاربر را نگران می کنید

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد