Ubuntu 22.04 XDMCP 설정



적용되는 버전

Ubuntu 22.04

목차

Xmanager 7 기본 서버를 위한 XDMCP 설정

 

  1. XDMCP 설정: gdm3 환경 설정
    /etc/gdm3/custom.conf 파일의 [xdmcp] 섹션에서 Enable의 값을 1(또는 true)로 설정. 이 파일이 없으면 다음 내용을 넣어서 파일을 생성합니다.

    [daemon] ... WaylandEnable=false ... [xdmcp] Enable=true MaxSessions=99 DisplaysPerHost=99

    gdm3 XDMCP 데몬으로는 같은 사용자 이름으로 서로 다른 세션을 만들 수 없습니다. 같은 사용자 이름으로 서로 다른 여러 개의 세션으로 작업을 하고자 할 경우 기본 gdm3 데몬 대신 lightdm과 같은 다른 데몬 프로그램을 사용해야 합니다. lightdm 데몬 프로그램 설치는 해당 OS의 패키지 설치 관리자를 참고하시거나 이곳 FAQ의 UNIX/Linux OS별 설정에서 해당 OS의 XDMCP 설정 부분을 참고해 보세요.

  2. Linux 장비를 재부팅하거나 다음 명령을 실행합니다.

    # systemctl restart gdm 또는 systemctl restart gdm3

     

  3. 방화벽 설정 후 Xmanager를 실행합니다.
    PC에서 UNIX/Linux 방향으로 UDP 177번 포트 개방
    UNIX/Linux에서 PC 방향으로 TCP 6000~6010번 포트 개방

    시스템에 iptable 방화벽이 구동되고 있을 경우 다음 명령으로 iptable 기능을 정지하거나 위와 관련한 설정을 할 필요가 있습니다.

    # systemctl stop ufw

    ※ 참고: PC에서 UNIX/Linux 방향으로 UDP 177번 포트 개방, UNIX/Linux에서 PC 방향으로 TCP 6000~6010번 포트 개방

Xmanager 6 이하 혹은 Xmanager 7 클래식 사용을 위한 설정

Ubuntu 18.04부터 XDMCP 데몬으로 기존 lightdm 대신 기본으로 gdm(버전 3)을 사용합니다.

gdm3 데몬은 원격 접속을 위한 XDMCP에 맞지 않습니다. X11 프로토콜이 아닌 Wayland를 사용하려고 한다거나 로그인 후 화면 출력이 콘솔에 뿌려진다거나 하는 문제가 있습니다.

디스플레이 매니저로 gdm3 대신 lightdm을 추가 설치하고 데스크톱 사용자 환경으로 기본 Ubuntu 데스크톱이 아닌 Xfce를 설치하여 이 문제를 해결할 수 있습니다.

Xmanager 7(기본 서버)의 경우는 사용자 데스크톱으로 Ubuntu 데스크톱도 가능하지만 Xmanger 7 Classic이나 Xmanager 6는 사용자 데스크톱 환경으로 Xfce(Xubuntu)나  KDE를 사용하여야 합니다.

 

인터넷 접속 여부 등 실제 사용 환경과 다소 차이가 있을 수 있으며 다음 안내에 따라 변경한 시스템에서 생기는 문제에 대해서는 전적으로 사용자에게 있습니다.

다음은 모두 root의 권한(혹은 sudo 명령 실행)으로 진행합니다.

XDMCP 설정

  1. lightdm 설치


    설치 시 기본 디스플레이를 어떤 것으로 사용할 것인지 묻는 화면에서 'lightdm'을 선택합니다.


  2. lightdm 환경 설정
    /etc/lightdm/lightdm.conf 파일을 수정하여(없으면 생성합니다) 다음 내용을 추가하거나 변경합니다.

     

  3. 방화벽 설정


    (방화벽에 대한 자세한 사항은 우분투의 매뉴얼을 참조하시거나 우분투 공급사의 기술지원을 받으셔야 합니다. 문제의 원인 파악을 위해서 일시적으로 방화벽을 제거하시고자 할 경우 'iptables -F' 명령을 사용해 보십시오. 그리고 우분투의 경우 기본값으로는 iptables가 구동하고 있지 않습니다. iptables -L 명령으로 구동 여부를 확인해 보십시오.)

  4. XDMCP 서비스 데몬 교체 및 재구동

     

  5. Xmanager 세션 생성
    우분투 LightDM의 경우 XDMCP 브로드캐스트에 응답을 안하는 경우가 있어 Xmanager 버전(3 이하)에 따라서는 Xmanager 세션 리스트에 나타나지 않을 수 있습니다. Xmanager에서 새로 만들기를 통해 XDMCP 고정 세션을 만들거나 주소창에서 IP 주소나 호스트 이름을 직접 입력하여 접속해보십시오.

사용자 데스크톱 환경으로 Xfce(Xubuntu) 추가 설치

  1. 새로운 사용자 데스크톱 환경 설치.
    - Xubuntu 설치

     

  2. 새로운 데스크톱 환경 적용: xdmcp 데몬 재기동

     

  3. Xmanager 접속 후 로그인 화면에서 xfce  세션이나 Xubuntu 세션을 선택합니다.(Xmanager 7의 경우 우분투 데스크톱을 지원합니다)

서비스 구동 및 정상 작동 여부 확인 방법

  1. lightdm 구동 및 서비스 여부 확인

    ※ 참고: netstat 명령이 기본값으로 없을 수도 있습니다. 이 경우 apt install net-tools 명령을 root의 권한으로 실행하여 해당 패키지를 설치하거나, ss -uan |grep 177 명령을 사용하여 네트워크 소켓의 상태를 확인할 수 있습니다.

  2. 방화벽 확인
    방화벽이 작동하지 않고 있는 아래와 같은 결과가 나오거나 방화벽을 작동해야 한다면 Iptables 매뉴얼을 참고하시어 udp 177번이 허용 상태인 결과가 나오게 해야 합니다.

     

  3. Xfce 설치 및 적용 확인

 

같은 사용자로 하는 다중 세션 설정

기본적으로 Ubuntu의 lightdm 설정은 같은 동일한 사용자로 여러 개의 XDMCP 세션이 생성되지 않도록 설정되어 있습니다. 다음 설정이 필요합니다.

  1. DBUS 설정
    /etc/X11/Xsession.d/75dbus_dbus-launch 파일에서 다음 내용을 추가합니다.

     

  2. XDMCP 로그인 화면에서 사용자 선택 방법
    어떤 사용자가 XDMCP 세션을 사용하고 있을 때 lightdm은 새로운 새션임에도 기존 세션의 연장으로 인식하여 기존 세션에 접속할려고 합니다.
    (로그인 화면은 사용자의 시스템에 따라 달라질 수 있습니다.)


    사용자 이름 옆의 펼치기 버튼을 눌러 새롭게 사용자를 선택합니다.