xrdp จัดเตรียมการเข้าสู่ระบบแบบกราฟิกให้กับเครื่องระยะไกลโดยใช้ Microsoft Remote Desktop Protocol (RDP) xrdp ยอมรับการเชื่อมต่อจากไคลเอนต์ RDP ที่หลากหลาย:
ฟรีRDP
เดสก์ท็อป
คอาร์ดีซี
นิวตริโนRDP
Windows MSTSC (ไคลเอ็นต์ Microsoft Terminal Services หรือที่รู้จักในชื่อ mstsc.exe
)
Microsoft Remote Desktop (พบได้ใน Microsoft Store ซึ่งแตกต่างจาก 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 จะได้รับประสบการณ์การเร่งความเร็วอย่างเต็มที่
ลีนุกซ์ส่วนใหญ่ควรแจกจ่าย 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 ) และโปรแกรม make นอกจากนี้ คุณจะต้อง openssl-devel , pam-devel , libX11-devel , libXfixes-devel , libXrandr-devel จำเป็นต้องมีซอฟต์แวร์เพิ่มเติมเพิ่มเติม ขึ้นอยู่กับการกำหนดค่าของคุณ
หากต้องการคอมไพล์ xrdp จากที่เก็บ git ที่เช็คเอาท์ คุณจะต้องมี autoconf , automake , libtool และ pkg-config เพิ่มเติม
หากคอมไพล์จากแหล่งแพ็กเกจ ให้คลาย tarball และเปลี่ยนเป็นไดเร็กทอรีผลลัพธ์
หากรวบรวมจากพื้นที่เก็บข้อมูลที่เช็คเอาท์ โปรดตรวจสอบให้แน่ใจว่าคุณได้โคลนโมดูลย่อยด้วย (ใช้ git clone --recursive https://github.com/neutrinolabs/xrdp
)
จากนั้นรันคำสั่งต่อไปนี้เพื่อคอมไพล์และติดตั้ง xrdp:
./bootstrap ./กำหนดค่า ทำ sudo ทำการติดตั้ง
หากคุณต้องการใช้การเปลี่ยนเส้นทางเสียง คุณต้องสร้างและติดตั้งโมดูล Pulseaudio เพิ่มเติม คำแนะนำในการสร้างสามารถพบได้ที่วิกิ
วิธีการตั้งค่าการเปลี่ยนเส้นทางเสียง
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