DEHYDRATED(1) General Commands Manual DEHYDRATED(1)

dehydrated - کلاینت ACME پیاده‌سازی‌شده به صورت اسکریپت شل

dehydrated [دستور [آرگومان]] [آرگومان [آرگومان]] ...

کلاینتی برای مراجع صدور گواهی (CA) مبتنی بر پروتکل ACME، مانند LetsEncrypt. از این برنامه می‌توان برای درخواست و دریافت گواهی‌های TLS از مراجع صدور گواهی مبتنی بر ACME استفاده کرد.

پیش از اینکه بتوان هرگونه گواهی را درخواست کرد، Dehydrated باید یک حساب کاربری نزد مرجع صدور گواهی ایجاد کند. به صورت اختیاری، می‌توان یک نشانی ایمیل ارائه داد. این نشانی به عنوان مثال برای اطلاع‌رسانی درباره گواهی‌های در حال انقضا استفاده خواهد شد. معمولاً لازم است شرایط استفاده از خدمات CA را بپذیرید. اگر هیچ حسابی پیکربندی نشده باشد، Dehydrated اطلاع خواهد داد. برنامه را با --register --accept-terms برای ساخت حساب جدید اجرا کنید.

سپس، تمام نام‌های دامنه باید در فایل domains.txt قرار گیرند. قالب این فایل خط‌محور است: اگر فایل شامل دو خط "example.com" و "example.net" باشد، dehydrated دو گواهی درخواست می‌کند، یکی برای "example.com" و دیگری برای "example.net". یک خط منفرد حاوی "example.com example.net" یک گواهی واحد معتبر برای هر دو دامنه "example.net" و "example.com" از طریق فیلد Subject Alternative Name (SAN) درخواست خواهد کرد.

برای مرحله بعد، باید یکی از روش‌های تایید مالکیت دامنه پیکربندی شود. Dehydrated از اعتبارسنجی http-01 و dns-01 پشتیبانی می‌کند.

اعتبارسنجی http-01 با ارائه یک توکن چالش (challenge token)، اثبات مالکیت را فراهم می‌کند. برای انجام این کار، دایرکتوری ارجاع‌شده در متغیر پیکربندی WELLKNOWN باید در مسیر http://{domain}/.well-known/acme-challenge در دسترس قرار گیرد، که در آن {domain} نام هر دامنه‌ای است که در domains.txt مشخص شده است. Dehydrated پاسخ‌دهنده چالش اختصاصی خود را ندارد، بلکه برای ارائه پاسخ چالش به وب‌سرور موجود متکی است. برای نمونه‌های پیکربندی وب‌سرورهای پرکاربرد، به wellknown.md مراجعه کنید.

اعتبارسنجی dns-01 با ارائه توکن چالش از طریق DNS کار می‌کند. این روش به ویژه برای میزبان‌هایی جالب است که نمی‌توانند در معرض اینترنت عمومی قرار گیرند. از آنجا که افزودن رکوردها به زون‌های DNS اغلب به نرم‌افزار یا ارائه‌دهنده DNS مربوطه بسیار وابسته است، قلاب‌ها (hooks) شخص ثالث متعددی برای dehydrated موجود است. برای مشاهده هوک‌های مربوط به سرورها و ارائه‌دهندگان میزبانی محبوب DNS، به dns-verification.md مراجعه کنید.

در نهایت، گواهی‌ها باید به طور منظم درخواست و به‌روزرسانی شوند. این کار می‌تواند از طریق یک cron job یا تایمر انجام شود. در ابتدا، می‌توانید با اجرای دستی dehydrated -c این کار را اعمال کنید.

پس از اجرای موفقیت‌آمیز، گواهی‌ها در مسیر /etc/dehydrated/certs/{domain} ذخیره می‌شوند، که در آن {domain} نام دامنه در ستون اول domains.txt است.

دستورات

چاپ اطلاعات نسخه
ثبت کلید حساب
به‌روزرسانی اطلاعات تماس حساب
امضا/تمدید گواهی‌های ناموجود/تغییریافته/در حال انقضا.
امضای یک CSR مشخص، چاپ CRT در خروجی استاندارد (stdout) (استفاده پیشرفته)
ابطال گواهی مشخص‌شده
انتقال فایل‌های گواهی بلااستفاده به دایرکتوری آرشیو
نمایش متن راهنما
نمایش متغیرهای پیکربندی برای استفاده در اسکریپت‌های دیگر

پارامترها

پذیرش شرایط خدمات CA
چاپ زنجیره کامل هنگام استفاده از --signcsr
فقط تحلیل نام‌ها به نشانی‌های IPv4
فقط تحلیل نام‌ها به نشانی‌های IPv6
استفاده از نام (یا نام‌های) دامنه مشخص‌شده به جای محتوای domains.txt (یک گواهی واحد!)
ادامه کار پس از مواجهه با خطا هنگام ساخت/تمدید چندین گواهی در حالت cron
اجبار به تمدید گواهی حتی اگر در بازه RENEW_DAYS منقضی نشود
عدم استفاده از فایل قفل (lockfile) (احتمالاً خطرناک است!)
افزودن پسوند رشته‌ای به نام فایل قفل (مفید برای استفاده همراه با -d)
تنظیم گزینه‌ای در CSR که مشخص می‌کند OCSP stapling اجباری است
استفاده از کلید خصوصی مشخص‌شده به جای کلید حساب (مفید برای ابطال)
استفاده از فایل پیکربندی مشخص‌شده
استفاده از اسکریپت مشخص‌شده برای هوک‌ها
خروجی گواهی‌ها در دایرکتوری مشخص‌شده
کدام نوع چالش استفاده شود؟ در حال حاضر http-01 و dns-01 پشتیبانی می‌شوند
کدام الگوریتم کلید عمومی استفاده شود؟ مقادیر پشتیبانی‌شده: rsa، prime256v1 و secp384r1

در صورتی که همه چیز درست باشد برنامه با کد ۰ و در صورت بروز خطا با کد ۱ خارج می‌شود.

لطفاً هرگونه اشکالی را که مشاهده می‌کنید در وب‌سایت پروژه گزارش دهید: https://github.com/dehydrated-io/dehydrated/issues.

Dehydrated توسط Lukas Schauer نوشته شده است. این صفحه راهنما توسط Daniel Molkentin نگاشته شده است.

حق نشر 2015-2018 متعلق به Lukas Schauer و مشارکت‌کنندگان مربوطه است. تحت مجوز MIT ارائه شده است. برای اطلاعات مجوز به فایل LICENSE همراه بسته مراجعه کنید.

مستندات کامل به همراه نمونه‌های پیکربندی در دایرکتوری docs توزیع یا در نشانی زیر ارائه شده است: https://github.com/dehydrated-io/dehydrated/tree/master/docs.

2018-01-13 Dehydrated ACME Client