Tag: remote desktop

  • รีโมตเดสก์ทอปจากลินุกซ์ไปลินุกซ์

    การทำรีโมตเดสก์ทอป (หรือรีโมตแอคเซส) จากลินุกซ์ไปลินุกซ์ เราก็ต้องเข้าใจก่อนว่า โปรโตคอลที่ใช้ในการทำรีโมตเดสก์ทอปนั้น ที่นิยมคือ VNC และ RDP โดยที่ VNC ย่อมาจาก Virtual Networking Computing จะใช้ TCP port 5900 และ RDP ย่อมาจาก Microsoft Remote Desktop Protocol จะใช้ TCP port คือ 3389 ดังนั้นเราก็ต้องเลือกว่าจะใช้แบบใดระหว่าง VNC และ RDP

    remmina-00-logoบทความนี้ทดสอบด้วย Linux Mint 17.2 MATE โดยค่าดีฟอลต์ในการติดตั้ง Linux Mint นั้นจะมีโปรแกรมที่เรียกว่า Desktop Sharing มาให้แล้วซึ่งจะทำหน้าที่เป็น VNC server (ชื่อโปรแกรมคือ Vino-server) แต่ยังขาดโปรแกรม client ที่จะต้องติดตั้งเพิ่ม โปรแกรมชื่อ rammina 1.2.0-rcgit.4 เป็น client สำหรับใช้งานได้ทั้ง VNC และ RDP จึงถูกเลือกมาใช้งาน

     

    Linux -> Linux

    สมมติมีเครื่อง Linux (เครื่อง A) จะทำรีโมตเดสก์ทอปไปยังเครื่อง Linux อีกเครื่อง (เครื่อง B) เราจะต้องทำอย่างไรบ้าง

    การทำรีโมตเดสก์ทอปเมื่อเลือกใช้ VNC

    มีขั้นตอนดังนี้

    1. ที่เครื่อง B ตั้งค่า Desktop Sharing ดังนี้
    คลิก Menu > Preferences > Desktop Sharing > เลือก Allow other users to view your desktop และ Allow other users to control your desktop > เลือก Require the user to enter this password (ตรงนี้เรียกว่า VNC password)

    remmina-01-desktop-sharing

    2. ที่เครื่อง A ติดตั้งโปรแกรม Client ชื่อ rammina ดังนี้
    เปิด Terminal เพื่อพิมพ์คำสั่ง โดยคลิก Menu > เลือก Terminal
    และทำคำสั่งช้างล่างนี้

    sudo apt-add-repository ppa:remmina-ppa-team/remmina-next
    sudo apt-get update
    sudo apt-get install remmina libfreerdp-plugins-standard
    sudo apt-get install remmina-plugin-vnc

    พิมพ์ exit เพื่อปิด Terminal
    จากนั้นต้องทำการ logout 1 ครั้ง แล้ว login กลับเข้ามาใหม่

    3. ที่เครื่อง A เปิดโปรแกรม Client ชื่อ rammina เพื่อทำรีโมตเดสก์ทอปไปยังเครื่อง B ดังนี้
    คลิกปุ่ม Menu > เลือก Internet > เลือก Remmina > เลือก Protocol เป็น VNC > ใส่ค่า IP Address ของ Server > คลิก Quick Connect > ใส่ VNC password > คลิก OK > เลือก Toggle fullscreen mode

    remmina-02-quick-connect-vnc remmina-03-vnc-password

    อาจจะสร้างเป็น connection profile ที่ระบุค่าเพิ่มเติมที่จะใช้ในการ connect ก็ให้คลิกที่ไอคอน Create a remote desk file แล้วใส่ค่าที่ต้องการ เช่นตั้งค่า Color depth เป็นค่า High color (16 bit) และตั้งค่า Quality เป็น Medium เป็นต้น

    remmina-04-create-conn-profile remmina-05-conn-profile

     

    การทำรีโมตเดสก์ทอปเมื่อเลือกใช้ RDP

    เนื่องจาก RDP เป็นโปรโตคอลของ Microsoft ทางฝั่ง Linux จึงสร้าง xrdp ขึ้นมา support โดยที่ xrdp จะใช้งานผ่าน xvnc

    มีขั้นตอนดังนี้

    1. ที่เครื่อง B ติดตั้งโปรแกรม xrdp และ tightvncserver ดังนี้
    เปิด Terminal เพื่อพิมพ์คำสั่ง โดยคลิก Menu > เลือก Terminal
    และทำคำสั่งช้างล่างนี้

    sudo apt-get install xrdp tightvncserver

    พิมพ์ exit เพื่อปิด Terminal

    2. ที่เครื่อง A ติดตั้งโปรแกรม Client ชื่อ rammina ดังนี้
    เปิด Terminal เพื่อพิมพ์คำสั่ง โดยคลิก Menu > เลือก Terminal
    และทำคำสั่งช้างล่างนี้

    sudo apt-add-repository ppa:remmina-ppa-team/remmina-next
    sudo apt-get update
    sudo apt-get install remmina libfreerdp-plugins-standard
    sudo apt-get install remmina-plugin-rdp

    พิมพ์ exit เพื่อปิด Terminal
    จากนั้นต้องทำการ logout 1 ครั้ง แล้ว login กลับเข้ามาใหม่

    3. ที่เครื่อง A เปิดโปรแกรม Client ชื่อ rammina เพื่อทำรีโมตเดสก์ทอปไปยังเครื่อง B ดังนี้
    คลิกปุ่ม Menu > เลือก Internet > เลือก Remmina > เลือก Protocol เป็น RDP > ใส่ค่า IP Address ของ Server > คลิก Quick Connect > ตอนนี้จะเข้าหน้าต่าง Login to xrdp > Module เลือก sesman-Xvnc > ใส่ username และ password > คลิก OK

    remmina-06-quick-connect-rdp

    remmina-07-connect-xrdp

     

    คำสั่งที่ใช้ในการตรวจสอบว่ามี VNC และ RDP เปิดบริการ

    sudo netstat -tanp -4 | grep LISTEN

    remmina-08-listen-port

     

    อ้างอิง
    Linux Remote Desktop Access with VNC
    http://www.stuartellis.eu/articles/vnc-on-linux/

    FreeRDP/Remmina
    https://github.com/FreeRDP/Remmina/wiki

  • รีโมตเดสก์ทอปจากลินุกซ์ไปวินโดวส์และในทางกลับกัน

    ผมคิดว่าหลาย ๆ คน คงจะรู้อยู่แล้วนะว่า remote desktop นั้นเป็นวิธีที่เข้าไปใช้งานเครื่องที่ไม่ได้อยู่ตรงหน้าเรา อาจวางอยู่ข้าง ๆ ก็ได้ หรือ วางอยู่ไกลออกไปที่อีกห้องนึง ถ้าเรามีเครื่องที่เป็น Windows 1 เครื่อง และเรามี Linux 1 เครื่อง แล้วเราต้องการทำรีโมตเดสก์ทอปจาก Linux ไป Windows หรือบางทีเราก็อาจต้องการทำรีโมตเดสก์ทอปจาก Windows ไป Linux จะทำอย่างไร

    บทความนี้ ผมทดสอบด้วย Linux Mint 17.2 MATE และ Windows 10 แต่หากใครใช้ Ubuntu desktop ก็ได้นะเพราะ Linux Mint นั้นก็คือ Ubuntu ที่ได้รับการปรับแต่งใหม่ ผมทดสอบโดยเลือกใช้โปรโตคอล RDP ในการทำรีโมตเดสก์ทอป

    หลังจากค้นหาใน Google search ก็พบบทความที่นำมาใช้งานได้จริง ขอสรุปสั้น ๆ ดังนี้ครับ ถ้าจะทำรีโมตเดสก์ทอปไปยัง Windows ได้นั้น ที่ Windows ต้องตั้งค่าอนุญาตในหัวข้อ Allow remote access และถ้าจะทำรีโมตเดสก์ทอปไปยัง Linux ได้นั้น ที่ Linux ต้องติดตั้งโปรแกรมเพิ่ม คือ xrdp และ tightvncserver โปรแกรมที่ใช้สำหรับทำรีโมตเดสก์ทอปจาก Linux ไปยัง Windows คือ ติดตั้งโปรแกรม rammina พร้อมด้วย rammina plugin for RDP ส่วนโปรแกรมที่ใช้สำหรับทำรีโมตเดสก์ทอปจาก Windows ไปยัง Linux คือ รันโปรแกรม Remote Desktop Connection ที่มีอยู่แล้วบน Windows

    ขั้นตอนอย่างละเอียด

    Linux -> Windows

    อัปเดตข้อมูลในหน้านี้เพิ่มเติมดังนี่้: โปรดตรวจสอบ Windows 10 ล่าสุดว่าได้แก้ไขให้สามารถทำ remote desktop ด้วย Azure AD Credential ได้แล้วหรือไม่ (ณ วันที่ 15 มกราคม 2559 ยังทำไม่ได้) อ้างอิงจาก Windows 10 Remote Desktop connection using Azure AD Credentials

    มีขั้นตอนดังนี้

    1. ที่ Windows คลิกปุ่มขวาที่ Start > เลือก Control Panel > เลือก System and Security > เลือก Allow remote access > ใต้กรอบ Remote Desktop ให้เลือก Allow remote connections to this computer และมี checkbox ที่ Allow connections only

    xrdp-01-windows10allowremoteaccess

    2. ที่ Linux คลิกปุ่ม Menu > เลือก Software Manager (ใส่รหัสผ่านด้วย) > ใส่คำค้นหาว่า remmina > ดับเบิลคลิก remmina > เลือก Install > กลับไปหน้าก่อนหน้านี้ > ดับเบิลคลิก remmina-plugin-rdp

    xrdp-02-linux-rdp-remmina xrdp-03-linux-rdp-remmina

    หากต้องการให้ได้โปรแกรม remmina เวอร์ชั่นใหม่ ให้ทำขั้นตอนด้วย command line ดังนี้
    sudo apt-add-repository ppa:remmina-ppa-team/remmina-next
    sudo apt-get update
    sudo apt-get install remmina remmina-plugin-rdp libfreerdp-plugins-standard

    3. ที่ Linux คลิกปุ่ม Menu > เลือก Internet > เลือก Remmina > เลือก Protocol เป็น RDP > ใส่ค่า IP Address ของ Server > คลิก Quick Connect > ช่อง User name ใส่ Windows user name ที่ใช้ > ช่อง Password ใส่ Password ของ Windows > ช่อง Domain เว้นว่างไว้ > คลิก OK > เลือก Toggle fullscreen mode

    xrdp-04-linux-rdp-remmina xrdp-05-linux-rdp-remmina xrdp-06-linux-rdp-remmina

    Windows -> Linux

    มีขั้นตอนดังนี้

    1. ที่ Linux คลิกปุ่ม Menu > เลือก Software Manager (ใส่รหัสผ่านด้วย) > ใส่คำค้นหาว่า xrdp > ดับเบิลคลิก xrdp > เลือก Install > กลับไปหน้าก่อนหน้านี้ > ใส่คำค้นหาว่า tightvncserver > ดับเบิลคลิก tightvncserver > เลือก Install

    xrdp-07-linux-install-xrdp xrdp-07-linux-install-tightvncserver

    แก้ไขบล็อกเมื่อ 3 กุมภาพันธ์ 2560

    ทดสอบแล้วพบว่า ubuntu 16.04 ใช้งานในเรื่อง xrdp ทันทีไม่ได้ ต้องเพิ่ม Desktop Environment อีกอัน เลือกใช้ Mate-Desktop โดยต้องติดตั้งเพิ่มโดยเปิดหน้าต่าง Terminal แล้วพิมพ์คำสั่ง 2 บรรทัด ดังนี้

    sudo apt-get update

    sudo apt-get install mate-core mate-desktop-environment mate-notification-daemon

    อ้างอิงที่มา: 

    XRDP – How to install XRDP on Ubuntu 16.04 – Easy Way March 10, 2016 Griffon

    http://c-nergy.be/blog/?p=8952

    และ

    เพิ่มบรรทัดให้มีคำว่า mate-session ในไฟล์ /etc/xrdp/startwm.sh ให้วางไว้ก่อนบรรทัด . /etc/X11/Xsession ดังนี้

    …หลายบรรทัดข้างบน…

    mate-session

    . /etc/X11/Xsession

     

    2. ที่ Windows คลิกปุ่ม Start > เลือก All apps > เลือก Windows Accessories > เลือก Remote Desktop Connection > ใส่ IP Address แล้วคลิก Connect > ตอนนี้จะเข้าหน้าต่าง Login to xrdp > Module เลือก sesman-Xvnc > ใส่ username และ password > คลิก OK

    xrdp-08-windows10remotedesktop xrdp-09-windows10logintoxrdp xrdp-10-windows10logintoxrdpsuccess

    อ้างอิง

    XRDP – Reconnect to existing sessions made easier – New xrdp package on Ubuntu repository
    http://c-nergy.be/blog/?p=6046

    How to fix remote desktop access (RDP) in Linux Mint
    http://forums.linuxmint.com/viewtopic.php?f=42&t=154150

    Ubuntu 14.10 – How to secure Xrdp Connection using SSH
    November 24, 2014 Griffon
    http://c-nergy.be/blog/?p=6020

    FreeRDP/Remmina
    https://github.com/FreeRDP/Remmina/wiki

    Remote desktop server (XRDP) on Linux Mint 17.1 or Ubuntu 14.04
    http://nileshgr.com/2015/02/09/xrdp-linux-mint-17-1-ubuntu-14-04