'\" t .\" Title: clevis .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 08/23/2026 .\" Manual: \ \& .\" Source: \ \& .\" Language: Persian .\" .TH "CLEVIS" "1" "08/23/2026" "\ \&" "\ \&" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" clevis \- چارچوب خط فرمان برای سیاست‌های رمزگشایی خودکار .SH "خلاصه دستور (SYNOPSIS)" .sp \fBclevis\fR COMMAND [OPTIONS] .SH "نمای کلی (OVERVIEW)" .sp کلویس (Clevis) چارچوبی برای سیاست‌های رمزگشایی خودکار است\&. این ابزار به شما امکان می‌دهد هنگام رمزنگاری، سیاستی را تعریف کنید که برای رمزگشایی داده‌ها باید برآورده شود\&. به محض اینکه این سیاست محقق شود، داده‌ها رمزگشایی می‌شوند\&. .sp کلویس ماژولار و قابل گسترش است\&. افزونه‌های ما «پین» (pin) نامیده می‌شوند\&. وظیفه یک پین این است که سیاستی را به عنوان نخستین آرگومان خود و متن ساده (plaintext) را از ورودی استاندارد دریافت کرده و داده‌ها را به گونه‌ای رمزنگاری کند که در صورت برآورده شدن سیاست، به‌طور خودکار رمزگشایی شوند\&. بیایید با هم یک مثال را مرور کنیم\&. .SH "پیوند به TANG (TANG BINDING)" .sp کلویس از سرور پیوند شبکهٔ Tang پشتیبانی می‌کند\&. تانگ (Tang) جایگزینی سبک و بدون وضعیت (stateless) برای سیستم‌های واسط امانی (escrow) فراهم می‌سازد\&. رمزنگاری داده‌ها با استفاده از پین Tang بسیار شبیه به پین HTTP کار می‌کند: .sp .if n \{\ .RS 4 .\} .nf $ clevis encrypt tang \*(Aq{"url":"http://tang\&.srv"}\*(Aq < PT > JWE The advertisement contains the following signing keys: .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf _OsIk0T\-E2l6qjfdDiwVmidoZjA .fi .if n \{\ .RE .\} .sp .if n \{\ .RS 4 .\} .nf Do you wish to trust these keys? [ynYN] y .fi .if n \{\ .RE .\} .sp همان‌طور که در بالا مشاهده می‌کنید، Tang از گردش کار «اعتماد در اولین استفاده» (trust\-on\-first\-use) بهره می‌برد\&. از سوی دیگر، در صورتی که اعلان (advertisement) سرور را از قبل به اشتراک بگذارید، Tang می‌تواند رمزنگاری را به‌صورت کاملاً آفلاین انجام دهد\&. رمزگشایی نیز درست مانند مثال اول کار می‌کند: .sp .if n \{\ .RS 4 .\} .nf $ clevis decrypt < JWE > PT .fi .if n \{\ .RE .\} .sp برای اطلاعات بیشتر، \fBclevis\-encrypt\-tang\fR(1) را ببینید\&. .SH "پیوند به TPM2 (TPM2 BINDING)" .sp کلویس از رمزنگاری یک کلید در تراشهٔ ماژول بستر معتمد ۲\&.۰ (TPM2) پشتیبانی می‌کند\&. کلید تصادفی و از نظر رمزنگاری قدرتمندی که برای رمزنگاری استفاده می‌شود، با استفاده از تراشهٔ TPM2 رمزنگاری شده و سپس در زمان رمزگشایی، توسط TPM2 رمزگشایی می‌شود تا به کلویس اجازه دهد راز ذخیره‌شده در JWE را رمزگشایی کند\&. .sp رمزنگاری داده‌ها با استفاده از پین tpm2 مشابه پین‌های ذکرشده در بالا عمل می‌کند: .sp .if n \{\ .RS 4 .\} .nf $ clevis encrypt tpm2 \*(Aq{}\*(Aq < PT > JWE .fi .if n \{\ .RE .\} .sp این پین مقادیر پیش‌فرض معقولی برای پیکربندی خود دارد، اما اگر مقادیر پیش‌فرض استفاده‌شده مناسب نباشند، می‌توان سلسله‌مراتب (hierarchy)، الگوریتم‌های درهم‌سازی (hash) و الگوریتم‌های کلید متفاوتی را انتخاب کرد\&. .sp رمزگشایی نیز مشابه سایر پین‌ها کار می‌کند و تنها کافی است JWE ارائه شود: .sp .if n \{\ .RS 4 .\} .nf $ clevis decrypt < JWE > PT .fi .if n \{\ .RE .\} .sp توجه داشته باشید که مانند سایر پین‌ها، هیچ پیکربندی خاصی برای رمزگشایی استفاده نمی‌شود؛ این به آن دلیل است که کلویس کلیدهای عمومی و خصوصی موردنیاز برای بازگشایی (unseal) شیء رمزنگاری‌شده توسط TPM2 را در JWE ذخیره می‌کند تا کلویس بتواند این اطلاعات را از آنجا واکشی کند\&. .sp برای اطلاعات بیشتر، \fBclevis\-encrypt\-tpm2\fR(1) را ببینید\&. .SH "اشتراک راز شامیر (SHAMIR\(cqS SECRET SHARING)" .sp کلویس روشی برای ترکیب پین‌ها با یکدیگر جهت ایجاد سیاست‌های پیچیدهٔ قفل‌گشایی و دسترسی‌پذیری بالا فراهم می‌کند\&. این کار با استفاده از الگوریتمی به نام اشتراک راز شامیر (Shamir\(cqs Secret Sharing یا SSS) محقق می‌شود\&. .sp طرح SSS یک طرح مبتنی بر آستانه است؛ به این صورت که یک کلید ایجاد کرده و آن را به تعدادی قطعه تقسیم می‌کند\&. هر قطعه با استفاده از یک پین دیگر رمزنگاری می‌شود (حتی ممکن است به‌صورت بازگشتی از خود SSS استفاده شود)\&. علاوه بر این، شما آستانهٔ \fBt\fR را تعریف می‌کنید\&. اگر دست‌کم \fBt\fR قطعه قابل رمزگشایی باشند، کلید رمزنگاری بازیابی شده و عملیات رمزگشایی با موفقیت انجام خواهد شد\&. .sp برای نمونه، بیایید یک پیکربندی با دسترسی‌پذیری بالا با استفاده از Tang بسازیم: .sp .if n \{\ .RS 4 .\} .nf $ cfg=\*(Aq{"t":1,"pins":{"tang":[{"url":\&.\&.\&.},{"url":\&.\&.\&.}]}}\*(Aq $ clevis encrypt sss "$cfg" < PT > JWE .fi .if n \{\ .RE .\} .sp در این سیاست، ما اعلام می‌کنیم که آستانه برابر با ۱ است، اما چندین قطعه کلید وجود دارند که با سرورهای مختلف Tang رمزنگاری شده‌اند\&. از آنجا که آستانهٔ ما ۱ است، تا زمانی که هر یک از سرورهای Tang در دسترس باشند، رمزگشایی با موفقیت انجام خواهد شد\&. مانند همیشه، رمزگشایی به‌سادگی عبارت است از: .sp .if n \{\ .RS 4 .\} .nf $ clevis decrypt < JWE > PT .fi .if n \{\ .RE .\} .sp برای اطلاعات بیشتر، \fBclevis\-encrypt\-tang\fR(1) را ببینید\&. .SH "پیوند به LUKS (LUKS BINDING)" .sp از کلویس می‌توان برای پیوند دادن یک حجم LUKS موجود به سیاست خودکارسازی آن استفاده کرد\&. این کار با یک دستور ساده انجام می‌شود: .sp .if n \{\ .RS 4 .\} .nf $ clevis luks bind \-d /dev/sda tang \*(Aq{"url":\&.\&.\&.}\*(Aq .fi .if n \{\ .RE .\} .sp این دستور چهار مرحله را انجام می‌دهد: .sp .RS 4 .ie n \{\ \h'-04' 1.\h'+01'\c .\} .el \{\ .sp -1 .IP " 1." 4.2 .\} کلید جدیدی با همان آنتروپی کلید اصلی (master key) در LUKS ایجاد می‌کند \(em حداکثر بیت‌های آنتروپی ۲۵۶ است\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 2.\h'+01'\c .\} .el \{\ .sp -1 .IP " 2." 4.2 .\} کلید جدید را با کلویس رمزنگاری می‌کند\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 3.\h'+01'\c .\} .el \{\ .sp -1 .IP " 3." 4.2 .\} محتوای JWE کلویس را در هدر LUKS ذخیره می‌نماید\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 4.\h'+01'\c .\} .el \{\ .sp -1 .IP " 4." 4.2 .\} کلید جدید را برای استفاده با LUKS فعال می‌سازد\&. .RE .sp این دیسک اکنون می‌تواند هم با گذرواژهٔ فعلی شما و هم با سیاست کلویس قفل‌گشایی شود\&. کلویس دو ابزار قفل‌گشایی برای حجم‌های LUKS ارائه می‌دهد: نخست، یکپارچگی با Dracut برای قفل‌گشایی خودکار حجم ریشه در مراحل اولیه بوت؛ دوم، یکپارچگی با UDisks2 برای قفل‌گشایی خودکار رسانه‌های جداشدنی در نشست میزکار شما\&. .sp برای اطلاعات بیشتر، \fBclevis\-luks\-bind\fR(1) را ببینید\&. .SH "همچنین ببینید (SEE ALSO)" .sp \fBclevis\-encrypt\-tang\fR(1), \fBclevis\-encrypt\-tpm2\fR(1), \fBclevis\-encrypt\-sss\fR(1), \fBclevis\-luks\-bind\fR(1), \fBclevis\-decrypt\fR(1)