گواهی مدیر برای موارد زیر استفاده می شود:
- جمع آوری تمام گواهی های داخل روتر؛
- مدیریت و ایجاد گواهینامه های خودامضا؛
- پیکربندی مربوط به SCEP
با شروع با RouterOS نسخه 6، اعتبار گواهی با استفاده از افست منطقه زمانی محلی نشان داده می شود. در نسخه های قبلی UTF بود.
منوی عمومی
/certificate
منوی عمومی برای مدیریت گواهی ها، افزودن الگوها، صدور گواهینامه ها و مدیریت مشتریان SCEP استفاده می شود.
الگوی گواهی
الگوهای گواهی بلافاصله پس از اجرای دستور صدور گواهی یا درخواست گواهی حذف می شوند
/certificate
add name=CA-Template common-name=CAtemp key-usage=key-cert-sign,crl-sign
add name=Server common-name=server
add name=Client common-name=client
بیایید گواهینامه ها را چاپ کنیم:
[admin@4k11] /certificate> print detail
Flags: K - private-key; L - crl; C - smart-card-key; A - authority; I - issued, R - revoked; E - expired; T - trusted
0 name="CA-Template" key-type=rsa common-name="CAtemp" key-size=2048 subject-alt-name="" days-valid=365 key-usage=key-cert-sign,crl-sign
1 name="Server" key-type=rsa common-name="server" key-size=2048 subject-alt-name="" days-valid=365
key-usage=digital-signature,key-encipherment,data-encipherment,key-cert-sign,crl-sign,tls-server,tls-client
2 name="Client" key-type=rsa common-name="client" key-size=2048 subject-alt-name="" days-valid=365
key-usage=digital-signature,key-encipherment,data-encipherment,key-cert-sign,crl-sign,tls-server,tls-client
اگر گواهی CA حذف شود، تمام گواهی های صادر شده در زنجیره نیز حذف می شوند.
امضای گواهی
گواهینامه ها باید امضا شود. در مثال زیر، گواهی ها را امضا می کنیم و URL CRL را برای گواهی سرور اضافه می کنیم:
/certificate
sign CA-Template
sign Client
sign Server ca-crl-host=192.168.88.1 name=ServerCA
بیایید بررسی کنیم که آیا گواهی ها امضا شده اند:
[admin@MikroTik] /certificate> print
Flags: K - private-key; L - crl; A - authority; T - trusted
Columns: NAME, COMMON-name, FINGERPRINT
# NAME COMMON FINGERPRINT
0 K AT CA-Template CAtemp 0c7aaa7607a4dde1bbf33deaae6be7bac9fe4064ba47d64e8a73dcefad6cfc38
1 K AT Client client b3ff25ecb166ea41e15733a7493003f3ea66310c10390c33e98fe32364c3659f
2 KLAT ServerCA server 152b88c9d81f4b765a59e2302e01efd1fbf11ceeed6e59f4974e87787a5bb980
زمان فرآیند امضای کلید به اندازه کلید یک گواهی خاص بستگی دارد. با مقادیر 4k و بالاتر، ممکن است زمان قابل توجهی برای امضای این گواهی خاص در دستگاههای مبتنی بر CPU کمقدرت طول بکشد.
گواهی صادرات
صدور گواهینامه های مشتری با کلیدها و گواهینامه های CA امکان پذیر است:
/certificate
export-certificate CA-Template
export-certificate ServerCA export-passphrase=yourpassphrase
export-certificate Client export-passphrase=yourpassphrase
گواهی های صادر شده در بخش فایل / موجود است :
[admin@MikroTik] > file print
Columns: NAME, TYPE, SIZE, CREATION-TIME
# NAME TYPE SIZE CREATION-TIME
0 skins directory jan/19/2019 00:00:04
1 flash directory jan/19/2019 01:00:00
2 flash/rw directory jan/19/2019 01:00:00
3 flash/rw/disk directory jan/19/2019 01:00:00
4 pub directory jan/19/2019 02:42:16
5 cert_export_CA-Template.crt .crt file 1119 jan/19/2019 04:15:21
6 cert_export_ServerCA.crt .crt file 1229 jan/19/2019 04:15:42
7 cert_export_ServerCA.key .key file 1858 jan/19/2019 04:15:42
8 cert_export_Client.crt .crt file 1164 jan/19/2019 04:15:55
9 cert_export_Client.key .key file 1858 jan/19/2019 04:15:55
صدور گواهینامه ها به خط مشی کاربر “حساس” نیاز دارد.
گواهی واردات
برای وارد کردن گواهیها، گواهیها باید با استفاده از یکی از روشهای آپلود فایل در دستگاه آپلود شوند.
واردات گواهی با استفاده از رابط کاربری گرافیکی یا CLI غیرممکن است.
ویژگی | شرح |
---|---|
Name | یک نام گواهی که در مدیر گواهی نشان داده می شود |
File Name | نام فایلی که وارد خواهد شد |
Passphrase | در صورت وجود کلمه عبور فایل |
[admin@MikroTik] > /certificate/import file-name=certificate_file_name name=name_example passphrase=file_passphrase
certificates-imported: 2
private-keys-imported: 1
files-imported: 1
decryption-failures: 0
keys-with-no-certificate: 0
[admin@MikroTik] > /certificate/print
Flags: K - PRIVATE-KEY; T - TRUSTED
Columns: NAME, COMMON-NAME
# NAME COMMON-NAME
0 KT name_example cert
1 T name_example_1 ca
بیایید گواهینامه ها را رمزگذاری کنیم
ویدیوی ما را در مورد این ویژگی تماشا کنید .
RouterOS v7 دارای پشتیبانی گواهی Let’s Encrypt (letsencrypt) برای سرویس www-ssl است. برای فعال کردن سرویس گواهی Let’s Encrypt با تمدید خودکار گواهی، از دستور «enable-ssl-certificate» استفاده کنید:
/certificate enable-ssl-certificate dns-name=my.domain.com
توجه داشته باشید که نام DNS باید به روتر اشاره کند و پورت TCP/80 باید از شبکه WAN در دسترس باشد. اگر dns-name مشخص نشده باشد، به طور پیشفرض به نام ابر آیپی که بهطور خودکار تولید میشود (یعنی http://example.sn.mynetname.net ) خواهد بود.
SCEP
SCEP از پروتکل HTTP و درخواست های GET کدگذاری شده base64 استفاده می کند. اکثر درخواست ها بدون احراز هویت و رمزگذاری هستند، با این حال، موارد مهم را می توان در صورت لزوم محافظت کرد (با استفاده از کلید عمومی دریافت شده رمزگذاری یا امضا شد).
کلاینت SCEP در RouterOS:
- دریافت گواهی CA از سرور CA یا RA (در صورت استفاده).
- کاربر باید اثر انگشت گواهی CA را مقایسه کند یا اگر از سرور مناسب آمده است.
- یک گواهی خودامضا با یک کلید موقت ایجاد کنید.
- ارسال یک درخواست گواهی به سرور؛
- اگر سرور با وضعیت x پاسخ دهد، مشتری به درخواست خود ادامه می دهد تا زمانی که سرور یک خطا یا تأیید ارسال کند.
سرور SCEP تنها از صدور یک گواهی پشتیبانی می کند. RouterOS از گزینه های تمدید و next-ca نیز پشتیبانی می کند:
- تمدید – امکان تمدید خودکار گواهی قدیمی با همان CA.
- next-ca – امکان تغییر گواهینامه CA فعلی به گواهی جدید.
کلاینت برای هر گونه تغییری از سرور نظرسنجی می کند، اگر سرور تبلیغ کند که next-ca در دسترس است، مشتری ممکن است CA بعدی را درخواست کند یا صبر کند تا CA تقریباً منقضی شود و سپس درخواست next-ca کند.
مشتری RouterOS به طور پیشفرض سعی میکند از POST، AES و SHA256 استفاده کند اگر سرور آن را تبلیغ کند. اگر الگوریتم های بالا پشتیبانی نمی شوند، مشتری سعی می کند از 3DES، DES و SHA1، MD5 استفاده کند.
گواهینامه های SCEP زمانی تمدید می شوند که 3/4 از زمان اعتبار آنها بگذرد.