RedHat Enterprise Linux 7.x XDMCP 설정

Redhat Enterprise Linux(RHEL) 7.6~, 7.3, 7.2, 7.1, 7.0에서 XDMCP 접속을 위한 안내입니다.

(RHEL 7.6보다 상위 버전의 경우도 이 안내를 따라 진행해 보시기 바랍니다. 이 안내와 달리 접속에 문제가 있다면 기술지원 이메일로 해당 버전을 알려 주시면 확인해 보겠습니다.)

Xmanager 7을 사용할 경우와 Xmanager 7 Classic이나 Xmanager 6 이하 버전을 사용할 경우 내용이 달라지니 사용하고 계시는 버전에 맞는 설정을 하시기 바랍니다.

Xmanager 7을 사용하는 경우

다음은 모두 root의 권한으로 진행합니다.

  1. gdm 설정 파일

    # vi /etc/gdm/custom.conf

    (파일이 없는 경우 새로 생성합니다.)

    위 파일에서 다음과 같이 되도록 수정합니다.

    # GDM configuration storage
    ...
    [xdmcp]
    Enable=true
    MaxSessions=99
    DisplaysPerHost=99
    ...
    
    
  2. gdm 재기동

    # systemctl restart gdm
  3. 방화벽 해제(방화벽 규칙에서 UDP 177번 등록에 대한 내용은 해당 OS의 사용자 매뉴얼을 참고하세요)

    # systemctl stop firewalld.service

설정 확인

  1. gdm 프로세스 동작 확인

    # ps -ef |grep gdm
    ...
    root     17181     1  0 16:40 ?        00:00:00 /usr/sbin/gdm
    ...
  2. gdm XDMCP 서비스 확인

    # netstat -anep |grep 177
    ...
    udp        0      0 0.0.0.0:177             0.0.0.0:*                           0          130311     17181/gdm           
    ...
  3.  방화벽 확인

    # 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          

Xmanager 7 Classic 또는 Xmanager 6 이하 버전인 경우


RHEL 7의 기본 사용자 환경인 Gnome은 그래픽 렌더링을 위해 하드웨어를 직접 사용합니다. 그래서 Xmanager 6 이하 버전(Xmanager 7 Classic 포함)과 같이 원격에서 접속하는 경우에는 사용자 환경에 접속하지 못하거나 접속을 하더라도 매우 느립니다.

그러므로 RHEL 7을 사용할 경우에는 Gnome 사용자 환경과 XDMCP 데몬인 gdm을 사용할 수 없고 다른 XDMCP 데몬과 다른 사용자 환경을 사용해야 합니다.


다음은 XDMCP 데몬으로 gdm이 아닌 lightdm을, Gnome 사용자 환경 대신 Xfce나 KDE를 설치하고 사용하는 방법에 대한 안내입니다.
인터넷 접속 여부 등 실제 사용 환경과 다소 차이가 있을 수 있으며 다음 안내에 따라 변경한 시스템에서 생기는 문제에 대해서는 전적으로 사용자에게 있습니다.

다음은 모두 root의 권한으로 진행합니다.


XDMCP 데몬 교체 : gdm -> lightdm

  1. lightdm 설치
    저장소 정보 설치

    # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 또는 yum install http://download.netsarang.co.kr/files/etc/epel-release-7-0.2.noarch.rpm
    # yum install lightdm
  2. lightdm 설정

    # vi /etc/lightdm/lightdm.conf

    (파일이 없는 경우 새로 생성합니다.)

    위 파일에서 다음과 같이 되도록 수정합니다.

    [XDMCPServer]
    enabled=true (대소문자 정확히 구분. True=>X, TRUE => X)
  3. 기본 Display Manager인 gdm 해지 및 중지

    # systemctl disable gdm ; systemctl stop gdm
  4. 새 Display Manager로서 lightdm 지정 및 시동

    # systemctl enable lightdm; systemctl start lightdm
  5. 방화벽 해제(방화벽 규칙에서 UDP 177번 등록에 대한 내용은 해당 OS의 사용자 매뉴얼을 참고하세요)

    # systemctl stop firewalld.service

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

  1. 저장소 정보 설치(lighdm 설치 시 epel 저장소 정보를 설치했다면 이 부분 건너 뛰어도 됩니다.)

    # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 또는 yum install http://download.netsarang.co.kr/files/etc/epel-release-7-0.2.noarch.rpm
  2. 새로운 사용자 데스크톱 환경 설치(필요에 따라 선택적으로 설치합니다.
    - Xfce 설치

    # yum --skip-broken groupinstall xfce


    - KDE 설치

    # yum groupinstall kde-desktop
  3. 새로운 데스크톱 환경 적용: xdmcp 데몬 재기동

    # systemctl restart lightdm
  4. Xmanager 접속 후 로그인 화면에서 xfce나 KDE 선택

XDMCP 설정 확인 방법

  1. lightdm 프로세스 동작 확인

    # ps -aef |grep lightdm
    ...
    root     18337     1  0 16:49 ?        00:00:00 /usr/sbin/lightdm
    ...
  2. lightdm XDMCP 서비스 확인

    # netstat -anep |grep 177
    ...
    udp        0      0 0.0.0.0:177             0.0.0.0:*                           0          139838     18337/lightdm       
    udp6       0      0 :::177                  :::*                                0          139839     18337/lightdm            
    ...
  3. Xfce 설치 확인

    # yum group list
    Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
    ...
    Installed Groups:
       Xfce
    ...
  4.  방화벽 확인

    # 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