دسته‌ها
Windows Server

پیکربندی گواهی Remote Desktop Listener Certificate

در مطلب پیش رو، مراحل پیکربندی گواهی‌های Listener در سروری که رول Remote Desktop Services (RDS) را نصب ندارد و صرفا با پروتکل RDP مورد استفاده قرار می گیرد بررسی می گردد.

سرور Remote Desktop Listener چیست؟

مؤلفه Listener بر روی سرور Remote Desktop اجرا می شود و مسئول گوش دادن و پذیرش اتصالات کلاینت جدید پروتکل دسکتاپ از راه دور (RDP) می باشد.

این موضوع به کاربران امکان می دهد جلسات جدیدی را در سرور دسکتاپ از راه دور ایجاد نمایند.

بر روی سرور Remote Desktop یک شنونده برای هر اتصال RDS وجود دارد که، جلسات مختلف را می توان با استفاده از ابزار Remote Desktop Services Configuration ایجاد و پیکربندی نمود.

روش‌های پیکربندی گواهی Listener

در Windows Server 2003، Windows Server 2008 یا Windows Server 2008 R2، “Snap-in Remote Desktop Configuration Manager MMC” به شما امکان دسترسی مستقیم به شنونده RDP را می دهد.

شما با استفاده از “Snap-in” مضکور، قادر هستید گواهی SSL انتخابی را به شنونده متصل کنید و به طور خودکار امنیت SSL را برای جلسات RDP اعمال کنید.

ولی در Windows Server 2012 و ورژنهای جدیدتر، این امکان در دسترس نیست و سیستم دسترسی مستقیم به شنونده RDP را فراهم نمی کند.

برای پیکربندی گواهی‌های Listener در ویندوز سرور 2012 و بالاتر، می توانیم یکی از روش‌های زیر را اعمال نماییم.

1. به عنوان روش اول، از مولفه خط فرمان Windows Management Instrumentation (WMI) استفاده می کنیم.

داده های پیکربندی برای شنونده RDS در “Windows Management Instrumentation” بخش “Root\CimV2\TerminalServices” در کلاس “Win32_TSGeneralSetting” ذخیره می شوند.

درخواستهای اتصال از طریق مقدار “Thumbprint” منحصر به فرد هر گواهی در ویژگی SSLCertificateSHA1Hash به گواهی شنونده RDS ارجاع می شود.

قبل از اجرای دستورات wmic، گواهینامه مورد نظر باید به Personal certificate store حساب رایانه نصب شود. اگر گواهی در مسیر مضکور موجود نباشد، با خطای “Invalid Parameter” مواجه خواهید شد.

می توانید یکی از گواهی های نصب شده در سیستم را با استفاده از خط فرمان WMI از طریق مراحل زیر با جلسه دسکتاپ راه دور مرتبط سازید.

  • بخش ویژگی ها (properties) گواهی خود را باز کنید و سربرگ جزئیات (Details) را انتخاب نمایید.

  • به قسمت Thumbprint بروید و رشته هگزادسیمال با فاصله محدود شده را در ویرایشگر Notepad کپی کنید.

    بعد از حذف فاصله‌ها، رشته همچنان دارای کاراکتر نامرئی ASCII می باشد که فقط در خط فرمان قابل مشاهده است.

    قبل از اجرای دستور ورود گواهی، از حضف کاراکتر ASCII مضکور اطمینان حاصل نمایید.

  • در خط فرمان PowerShell، دستور wmic زیر را همراه با مقدار thumbprint که در مرحله سوم به دست آورده اید اجرا کنید:

    wmic /namespace:\\root\cimv2\TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash=”THUMBPRINT”.

2. علاوه بر این، فرآیند فوق را می توانید از طریق ویرایشگر رجیستری نیز پیاده سازی نمایید.

  • ابتدا یک گواهی تایید اعتبار سرور معتبر را در بخش Personal certificate store نصب کنید.

  • برای جایگزینی گواهی سفارشی با گواهی پیش‌فرض self-signed موجود که از TLS پشتیبانی می‌کند، مقدار رجیستری زیر حاوی هش SHA1 certificate را ایجاد کنید.

    مقدار مورد نظر در زیرشاخه ی

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

    Registry قرار دارد.

    از پنجره سمت راست، کلید SSLCertificateSHA1Hash با نوع “REG_BINARY” را پیدا کنید و دیتای موجود را با مقدار THUMBPRINT گواهی که می خواهید نصب کنید جایگزین نمایید.

    مقدار مورد نظر باید اثر انگشت گواهی باشد و باید با کاما (،) بدون هیچ فاصله ای از هم جدا شود.

    به عنوان مثال، در صورت برون سپاری کلید مضکور، باید مقدار SSLCertificateSHA1Hash به شکل زیر ظاهر شود.

    SSLCertificateSHA1Hash=hex:42,49,e1,6e,0a,f0,a0,2e,63,c4,5c,93,fd,52,ad,09,27,82,1b,01.

  • خدمات Remote Desktop Host Services تحت حساب NETWORK SERVICE اجرا می شود.

    بنابراین، باید لیست کنترل دسترسی سیستم (SACL) فایل کلیدی که توسط RDS استفاده می‌شود را طوری تنظیم کنید که شامل NETWORK SERVICE با مجوزهای خواندن باشد.

    به منظور تغییر مجوزها، مراحل زیر را در بخش مدیریت گواهینامه‌های Local Computer دنبال کنید:

    A) مؤلفه گواهی ها را با تایپ certlm.msc در Run و کلیک بر روی دکمه OK باز کنید.

    B) در بخش درختی کنسول، به قسمت Local Computer / Personal بروید و سپس گواهی SSL مورد نظر را برگزینید.

    C) روی گواهی کلیک راست نموده، All Tasks را انتخاب کنید و سپس بر روی “Manage Private Keys” کلیک نمایید.

    D) در کادر محاوره ای Permissions، روی دکمه Add کلیک کنید، “NETWORK SERVICE” را تایپ نموده، روی OK کلیک کنید، در قسمت Allow گزینه ی کادر “read” را انتخاب کنید و سپس روی OK کلیک کنید.

زمانی که گواهی SSL معتبر خود را به نرم افزار Remote Desktop با به کار گیری یکی از روش هایی که در بالا ذکر شد معرفی می کنید، امنیت ارتباط خود را با سرور بهبود بخشیده و همچنین شاهد برطرف شدن خطای “هشدار گواهی نامعتبر” در اتصال اولیه خواهید بود…

منبع:

Remote Desktop Listener Certificate Configurations

نسخه ترکی