يوفر xrdp تسجيل دخول رسوميًا للأجهزة البعيدة باستخدام بروتوكول سطح المكتب البعيد لـ Microsoft (RDP). يقبل xrdp الاتصالات من مجموعة متنوعة من عملاء RDP:
FreeRDP
rdesktop
KRDC
نيوترينوRDP
Windows MSTSC (عميل خدمات Microsoft الطرفية، المعروف أيضًا باسم mstsc.exe
)
Microsoft Remote Desktop (موجود في متجر Microsoft، والذي يختلف عن MSTSC)
يعمل العديد منها على بعض أو كل أنظمة التشغيل Windows و/أو Mac OS وiOS و/أو Android.
يتم تشفير نقل RDP باستخدام TLS بشكل افتراضي.
الاتصال بسطح مكتب Linux باستخدام RDP من أي مكان (يتطلب وحدة xorgxrdp Xorg)
أعد الاتصال بجلسة موجودة
تغيير حجم الجلسة (سواء أثناء الاتصال أو أثناء التنقل)
وكيل RDP/VNC (الاتصال بخادم RDP/VNC آخر عبر xrdp)
نقل الحافظة في اتجاهين (نص، صورة نقطية، ملف)
إعادة توجيه الصوت (يتطلب إنشاء وحدات إضافية)
إعادة توجيه الميكروفون (يتطلب إنشاء وحدات إضافية)
إعادة توجيه محرك الأقراص (تثبيت محركات أقراص العميل المحلية على الجهاز البعيد)
يستهدف xrdp في المقام الأول نظام التشغيل GNU/Linux. تعد معالجات x86 (بما في ذلك x86-64) ومعالجات ARM هي البنية الأكثر نضجًا لتشغيل xrdp عليها. انظر أيضًا مستوى دعم النظام الأساسي.
تحتوي بعض المكونات مثل برنامج الترميز xorgxrdp وRemoteFX على تحسين خاص لـ x86 باستخدام تعليمات SIMD. لذا فإن تشغيل xrdp على معالجات x86 سيحصل على تجربة متسارعة بالكامل.
يجب أن تقوم معظم توزيعات Linux بتوزيع أحدث إصدار من xrdp في مستودعها. ستحتاج إلى حزم xrdp وxorgxrdp للحصول على أفضل تجربة. من المستحسن أن يعتمد xrdp على xorgxrdp، لذلك يجب أن يكون تثبيت xrdp كافيًا. إذا لم يتم توفير xorgxrdp، فاستخدم خادم Xvnc.
يستمع xrdp إلى 3389/tcp. تأكد من أن جدار الحماية الخاص بك يقبل الاتصال بـ 3389/tcp من المكان الذي تريد الوصول إليه.
ملائمة تثبيت xrdp
إذا كنت لا تستخدم Fedora، فتأكد من تمكين حزم EPEL أولاً.
dnf تثبيت epel-release
(جميع الأنظمة) تثبيت xrdp مع: -
dnf تثبيت xrdp
انظر أيضًا https://github.com/neutrinolabs/xrdp/wiki#building-from-sources
لتجميع xrdp من المصادر المجمعة، تحتاج إلى أدوات بناء أساسية - مترجم ( gcc أو clang ) وبرنامج الصنع . بالإضافة إلى ذلك، ستحتاج إلى opensl-devel و pam-devel و libX11-devel و libXfixes-devel و libXrandr-devel . ستكون هناك حاجة إلى المزيد من البرامج الإضافية اعتمادًا على التكوين الخاص بك.
لتجميع xrdp من مستودع git الذي تم سحبه، ستحتاج أيضًا إلى autoconf و automake و libtool و pkg-config .
في حالة التجميع من المصدر المعبأ، قم بفك حزمة القطران وقم بالتغيير إلى الدليل الناتج.
في حالة التجميع من مستودع تم سحبه، يرجى التأكد من استنساخ الوحدات الفرعية أيضًا (استخدم git clone --recursive https://github.com/neutrinolabs/xrdp
)
ثم قم بتشغيل الأوامر التالية لتجميع وتثبيت xrdp:
./bootstrap ./تكوين يصنع سودو جعل التثبيت
إذا كنت تريد استخدام إعادة توجيه الصوت، فستحتاج إلى إنشاء وحدات صوتية إضافية وتثبيتها. يمكن العثور على تعليمات البناء على الويكي.
كيفية إعداد إعادة توجيه الصوت
xrdp ├── common ······ common code ├── docs ········ documentation ├── fontutils ··· font handling utilities ├── genkeymap ··· keymap generator ├── instfiles ··· installable data file ├── keygen ······ xrdp RSA key pair generator ├── libpainter ·· painter library ├── librfxcodec · RFX codec library ├── libxrdp ····· core RDP protocol implementation ├── m4 ·········· Autoconf macros ├── mc ·········· media center module ├── neutrinordp · RDP client module for proxying RDP connections using NeutrinoRDP ├── pkgconfig ··· pkg-config configuration ├── scripts ····· build scripts ├┬─ sesman ······ session manager for xrdp |├── chansrv ···· channel server for xrdp |├── libsesman ·· Code common to sesman and its related executables |└── tools ······ session management tools for sys admins ├── tests ······· tests for the code ├┬─ tools ······· tools |└┬─ devel ······ development tools | ├── gtcp_proxy GTK app that forwards TCP connections to a remote host | └── tcp_proxy · CLI app that forwards TCP connections to a remote host ├── vnc ········· VNC client module for xrdp ├── vrplayer ···· QT player redirecting video/audio to clients over xrdpvr channel ├── xrdp ········ main server code ├── xrdpapi ····· virtual channel API ├── xrdpvr ······ API for playing media over RDP └── xup ········· xorgxrdp client module