| CERTBOT(1) | Certbot | CERTBOT(1) |
نام (NAME)
certbot - پیکربندی خودکار HTTPS با استفاده از Let's Encrypt
خلاصه دستور (SYNOPSIS)
هدف Certbot، Let's Encrypt، و پروتکل ACME (محیط مدیریت خودکار گواهی یا Automated Certificate Management Environment) ممکن ساختن راهاندازی یک سرور HTTPS و دریافت خودکار گواهی مورد اعتماد مرورگر توسط آن، بدون هرگونه دخالت انسانی است. این کار با اجرای یک عامل مدیریت گواهی بر روی وبسرور انجام میشود.
این عامل برای موارد زیر به کار میرود:
- اثبات خودکار کنترل شما بر وبگاه به مرجع صدور گواهی (CA) Let's Encrypt
- دریافت یک گواهی مورد اعتماد مرورگر و برپایی آن بر روی وبسرور شما
- پیگیری زمان انقضای گواهی شما و تمدید آن
- کمک به شما برای ابطال گواهی در صورتی که نیاز به این کار باشد.
گزینهها (OPTIONS)
usage:
certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...
Certbot میتواند گواهیهای HTTPS/TLS/SSL را دریافت و نصب کند. بهطور پیشفرض،
تلاش خواهد کرد از یک وبسرور هم برای دریافت و هم برای نصب گواهی استفاده کند.
رایجترین SUBCOMMANDها و پرچمها عبارتاند از:
دریافت، نصب و تمدید گواهیها (obtain, install, and renew certificates):
(default) run دریافت و نصب گواهی در وبسرور فعلی شما
certonly دریافت یا تمدید گواهی، بدون نصب آن
renew تمدید تمام گواهیهای قبلاً دریافتشده که نزدیک به انقضا هستند
enhance افزودن بهبودهای امنیتی به پیکربندی موجود شما
-d DOMAINS فهرست جداشده با کاما از دامنهها برای دریافت گواهی
--apache استفاده از افزونه Apache برای احراز هویت و نصب
--standalone اجرای یک وبسرور مستقل برای احراز هویت
--nginx استفاده از افزونه Nginx برای احراز هویت و نصب
--webroot قرار دادن پروندهها در پوشه webroot سرور برای احراز هویت
--manual دریافت گواهیها بهصورت تعاملی، یا با قلابهای اسکریپت شل
-n اجرا بهصورت غیرتعاملی
--test-cert دریافت یک گواهی آزمایشی از یک سرور مرحلهای (staging)
--dry-run آزمایش "renew" یا "certonly" بدون ذخیره گواهی روی دیسک
مدیریت گواهیها (manage certificates):
certificates نمایش اطلاعات درباره گواهیهای دریافتی شما از Certbot
revoke ابطال یک گواهی (تعیین --cert-name یا --cert-path)
delete حذف یک گواهی (تعیین --cert-name)
reconfigure بهروزرسانی پیکربندی یک گواهی (تعیین --cert-name)
مدیریت حساب کاربری (manage your account):
register ایجاد یک حساب ACME
unregister غیرفعالسازی یک حساب ACME
update_account بهروزرسانی یک حساب ACME
show_account نمایش جزئیات حساب
--agree-tos پذیرش توافقنامه مشترک (Subscriber Agreement) سرور ACME
-m EMAIL نشانی ایمیل برای اعلانهای مهم حساب کاربری
گزینهها (options):
-h, --help نمایش این پیام راهنما و خروج
-c CONFIG_FILE, --config CONFIG_FILE
مسیر پرونده پیکربندی (پیشفرض: etc/letsencrypt/cli.ini/
و ~/.config/letsencrypt/cli.ini)
-v, --verbose این پرچم میتواند چندین بار برای افزایش تدریجی
میزان جزئیات خروجی به کار رود، مانند -vvv (پیشفرض: 0)
--max-log-backups MAX_LOG_BACKUPS
حداکثر تعداد لاگهای پشتیبان که باید توسط سازوکار چرخش
لاگ داخلی Certbot نگهداری شود را مشخص میکند. تنظیم این
پرچم روی 0 چرخش لاگ را کاملاً غیرفعال کرده و سبب میشود
Certbot همواره به همان پرونده لاگ بیفزاید. (پیشفرض: 1000)
-n, --non-interactive, --noninteractive
اجرا بدون هرگونه درخواست ورودی از کاربر. ممکن است نیازمند
پرچمهای بیشتری در خط فرمان باشد؛ کلاینت تلاش خواهد کرد در
صورت نبود هر مورد، پرچم لازم را توضیح دهد (پیشفرض: False)
--force-interactive اجبار Certbot به تعاملی بودن حتی اگر تشخیص دهد که در یک
ترمینال اجرا نمیشود. این پرچم نمیتواند با زیرفرمان renew
استفاده شود. (پیشفرض: False)
-d DOMAIN, --domains DOMAIN, --domain DOMAIN
نامهای دامنه برای گنجاندن. برای چندین دامنه میتوانید از
چندین پرچم -d استفاده کرده یا فهرستی جداشده با کاما از دامنهها
را به عنوان پارامتر وارد کنید. تمام دامنهها به عنوان
Subject Alternative Names در گواهی گنجانده خواهند شد.
اولین دامنه به عنوان نام گواهی استفاده خواهد شد، مگر اینکه به
گونه دیگری تعیین شود یا از قبل گواهی با همین نام داشته باشید.
در صورت تداخل نام، عددی مانند -0001 به انتهای نام گواهی افزوده
خواهد شد. (پیشفرض: Ask)
--ip-address IP_ADDRESSES
نشانیهای IP برای گنجاندن. برای چندین نشانی IP میتوانید از
چندین پرچم --ip-address استفاده کنید. تمام نشانیهای IP
به عنوان Subject Alternative Names در گواهی گنجانده خواهند
شد. (پیشفرض: [])
--eab-kid EAB_KID شناسه کلید برای External Account Binding (پیشفرض: None)
--eab-hmac-key EAB_HMAC_KEY
کلید HMAC برای External Account Binding (پیشفرض: None)
--eab-hmac-alg EAB_HMAC_ALG
الگوریتم HMAC برای External Account Binding (پیشفرض: HS256)
--cert-name CERTNAME نام گواهی برای اعمال. این نام توسط Certbot برای امور داخلی
و در مسیر پروندهها استفاده میشود؛ بر محتوای خود گواهی تأثیری
ندارد. نام گواهی نمیتواند شامل جداکنندههای مسیر فایل باشد
(یعنی '/' یا '\' بسته به بستر سیستمعامل). برای مشاهده
نامهای گواهی، دستور 'certbot certificates' را اجرا کنید.
هنگام ایجاد یک گواهی جدید، نام گواهی جدید را مشخص میکند.
(پیشفرض: اولین دامنه ارائهشده یا نام یک گواهی موجود روی سامانه
شما برای همان دامنهها)
--dry-run انجام اجرای آزمایشی در برابر سرور مرحلهای (staging)
Let's Encrypt، دریافت گواهیهای آزمایشی (نامعتبر) بدون
ذخیره آنها روی دیسک. این گزینه فقط با زیرفرمانهای 'certonly'
و 'renew' قابل استفاده است. ممکن است برای تغییر موقت و
بازگردانی پروندههای پیکربندی، بارگذاری مجدد وبسرور را رقم بزند.
دستورهای --pre-hook و --post-hook به صورت پیشفرض اجرا میشوند.
دستورهای --deploy-hook اجرا نمیشوند مگر اینکه با
--run-deploy-hooks فعال شوند. سرور آزمایشی را میتوان با
--server بازنویسی کرد. (پیشفرض: False)
--debug-challenges پس از برپایی چالشها، پیش از ارسال به CA منتظر ورودی کاربر
بماند. هنگام استفاده در ترکیب با گزینه `-v`، نشانیهای اینترنتی
یا FQDNهای چالش و مقادیر بازگشتی مورد انتظار آنها نمایش داده میشوند.
(پیشفرض: False)
--required-profile REQUIRED_PROFILE
درخواست نام نمایه (profile) مشخصشده از سرور ACME. اگر سرور ACME
خطایی برگرداند، صدور (یا تمدید) با شکست مواجه خواهد شد. برای
پایداری درازمدت، تنظیم preferred_profile ممکن است ترجیح داده شود
زیرا اجازه بازگشت به حالت پیشفرض را میدهد. زمانی از این تنظیم
استفاده کنید که شکست در تمدید به بازگشت ترجیح داشته باشد. (پیشفرض: None)
--preferred-profile PREFERRED_PROFILE
درخواست نام نمایه مشخصشده از سرور ACME، یا بازگشت به حالت پیشفرض.
اگر نام نمایه دادهشده در فهرست راهنمای ACME موجود باشد، از آن برای
درخواست گواهی استفاده کنید. در غیر این صورت، به درخواست گواهی بدون
نمایه بازگردید (که یعنی CA از نمایه پیشفرض خود استفاده خواهد کرد).
این امکان تمدید موفقیتآمیز را حتی در صورتی که CA یک نمایه معین را
منسوخ و حذف کند فراهم میآورد. (پیشفرض: None)
--preferred-chain PREFERRED_CHAIN
تنظیم زنجیره گواهی ارجح. اگر CA چندین زنجیره گواهی ارائه دهد،
زنجیرهای ترجیح داده میشود که بالاترین گواهی آن از این Subject Common Name
صادر شده باشد. در صورت عدم تطابق، از زنجیره پیشفرض ارائهشده استفاده
خواهد شد. (پیشفرض: None)
--preferred-challenges PREF_CHALLS
فهرست مرتبشده و جداشده با کاما از چالشهای ارجح برای استفاده در طول
اعتبارسنجی که ارجحترین چالش در ابتدا ذکر شده است (مانند "dns" یا
"http,dns"). همه افزونهها از همه چالشها پشتیبانی نمیکنند.
برای جزئیات به https://certbot.eff.org/docs/using.html#plugins مراجعه کنید.
چالشهای ACME دارای نسخه هستند، اما اگر به جای "http-01" گزینه
"http" را برگزینید، Certbot به طور خودکار جدیدترین نسخه را انتخاب
خواهد کرد. (پیشفرض: [])
--issuance-timeout ISSUANCE_TIMEOUT
این گزینه مدت زمانی را (به ثانیه) که Certbot برای صدور گواهی توسط سرور
منتظر خواهد ماند مشخص میکند. (پیشفرض: 90)
--user-agent USER_AGENT
تنظیم یک رشته اختصاصی عامل کاربر (user agent) برای کلاینت. رشتههای
عامل کاربر به CA اجازه میدهند تا آمار سطح بالایی درباره نرخهای موفقیت
بر اساس سیستمعامل، افزونه و مورد استفاده جمعآوری کند و بداند چه زمانی
باید پشتیبانی از نسخهها و پرچمهای پیشین پایتون را منسوخ سازد. اگر
میخواهید این اطلاعات را از سرور Let's Encrypt مخفی کنید، این را روی
"" تنظیم نمایید. (پیشفرض:
CertbotACMEClient/5.7.0 (certbot; OS_NAME OS_VERSION)
Authenticator/XXX Installer/YYY (SUBCOMMAND; flags: FLAGS)
Py/major.minor.patchlevel).
پرچمهای کدگذاریشده در عامل کاربر عبارتاند از: --duplicate،
--force-renew، --allow-subset-of-names، -n، و اینکه آیا
هرگونه قلابی تنظیم شده است یا خیر.
--user-agent-comment USER_AGENT_COMMENT
افزودن یک یادداشت به رشته پیشفرض عامل کاربر. میتواند هنگام بستهبندی
مجدد Certbot یا فراخوانی آن از ابزاری دیگر برای جمعآوری دادههای آماری
بیشتر به کار رود. اگر --user-agent تنظیم شده باشد نادیده گرفته میشود.
(مثال: Foo-Wrapper/1.0) (پیشفرض: None)
خودکارسازی (automation):
پرچمهایی برای خودکارسازی اجرا و سایر تنظیمات
--keep-until-expiring, --keep, --reinstall
اگر گواهی درخواستشده با یک گواهی موجود تطابق داشته باشد، همواره گواهی
موجود را تا زمان فرارسیدن موعد تمدید نگه دارد (برای زیرفرمان 'run'
این به معنی نصب مجدد گواهی موجود است). (پیشفرض: Ask)
--expand اگر یک گواهی موجود زیرمجموعه دقیقی از نامهای درخواستی باشد، همواره
آن را گسترش داده و با نامهای اضافی جایگزین کند. (پیشفرض: Ask)
--version نمایش شماره نسخه برنامه و خروج
--force-renewal, --renew-by-default
اگر گواهی از قبل برای دامنههای درخواستی وجود داشته باشد، اکنون آن را
تمدید کند، فارغ از اینکه نزدیک به تاریخ انقضا باشد یا خیر. (اغلب
--keep-until-expiring مناسبتر است). همچنین به معنی --expand
نیز میباشد. (پیشفرض: False)
--renew-with-new-domains
اگر گواهی از قبل برای نام گواهی درخواستی وجود داشته باشد اما با دامنههای
درخواستی مطابقت نداشته باشد، اکنون آن را تمدید کند، بدون توجه به اینکه
نزدیک به تاریخ انقضا باشد یا خیر. (پیشفرض: False)
--reuse-key هنگام تمدید، از همان کلید خصوصی گواهی موجود استفاده کند. (پیشفرض: False)
--no-reuse-key هنگام تمدید، از همان کلید خصوصی گواهی موجود استفاده نکند. استفاده
نکردن مجدد از کلیدهای خصوصی رفتار پیشفرض Certbot است. از این گزینه میتوان
برای لغو اثر --reuse-key روی گواهی موجود استفاده کرد. (پیشفرض: False)
--new-key هنگام تمدید یا تعویض گواهی، یک کلید خصوصی جدید تولید کند، حتی اگر
--reuse-key روی گواهی موجود تنظیم شده باشد. ترکیب --new-key و
--reuse-key سبب میشود کلید خصوصی تعویض شده و سپس در تمدیدهای آتی
مجدداً استفاده شود. (پیشفرض: False)
--allow-subset-of-names
هنگام اعتبارسنجی دامنه، در صورتی که نتوان برای زیرمجموعه دقیقی از
دامنههای درخواستی مجوز گرفت، آن را شکست به حساب نیاورد. این گزینه
ممکن است برای تمدید موفق چندین دامنه مفید باشد، حتی اگر برخی دامنهها
دیگر به این سیستم اشاره نکنند. این گزینه نمیتواند با --csr به کار رود.
(پیشفرض: False)
--agree-tos پذیرش توافقنامه مشترک ACME (پیشفرض: Ask)
--duplicate اجازه ایجاد تبار گواهی که نمونه مشابه یک گواهی موجود را میسازد
(هر دو میتوانند به صورت موازی تمدید شوند) (پیشفرض: False)
-q, --quiet بیصدا کردن تمامی خروجیها به جز خطاها. سودمند برای خودکارسازی
از طریق cron. مستلزم --non-interactive است. (پیشفرض: False)
امنیت (security):
پارامترهای امنیتی و تنظیمات سرور
--rsa-key-size N اندازه کلید RSA. (پیشفرض: 2048)
--key-type {rsa,ecdsa}
نوع کلید خصوصی تولیدشده. در حال حاضر در هر فراخوانی تنها
*یک* مورد میتواند ارائه شود. (پیشفرض: ecdsa)
--elliptic-curve N نام منحنی بیضوی SECG برای استفاده. لطفاً برای مقادیر پشتیبانیشده
به RFC 8446 مراجعه فرمایید. (پیشفرض: secp256r1)
--must-staple افزودن افزونه OCSP Must-Staple به گواهی. پیکربندی خودکار
OCSP Stapling برای ساختارهای پشتیبانیشده (نسخه آپاچی >= 2.3.3).
(پیشفرض: False)
--redirect هدایت خودکار تمامی ترافیک HTTP به HTTPS برای vhost احراز هویت شده
جدید. (پیشفرض: redirect برای install و run فعال، و برای enhance
غیرفعال است)
--no-redirect عدم هدایت خودکار تمام ترافیک HTTP به HTTPS برای vhost احراز هویت
شده جدید. (پیشفرض: redirect برای install و run فعال، و برای enhance
غیرفعال است)
--hsts افزودن سرآیند Strict-Transport-Security به تمام پاسخهای HTTP.
وادار کردن مرورگر به استفاده همیشگی از SSL برای دامنه. محافظت در برابر
SSL Stripping. (پیشفرض: False)
--uir افزودن سرآیند "Content-Security-Policy: upgrade-insecure-requests"
به تمام پاسخهای HTTP. وادار کردن مرورگر به استفاده از //:https برای
تمام منابع //:http. (پیشفرض: False)
--staple-ocsp فعالسازی OCSP Stapling. پاسخ معتبر OCSP به گواهی ارائهشده توسط سرور
در طول TLS ضمیمه میشود. (پیشفرض: False)
--strict-permissions الزام مالکیت کلیه پروندههای پیکربندی توسط کاربر کنونی؛ تنها در صورتی
لازم است که پیکربندی شما در مکانی ناامن مانند tmp/ باشد. (پیشفرض: False)
--auto-hsts افزایش تدریجی مقدار max-age برای سرآیند امنیتی HTTP Strict Transport
Security (پیشفرض: False)
آزمایش (testing):
پرچمهای زیر صرفاً برای اهداف آزمایش و یکپارچهسازی در نظر گرفته شدهاند.
--run-deploy-hooks هنگام اجرای آزمایشی با استفاده از `--dry-run` یا `reconfigure`،
تمام قلابهای استقرار مرتبط را اجرا کند. این شامل قلابهای تنظیمشده در
خط فرمان، ذخیرهشده در پرونده پیکربندی تمدید گواهی، یا موجود در شاخه
renewal-hooks میباشد. برای مستثنی کردن قلابهای شاخه، از
--no-directory-hooks استفاده کنید. قلاب(ها) تنها در صورت موفقیتآمیز
بودن اجرای آزمایشی اجرا خواهند شد و از گواهی فعال کنونی استفاده خواهند
کرد، نه گواهی آزمایشی موقت دریافتشده در طول اجرای آزمایشی. این پرچم
هنگام اصلاح قلاب استقرار با استفاده از `reconfigure` توصیه میشود.
(پیشفرض: False)
--test-cert, --staging
استفاده از سرور مرحلهای (staging) Let's Encrypt برای دریافت یا ابطال
گواهیهای آزمایشی (نامعتبر)؛ معادل با
--server https://acme-staging-v02.api.letsencrypt.org/directory
(پیشفرض: False)
--debug نمایش ردیابی پشته خطاها (tracebacks) در صورت بروز خطا (پیشفرض: False)
--no-verify-ssl غیرفعالسازی اعتبارسنجی گواهی سرور ACME. گواهیهای ریشه مورد اعتماد
Certbot را میتوان با تنظیم متغیر محیطی REQUESTS_CA_BUNDLE بازنویسی کرد.
(پیشفرض: False)
--http-01-port HTTP01_PORT
درگاه مورد استفاده در چالش http-01. این گزینه تنها بر پورتی که Certbot
روی آن گوش میدهد اثر میگذارد. یک سرور منطبق با ACME همچنان تلاش خواهد
کرد تا روی درگاه 80 متصل شود. (پیشفرض: 80)
--http-01-address HTTP01_ADDRESS
نشانیای که سرور در طول چالش http-01 به آن گوش میدهد. (پیشفرض: )
--https-port HTTPS_PORT
درگاه مورد استفاده برای ارائه HTTPS. این بر این امر اثر میگذارد که Nginx
پس از نصب گواهی LE روی کدام درگاه گوش دهد. (پیشفرض: 443)
--break-my-certs پذیرش جایگزینی یا تمدید گواهیهای معتبر با گواهیهای نامعتبر
(آزمایشی/مرحلهای) (پیشفرض: False)
مسیرها (paths):
پرچمهایی برای تغییر مسیرهای اجرا و سرورها
--cert-path CERT_PATH
مسیر محل ذخیره گواهی (با certonly --csr)، محل نصب از آن، یا ابطال آن
(پیشفرض: None)
--key-path KEY_PATH مسیر کلید خصوصی برای نصب یا ابطال گواهی (در صورت فقدان کلید حساب)
(پیشفرض: None)
--fullchain-path FULLCHAIN_PATH
مسیر همراه به زنجیره کامل گواهی (گواهی به علاوه زنجیره). (پیشفرض: None)
--chain-path CHAIN_PATH
مسیر همراه به یک زنجیره گواهی. (پیشفرض: None)
--config-dir CONFIG_DIR
شاخه پیکربندی. (پیشفرض: etc/letsencrypt/)
--work-dir WORK_DIR شاخه کاری. (پیشفرض: var/lib/letsencrypt/)
--logs-dir LOGS_DIR شاخه لاگها. (پیشفرض: var/log/letsencrypt/)
--server SERVER شناسه منبع URI دایرکتوری ACME. (پیشفرض:
https://acme-v02.api.letsencrypt.org/directory)
مدیریت (manage):
زیرفرمانها و پرچمهای گوناگونی برای مدیریت گواهیهای شما در دسترس است:
certificates فهرست کردن گواهیهای مدیریتشده توسط Certbot
delete پاکسازی تمامی پروندههای مرتبط با یک گواهی
renew تمدید تمام گواهیها (یا موردی مشخص با --cert-name)
revoke ابطال یک گواهی تعیینشده با --cert-path یا --cert-name
reconfigure بهروزرسانی پیکربندی تمدید برای گواهی تعیینشده با --cert-name
run:
گزینههایی برای دریافت و نصب گواهیها
certonly:
گزینههایی برای اصلاح شیوه دریافت گواهی
--deploy-hook DEPLOY_HOOK
دستوری که باید در یک شل یک بار برای هر گواهی که با موفقیت صادر
میشود اجرا گردد، از جمله در تمدیدهای بعدی. مگر اینکه
--disable-hook-validation استفاده شده باشد، کلمه نخست دستور باید
مسیر مطلق یک فایل اجرایی یا موردی باشد که از طریق متغیر محیطی PATH
یافت شود. برای این دستور، متغیر شل RENEWED_LINEAGE$ به زیرشاخه
live پیکربندی اشاره خواهد کرد (برای مثال،
"/etc/letsencrypt/live/example.com") که حاوی گواهیها و کلیدهای
جدید است؛ متغیر شل RENEWED_DOMAINS$ شامل فهرستی جداشده با فاصله از
دامنههای گواهی تمدیدشده خواهد بود (برای مثال،
"example.com www.example.com") (پیشفرض: None)
--csr CSR مسیر یک درخواست امضای گواهی (CSR) در قالب DER یا PEM. در حال
حاضر --csr تنها با زیرفرمان 'certonly' کار میکند. (پیشفرض: None)
renew:
زیرفرمان 'renew' تلاش خواهد کرد هر گواهی که پیشتر دریافت شده را در صورت نزدیک
بودن به انقضا تمدید کرده و خلاصهای از نتایج را چاپ نماید. بهطور پیشفرض، 'renew'
مجدداً از همان افزونهها و گزینههایی که برای دریافت یا آخرین تمدید هر گواهی به کار رفته
بودند استفاده خواهد کرد. میتوانید بسنجید که آیا تمدیدهای آتی موفقیتآمیز خواهند بود یا خیر
با `--dry-run`. گواهیهای مجزا را میتوان با گزینه `--cert-name` تمدید
کرد. قلابها برای اجرای دستورها قبل و بعد از تمدید در دسترس هستند؛ برای اطلاعات بیشتر در
این خصوص به https://certbot.eff.org/docs/using.html#renewal مراجعه کنید.
--pre-hook PRE_HOOK دستوری که باید پیش از دریافت هر گواهی در یک شل اجرا گردد. مگر اینکه
--disable-hook-validation به کار رفته باشد، اولین کلمه دستور باید
مسیر مطلق یک فایل اجرایی یا برنامهای باشد که از طریق متغیر محیطی PATH
یافت شود. اصولاً برای تمدید طراحی شده، جایی که میتوان از آن برای خاموش
کردن موقت وبسروری که ممکن است با افزونه standalone تداخل کند استفاده
نمود. این دستور تنها زمانی فراخوانی میشود که واقعاً قرار باشد گواهی
دریافت/تمدید شود. هنگام تمدید چند گواهی که دارای pre-hook یکسان هستند،
تنها اولین مورد اجرا خواهد شد. (پیشفرض: None)
--post-hook POST_HOOK
دستوری که باید پس از تلاش برای دریافت/تمدید گواهیها در یک شل اجرا شود.
مگر اینکه --disable-hook-validation به کار رفته باشد، اولین کلمه دستور
باید مسیر مطلق یک فایل اجرایی یا برنامهای باشد که از طریق متغیر محیطی
PATH یافت شود. میتواند برای استقرار گواهیهای تمدیدشده یا راهاندازی مجدد
هر سروری که توسط --pre-hook متوقف شده بود استفاده شود. این تنها زمانی
اجرا میگردد که تلاشی برای دریافت/تمدید گواهی صورت گرفته باشد. اگر چند
گواهی تمدیدشده دارای post-hook یکسان باشند، تنها یکی از آنها اجرا خواهد شد.
(پیشفرض: None)
--disable-hook-validation
به طور معمول، دستورهای مشخصشده برای --pre-hook / --post-hook /
--deploy-hook از نظر صحت بررسی میشوند تا معلوم شود آیا برنامههای در
حال اجرا در PATH$ وجود دارند یا خیر، تا اشتباهات بتوانند حتی زمانی که
قلابها هنوز اجرا نمیشوند زودتر تشخیص داده شوند. این اعتبارسنجی نسبتاً
ساده است و در صورت استفاده از ساختارهای پیشرفتهتر شل با خطا روبرو میشود،
بنابراین میتوانید با این سوئیچ آن را غیرفعال کنید. (پیشفرض: False)
--no-directory-hooks غیرفعال کردن اجرای برنامههای اجرایی موجود در شاخههای قلاب Certbot.
(پیشفرض: False)
--disable-renew-updates
غیرفعال کردن بهروزرسانیهای خودکار در پیکربندی سرور شما که در غیر این
صورت توسط افزونه نصاب انتخابی انجام میشد و با اجرای دستور
"certbot renew" توسط کاربر، مستقل از اینکه گواهی تمدید شود یا خیر،
فعال میگردید. این تنظیم در مورد بهروزرسانیهای مهم پیکربندی TLS صدق
نمیکند. (پیشفرض: False)
--no-autorenew غیرفعالسازی تمدید خودکار گواهیها. (پیشفرض: False)
certificates:
فهرست کردن گواهیهای مدیریتشده توسط Certbot
delete:
گزینههایی برای حذف یک گواهی
revoke:
گزینههایی برای ابطال گواهیها
--reason {unspecified,keycompromise,affiliationchanged,superseded,cessationofoperation}
مشخص کردن علت ابطال گواهی. (پیشفرض: unspecified)
--delete-after-revoke
حذف گواهیها پس از ابطال آنها، به همراه کلیه نسخههای پیشین و پسین
آن گواهیها. (پیشفرض: Ask)
--no-delete-after-revoke
حذف نکردن گواهیها پس از ابطال آنها. از این گزینه باید با احتیاط
استفاده شود چرا که زیرفرمان 'renew' تلاش خواهد کرد گواهیهای
باطلشده و حذفنشده را تمدید کند. (پیشفرض: Ask)
register:
گزینههایی برای ثبتنام حساب
-m EMAIL, --email EMAIL
ایمیل مورد استفاده برای ثبتنام و تماس بازیابی. از کاما برای ثبت
چندین ایمیل استفاده کنید، مانند:
u1@example.com,u2@example.com (پیشفرض: Ask).
--eff-email به اشتراک گذاشتن نشانی ایمیل خود با EFF (پیشفرض: Ask)
--no-eff-email به اشتراک نگذاشتن نشانی ایمیل خود با EFF (پیشفرض: Ask)
update_account:
گزینههایی برای تغییر حساب کاربری
unregister:
گزینههایی برای غیرفعالسازی حساب.
--account ACCOUNT_ID شناسه حساب برای استفاده (پیشفرض: None)
install:
گزینههایی برای اصلاح چگونگی استقرار گواهی
rollback:
گزینههایی برای بازگرداندن تغییرات پیکربندی سرور
--checkpoints N بازگرداندن پیکربندی به اندازه N بازه بازرسی. (پیشفرض: 1)
plugins:
گزینههایی برای زیرفرمان "plugins"
--init مقداردهی اولیه افزونهها. (پیشفرض: False)
--prepare مقداردهی اولیه و آمادهسازی افزونهها. (پیشفرض: False)
--authenticators محدود کردن تنها به افزونههای احراز هویتکننده. (پیشفرض: None)
--installers محدود کردن تنها به افزونههای نصبکننده. (پیشفرض: None)
enhance:
به مقاومسازی پیکربندی TLS از طریق افزودن بهبودهای امنیتی به پیکربندی موجود کمک میکند.
show_account:
گزینههای کاربردی برای زیرفرمان "show_account":
reconfigure:
گزینههای مشترکی که ممکن است با زیرفرمان "reconfigure" بهروزرسانی شوند:
plugins:
انتخاب افزونه (Plugin Selection): کلاینت Certbot از یک معماری افزونههای توسعهپذیر
پشتیبانی میکند. برای فهرستی از تمام افزونههای نصبشده و نامهای آنها به
'certbot plugins' مراجعه کنید. میتوانید با تنظیم گزینههای ارائهشده در زیر،
یک افزونه خاص را اجبار نمایید. اجرای --help <plugin_name> پرچمهای مختص آن افزونه
را فهرست خواهد کرد.
--configurator CONFIGURATOR
نام افزونهای که هم احراز هویتکننده و هم نصبکننده است. نباید
همراه با --authenticator یا --installer استفاده شود.
(پیشفرض: Ask)
-a AUTHENTICATOR, --authenticator AUTHENTICATOR
نام افزونه احراز هویتکننده. (پیشفرض: None)
-i INSTALLER, --installer INSTALLER
نام افزونه نصبکننده (همچنین برای یافتن دامنهها به کار میرود).
(پیشفرض: None)
--apache دریافت و نصب گواهیها با استفاده از Apache (پیشفرض: False)
--nginx دریافت و نصب گواهیها با استفاده از Nginx (پیشفرض: False)
--standalone دریافت گواهیها با استفاده از وبسرور مستقل "standalone".
(پیشفرض: False)
--manual ارائه دستورالعملهای دستی پرزحمت برای دریافت گواهی (پیشفرض: False)
--webroot دریافت گواهیها از طریق قرار دادن پروندهها در شاخه webroot.
(پیشفرض: False)
--dns-cloudflare دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
Cloudflare برای DNS). (پیشفرض: False)
--dns-digitalocean دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
DigitalOcean برای DNS). (پیشفرض: False)
--dns-dnsimple دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
DNSimple برای DNS). (پیشفرض: False)
--dns-dnsmadeeasy دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
DNS Made Easy برای DNS). (پیشفرض: False)
--dns-gehirn دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
Gehirn Infrastructure Service برای DNS). (پیشفرض: False)
--dns-google دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
Google Cloud DNS). (پیشفرض: False)
--dns-linode دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
Linode برای DNS). (پیشفرض: False)
--dns-luadns دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
LuaDNS برای DNS). (پیشفرض: False)
--dns-nsone دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
NS1 برای DNS). (پیشفرض: False)
--dns-ovh دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
OVH برای DNS). (پیشفرض: False)
--dns-rfc2136 دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
BIND برای DNS). (پیشفرض: False)
--dns-route53 دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
AWS Route53 برای DNS). (پیشفرض: False)
--dns-sakuracloud دریافت گواهی با استفاده از رکورد DNS TXT (در صورت استفاده از
Sakura Cloud برای DNS). (پیشفرض: False)
apache:
افزونه وبسرور Apache (لطفاً توجه داشته باشید مقادیر پیشفرض گزینههای افزونه
Apache بسته به سیستمعاملی که Certbot روی آن اجرا میشود تغییر میکند.)
--apache-enmod APACHE_ENMOD
مسیر پرونده اجرایی 'a2enmod' در Apache (پیشفرض: None)
--apache-dismod APACHE_DISMOD
مسیر پرونده اجرایی 'a2dismod' در Apache (پیشفرض: None)
--apache-le-vhost-ext APACHE_LE_VHOST_EXT
پسوند پیکربندی SSL vhost (پیشفرض: -le-ssl.conf)
--apache-server-root APACHE_SERVER_ROOT
شاخه ریشه سرور Apache (پیشفرض: etc/apache2/)
--apache-vhost-root APACHE_VHOST_ROOT
ریشه پیکربندی VirtualHost سرور Apache (پیشفرض: None)
--apache-logs-root APACHE_LOGS_ROOT
شاخه لاگهای سرور Apache (پیشفرض: var/log/apache2/)
--apache-challenge-location APACHE_CHALLENGE_LOCATION
مسیر شاخه برای پیکربندی چالش (پیشفرض: etc/apache2/)
--apache-handle-modules APACHE_HANDLE_MODULES
اجازه به نصاب برای فعالسازی خودکار ماژولهای لازم
(در حال حاضر تنها Ubuntu/Debian) (پیشفرض: False)
--apache-handle-sites APACHE_HANDLE_SITES
اجازه به نصاب برای فعالسازی خودکار سایتها
(در حال حاضر تنها Ubuntu/Debian) (پیشفرض: False)
--apache-ctl APACHE_CTL
مسیر کامل به اسکریپت کنترلی Apache (پیشفرض: apache2ctl)
--apache-bin APACHE_BIN
مسیر کامل به فایل اجرایی apache2/httpd (پیشفرض: None)
dns-cloudflare:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از Cloudflare برای DNS).
--dns-cloudflare-propagation-seconds DNS_CLOUDFLARE_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 10)
--dns-cloudflare-credentials DNS_CLOUDFLARE_CREDENTIALS
پرونده INI اعتبارنامههای Cloudflare. (پیشفرض: None)
dns-digitalocean:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از DigitalOcean برای DNS).
--dns-digitalocean-propagation-seconds DNS_DIGITALOCEAN_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 10)
--dns-digitalocean-credentials DNS_DIGITALOCEAN_CREDENTIALS
پرونده INI اعتبارنامههای DigitalOcean. (پیشفرض: None)
dns-dnsimple:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از DNSimple برای DNS).
--dns-dnsimple-propagation-seconds DNS_DNSIMPLE_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 30)
--dns-dnsimple-credentials DNS_DNSIMPLE_CREDENTIALS
پرونده INI اعتبارنامههای DNSimple. (پیشفرض: None)
dns-dnsmadeeasy:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از DNS Made Easy برای DNS).
--dns-dnsmadeeasy-propagation-seconds DNS_DNSMADEEASY_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 60)
--dns-dnsmadeeasy-credentials DNS_DNSMADEEASY_CREDENTIALS
پرونده INI اعتبارنامههای DNS Made Easy. (پیشفرض: None)
dns-gehirn:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از Gehirn Infrastructure Service برای DNS).
--dns-gehirn-propagation-seconds DNS_GEHIRN_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 30)
--dns-gehirn-credentials DNS_GEHIRN_CREDENTIALS
پرونده اعتبارنامههای Gehirn Infrastructure Service. (پیشفرض: None)
dns-google:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از Google Cloud DNS برای DNS).
--dns-google-propagation-seconds DNS_GOOGLE_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 60)
--dns-google-credentials DNS_GOOGLE_CREDENTIALS
مسیر پرونده JSON حساب سرویس Google Cloud DNS برای استفاده به جای
اتکا به Application Default Credentials (ADC). (برای اطلاعات درباره ADC به
https://cloud.google.com/docs/authentication/application-default-credentials،
برای ایجاد حساب سرویس به
https://developers.google.com/identity/protocols/OAuth2ServiceAccount#creatinganaccount
و برای مجوزهای مورد نیاز جهت تغییر رکوردهای Cloud DNS به
https://cloud.google.com/dns/access-control#permissions_and_roles
مراجعه فرمایید.) (پیشفرض: None)
--dns-google-project DNS_GOOGLE_PROJECT
شناسه پروژه Google Cloud که ناحیه(های) تحت مدیریت Google Cloud DNS در آن
واقع شدهاند. در صورت تعیین نشدن به صورت خودکار شناسایی خواهد شد. (پیشفرض: None)
dns-linode:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از Linode برای DNS).
--dns-linode-propagation-seconds DNS_LINODE_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 120)
--dns-linode-credentials DNS_LINODE_CREDENTIALS
پرونده INI اعتبارنامههای Linode. (پیشفرض: None)
dns-luadns:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از LuaDNS برای DNS).
--dns-luadns-propagation-seconds DNS_LUADNS_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 30)
--dns-luadns-credentials DNS_LUADNS_CREDENTIALS
پرونده INI اعتبارنامههای LuaDNS. (پیشفرض: None)
dns-nsone:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از NS1 برای DNS).
--dns-nsone-propagation-seconds DNS_NSONE_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 30)
--dns-nsone-credentials DNS_NSONE_CREDENTIALS
پرونده اعتبارنامههای NS1. (پیشفرض: None)
dns-ovh:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از OVH برای DNS).
--dns-ovh-propagation-seconds DNS_OVH_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 120)
--dns-ovh-credentials DNS_OVH_CREDENTIALS
پرونده INI اعتبارنامههای OVH. (پیشفرض: None)
dns-rfc2136:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از BIND برای DNS).
--dns-rfc2136-propagation-seconds DNS_RFC2136_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 60)
--dns-rfc2136-credentials DNS_RFC2136_CREDENTIALS
پرونده INI اعتبارنامههای RFC 2136. (پیشفرض: None)
dns-route53:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از AWS Route53 برای DNS).
dns-sakuracloud:
دریافت گواهیها با استفاده از رکورد DNS TXT (در صورت استفاده از Sakura Cloud برای DNS).
--dns-sakuracloud-propagation-seconds DNS_SAKURACLOUD_PROPAGATION_SECONDS
تعداد ثانیههای انتظار برای انتشار DNS پیش از درخواست از سرور
ACME جهت اعتبارسنجی رکورد DNS. (پیشفرض: 90)
--dns-sakuracloud-credentials DNS_SAKURACLOUD_CREDENTIALS
پرونده اعتبارنامههای Sakura Cloud. (پیشفرض: None)
manual:
احراز هویت از طریق پیکربندی دستی یا اسکریپتهای سفارشی شل. هنگام استفاده از
اسکریپتهای شل، باید یک اسکریپت احراز هویت ارائه شود. متغیرهای محیطی در دسترس این
اسکریپت به نوع چالش بستگی دارند. CERTBOT_IDENTIFIER$ همیشه شامل دامنه یا نشانی IP
در حال احراز هویت خواهد بود. برای HTTP-01 و DNS-01، متغیر CERTBOT_VALIDATION$ همان
رشته اعتبارسنجی است و CERTBOT_TOKEN$ نام پرونده منبع درخواستشده در حین انجام چالش
HTTP-01 میباشد. همچنین میتوان یک اسکریپت پاکسازی تکمیلی ارائه داد که میتواند از متغیر
اضافی CERTBOT_AUTH_OUTPUT$ حاوی خروجی stdout حاصل از اسکریپت احراز هویت استفاده نماید.
برای هر دو اسکریپت احراز هویت و پاکسازی، در چالشهای HTTP-01 و DNS-01، متغیر
CERTBOT_REMAINING_CHALLENGES$ برابر با تعداد چالشهای باقیمانده پس از چالش جاری خواهد
بود و CERTBOT_ALL_IDENTIFIERS$ حاوی فهرستی جداشده با کاما از کلیه شناسههایی است که برای
گواهی فعلی به چالش کشیده میشوند.
--manual-auth-hook MANUAL_AUTH_HOOK
مسیر یا دستور برای اجرای اسکریپت احراز هویت (پیشفرض: None)
--manual-cleanup-hook MANUAL_CLEANUP_HOOK
مسیر یا دستور برای اجرای اسکریپت پاکسازی (پیشفرض: None)
nginx:
افزونه وبسرور Nginx
--nginx-server-root NGINX_SERVER_ROOT
شاخه ریشه سرور Nginx. (پیشفرض: etc/nginx/ یا usr/local/etc/nginx/)
--nginx-ctl NGINX_CTL
مسیر پرونده اجرایی 'nginx'، مورد استفاده برای 'configtest'
و دریافت شماره نسخه Nginx. (پیشفرض: nginx)
--nginx-sleep-seconds NGINX_SLEEP_SECONDS
تعداد ثانیههای درنگ برای اعمال تغییرات پیکربندی Nginx هنگام
بارگذاری مجدد (reload). (پیشفرض: 1)
null:
نصبکننده خالی (Null Installer)
standalone:
یک سرور HTTP را بهصورت محلی اجرا میکند که پروندههای اعتبارسنجی لازم را ذیل مسیر
درخواست /.well-known/acme-challenge/ ارائه میدهد. مناسب برای زمانی که هیچ وبسروری
از پیش فعال نباشد. تنها چالش HTTP (از وایلدکارت پشتیبانی نمیشود).
webroot:
پروندههای اعتبارسنجی لازم را درون شاخهای به نام .well-known/acme-challenge/ در
مسیر webroot مشخصشده ذخیره مینماید. یک وبسرور HTTP مجزا باید در حال اجرا باشد و
پروندهها را از مسیر webroot ارائه کند. تنها چالش HTTP (از وایلدکارت پشتیبانی نمیشود).
--webroot-path WEBROOT_PATH, -w WEBROOT_PATH
مسیر public_html / webroot. این گزینه میتواند چندین بار برای
مدیریت شناسههای متفاوت تعیین شود؛ هر شناسه از مسیر webroot
قبل از خود استفاده خواهد کرد. برای نمونه:
`-w /var/www/example -d example.com -d www.example.com -w /var/www/thing -d thing.net -d m.thing.net`
(پیشفرض: Ask)
--webroot-map WEBROOT_MAP
دیکشنری JSON که شناسهها را به مسیرهای webroot نگاشت میکند؛
این برای هر ورودی متضمن -d یا --ip-address است. شاید لازم باشد
این را در شل خود گریزدهی (escape) کنید. مثلاً:
--webroot-map '{"eg1.is,m.eg1.is":"/www/eg1/", "eg2.is":"/www/eg2"}'
این گزینه با ورودیهای w / -d- ادغام شده اما بر آنها اولویت دارد.
در حال حاضر، اگر webroot-map را در یک پرونده پیکربندی قرار دهید،
باید در یک خط باشد، مانند:
webroot-map = {"example.com":"/var/www"}. (پیشفرض: {})
نویسنده (AUTHOR)
Certbot
حق نشر (COPYRIGHT)
2014-2018 - نرمافزار و مستندات Certbot تحت مجوز Apache 2.0 طبق توضیحات ارائهشده در https://eff.org/cb-license منتشر شدهاند.
| July 7, 2026 | 5.7 |