적용되는 버전
Ubuntu 22.04
Xmanager 7 기본 서버를 위한 XDMCP 설정
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 설정 부분을 참고해 보세요.
Linux 장비를 재부팅하거나 다음 명령을 실행합니다.
# systemctl restart gdm 또는 systemctl restart gdm3
방화벽 설정 후 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 설정
lightdm 설치
$ sudo apt install lightdm
설치 시 기본 디스플레이를 어떤 것으로 사용할 것인지 묻는 화면에서 'lightdm'을 선택합니다.lightdm 환경 설정
/etc/lightdm/lightdm.conf 파일을 수정하여(없으면 생성합니다) 다음 내용을 추가하거나 변경합니다.[XDMCPServer] enabled=true
방화벽 설정
$ sudo service ufw stop
(방화벽에 대한 자세한 사항은 우분투의 매뉴얼을 참조하시거나 우분투 공급사의 기술지원을 받으셔야 합니다. 문제의 원인 파악을 위해서 일시적으로 방화벽을 제거하시고자 할 경우 'iptables -F' 명령을 사용해 보십시오. 그리고 우분투의 경우 기본값으로는 iptables가 구동하고 있지 않습니다. iptables -L 명령으로 구동 여부를 확인해 보십시오.)XDMCP 서비스 데몬 교체 및 재구동
$ sudo systemctl disable gdm3 $ sudo systemctl stop gdm3 $ sudo systemctl enable lightdm $ sudo systemctl start lightdm
Xmanager 세션 생성
우분투 LightDM의 경우 XDMCP 브로드캐스트에 응답을 안하는 경우가 있어 Xmanager 버전에 따라서는 Xmanager 세션 리스트에 나타나지 않을 수 있습니다. Xmanager에서 새로 만들기를 통해 XDMCP 고정 세션을 만들거나 주소창에서 IP 주소나 호스트 이름을 직접 입력하여 접속해보십시오.
사용자 데스크톱 환경으로 Xfce(Xubuntu) 추가 설치
새로운 사용자 데스크톱 환경 설치.
- Xubuntu 설치$ sudo apt-get update $ sudo apt-get install xubuntu-desktop
새로운 데스크톱 환경 적용: xdmcp 데몬 재기동
$ sudo systemctl restart lightdm
Xmanager 접속 후 로그인 화면에서 xfce 세션이나 Xubuntu 세션을 선택합니다.(Xmanager 7의 경우 우분투 데스크톱을 지원합니다)
서비스 구동 및 정상 작동 여부 확인 방법
lightdm 구동 및 서비스 여부 확인
root@ubuntu:~# ps -aef |grep sbin\/lightdm|grep -v grep root 24568 1 0 15:51 ? 00:00:00 /usr/sbin/lightdm root@uby:/etc/lightdm# netstat -anep |grep \:177[^0-9] udp 0 0 0.0.0.0:177 0.0.0.0:* 0 18166350 24929/lightdm udp6 0 0 :::177 :::* 0 18166351 24929/lightdm => IPv6가 적용 중이지 않을 경우 안 나올 수 있습니다.
※ 참고: netstat 명령이 기본값으로 없을 수도 있습니다. 이 경우 apt install net-tools 명령을 root의 권한으로 실행하여 해당 패키지를 설치하거나, ss -uan |grep 177 명령을 사용하여 네트워크 소켓의 상태를 확인할 수 있습니다.
방화벽 확인
방화벽이 작동하지 않고 있는 아래와 같은 결과가 나오거나 방화벽을 작동해야 한다면 Iptables 매뉴얼을 참고하시어 udp 177번이 허용 상태인 결과가 나오게 해야 합니다.root@uby:~# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination다.
Xfce 설치 및 적용 확인
같은 사용자로 하는 다중 세션 설정
기본적으로 Ubuntu의 lightdm 설정은 같은 동일한 사용자로 여러 개의 XDMCP 세션이 생성되지 않도록 설정되어 있습니다. 다음 설정이 필요합니다.
DBUS 설정
/etc/X11/Xsession.d/75dbus_dbus-launch 파일에서 다음 내용을 추가합니다.if [ ! -z ${DISPLAY/:*/} ]; then STARTDBUS=yes fi
XDMCP 로그인 화면에서 사용자 선택 방법
어떤 사용자가 XDMCP 세션을 사용하고 있을 때 lightdm은 새로운 새션임에도 기존 세션의 연장으로 인식하여 기존 세션에 접속할려고 합니다.
사용자 이름 옆의 펼치기 버튼을 눌러 새롭게 사용자를 선택합니다.