| Mono(certmgr) | Mono(certmgr) |
نام (NAME)
certmgr - مدیر گواهینامه مونو (نسخه خط فرمان)
خلاصه دستور (SYNOPSIS)
certmgr [action] [object type] [options] store [filename] یا certmgr -ssl [options] url
توضیحات (DESCRIPTION)
این ابزار امکان فهرست کردن، افزودن، حذف یا استخراج گواهینامهها، فهرستهای ابطال گواهینامه (CRL) یا فهرستهای اعتماد گواهینامه (CTL) را به/از یک مخزن گواهی فراهم میکند. مخازن گواهی برای ساخت و اعتبارسنجی زنجیرههای گواهی بهمنظور اعتبارسنجی امضای کد Authenticode(r) و گواهینامههای سرور SSL به کار میروند.
مخازن (STORES)
پارامتر store نشاندهنده مخزن گواهینامه مورد استفاده است. این مقدار میتواند یکی از موارد زیر باشد:
- My
- این مخزن گواهیهای شخصی است.
- AddressBook
- این مخزن برای سایر افراد است.
- CA
- این مخزنی برای مراجع صدور گواهی میانی است.
- Trust
- این مخزن برای ریشههای معتمد است.
- Disallowed
- این مخزن برای ریشههای نامعتمد است.
عملیاتها (ACTIONS)
- -list
- فهرست کردن گواهیها، CRL یا CTL در مخزن مشخصشده.
- -add
- افزودن یک گواهینامه، CRL یا CTL به مخزن مشخصشده. اگر filename یک فایل pkcs12 یا pfx باشد و حاوی کلید خصوصی باشد، به نگهدارنده محلی جفتکلید وارد (import) خواهد شد.
- -del
- حذف یک گواهینامه، CRL یا CTL از مخزن مشخصشده. باید شیء مورد نظر برای حذف را با مقدار هش آن (نه نام فایل) مشخص کنید. این مقدار هش هنگام اجرای -list روی مخزن نمایش داده میشود.
- -put
- رونوشت برداشتن از یک گواهینامه، CRL یا CTL از یک مخزن به یک فایل.
- -ssl
- بارگیری و افزودن گواهینامهها از یک نشست SSL. از شما خواسته میشود افزودن هر گواهینامه دریافتشده از سرور را تأیید کنید. توجه داشته باشید که پروتکلهای SSL/TLS نیازی به ارسال گواهی ریشه توسط سرور ندارند. این اقدام نوع شیء گواهینامه (-c) را پیشفرض قرار داده و گواهیها را در مخازن مناسب وارد میکند (یعنی گواهی سرور در مخزن OtherPeople، گواهی ریشه در مخزن Trust و هر گواهی میانی دیگر در مخزن IntermediateCA).
- -importKey
- امکان وارد کردن یک کلید خصوصی از یک فایل pkcs12 به مخزن محلی جفتکلید را فراهم میکند. (زمانی کاربرد دارد که گواهی متناظر با کلید را پیشتر در مخزن مربوطه نصب کرده باشید.)
انواع شیء (OBJECT TYPES)
- -c , -cert , -certificate
- افزودن، حذف یا استخراج گواهیها. بدین معنا که فایل مشخصشده باید/حاوی گواهیهای X.509 با کدگذاری باینری DER خواهد بود.
- -crl
- افزودن، حذف یا استخراج فهرستهای ابطال گواهینامه (CRL). بدین معنا که فایل مشخصشده باید/حاوی X.509 CRL با کدگذاری باینری DER خواهد بود.
- -ctl
- افزودن، حذف یا استخراج فهرستهای اعتماد گواهینامه (CTL). پشتیبانی نمیشود.
گزینهها (OPTIONS)
- -m
- استفاده از مخازن گواهی ماشین (به جای مخازن پیشفرض کاربر).
- -v
- نمایش جزئیات بیشتر در کنسول.
- -p password
- استفاده از گذرواژه مشخصشده هنگام دسترسی به یک فایل pkcs12.
- -help , -h , -? , /?
- نمایش راهنما درباره این ابزار.
فایلها (FILES)
هشدار: این بخش رفتار کنونی Mono را شرح میدهد و ممکن است در نسخههای بعدی تغییر کند. تنها راه ایمن برای تعامل با مخازن گواهی، استفاده از ابزار certmgr است. نسخههای کنونی Mono تمام مخازن گواهی کاربر را در دایرکتوریهای جداگانه ذیل ~/.config/.mono/certs/ نگهداری میکنند.
- برای نمونه، گواهیهای ریشه معتمد برای یک کاربر در مسیر زیر نگهداری میشوند:
- ~/.config/.mono/certs/Trust/
- فایلهای گواهی در قالب DER (باینری) نگهداری میشوند (با پسوند .cer).
- نام فایلها یا با
- tbp (اثر انگشت یا thumbprint) یا با ski (شناسه کلید موضوع یا subject key identifier) آغاز میشود.
- بقیه نام فایل مقدار کدگذاریشده با base64 (مقدار tbp یا ski) است.
- دادههای کلید خصوصی در مسیر زیر ذخیره میشوند:
- ~/.config/.mono/keypairs/
مثالها (EXAMPLES)
- mono certmgr.exe -list -c -m Trust
- فهرست کردن تمام گواهیها در مخزن Trust ماشین. این دستور مقدار هش هر گواهی را نمایش میدهد. از این مقدار میتوان برای شناسایی یکتای یک گواهی در برخی عملیاتها (مانند حذف) استفاده کرد. برای نمونه: Unique Hash: FFA3AC0084DA1673B5A031EBB2156B3E8FBBF6D8
- mono certmgr.exe -del -c -m Trust FFA3AC0084DA1673B5A031EBB2156B3E8FBBF6D8
- حذف گواهی، که با مقدار هش مشخص شده است، از مخزن Trust ماشین. توجه داشته باشید که مخزن ماشین به طور معمول محدود شده است. اگر کاربر فعلی حداقل مجوزهای دسترسی را برای حذف گواهی نداشته باشد، پیام خطای زیر ظاهر خواهد شد: Access to the machine 'Trust' certificate store has been denied.
- certmgr -ssl https://www.verisign.com
- وارد کردن گواهیهای استفادهشده برای HTTP روی SSL از www.verisign.com. اگر از www.verisign.com بارگیری میکنید، بخش مشکلات شناختهشده (MD2) را ببینید.
- certmgr -ssl ldaps://www.nldap.com:636
- وارد کردن گواهیهای استفادهشده برای LDAP امن از www.nldap.com. این کار حتی اگر ندانیم چگونه با پروتکل LDAP ارتباط برقرار کنیم نیز کار میکند، زیرا ارتباط را اندکی پس از دستتکانی SSL (که گواهی را در اختیار ما میگذارد) متوقف میکنیم.
مشکلات شناختهشده (KNOWN ISSUES)
- MD2
- گواهیهای
ریشه قدیمی
برخی از
مراجع صدور
گواهی (CA) از
الگوریتم
هش MD2
استفاده
میکنند. MD2
به قدری
قدیمی است
که بخشی از
چارچوب
استاندارد
.NET نیست. این
امر
اعتبارسنجی
امضای
دیجیتال
ایجادشده
با MD2 را
ناممکن
میسازد. به
همین دلیل MD2
در اسمبلی
Mono.Security.dll گنجانده
شده است. با
این حال
فایل machine.config
باید
بهروزرسانی
شود تا OID
مربوط به MD2
در زمان
اجرا
شناخته شود.
برای اصلاح این مورد، قطعهکد XML زیر را درون عنصر <configuration> فایل machine.config خود درج کنید:
<mscorlib>
<cryptographySettings>
<cryptoNameMapping>
<cryptoClasses>
<cryptoClass monoMD2="Mono.Security.Cryptography.MD2Managed, Mono.Security, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
</cryptoClasses>
<nameEntry name="MD2" class="monoMD2" />
</cryptoNameMapping>
<oidMap>
<oidEntry OID="1.2.840.113549.2.2" name="MD2" />
</oidMap>
</cryptographySettings>
</mscorlib>
نویسندگان (AUTHORS)
نوشتهشده توسط Sebastien Pouliot
با افزودههای جزئی توسط Pablo Ruiz García
کپیرایت و تکثیر (COPYRIGHT)
حق نشر (C) 2004-2005 Novell.
فهرستهای پستی (MAILING LISTS)
برای جزئیات بیشتر به http://lists.ximian.com/mailman/listinfo/mono-list مراجعه کنید.
وبگاه (WEB SITE)
برای جزئیات بیشتر به http://www.mono-project.com مراجعه کنید.
همچنین ببینید (SEE ALSO)
makecert(1),setreg(1)