주:

Oracle Linux에서 Gnome Remote Desktop 구성

소개

Gnome Desktop 환경은 물리적 액세스 권한이 있는지 또는 헤드리스가 실행 중인지에 따라 원격으로 액세스할 수 있는 여러 가지 방법을 제공합니다. 물리적 액세스가 가능하고 모니터가 연결된 경우 Gnome Desktop 환경 설정 응용 프로그램에 내장된 기존 응용 프로그램을 활용할 수 있습니다.

Oracle Cloud Infrastructure에서 실행되는 것과 같은 원격 헤드리스 시스템의 경우 FreeRDP를 사용해야 합니다. FreeRDP는 사용자가 네트워크를 통해 원격 컴퓨터 시스템에 연결하고 제어할 수 있는 RDP(원격 데스크탑 프로토콜)의 오픈 소스 구현입니다. 이러한 세션은 단일 사용자 또는 다중 사용자 구성을 허용하며 서비스를 실행하려면 TLS 키 및 TLS 인증서를 설정해야 합니다.

목표

이 자습서에서는 다음 내용을 학습합니다.

필요 조건

Oracle Linux 배치

주: 고유 테넌시에서 실행 중인 경우 linux-virt-labs GitHub 프로젝트 README.md를 읽고 실습 환경을 배치하기 전에 필요 조건을 완료하십시오.

  1. 루나 데스크탑에서 터미널을 엽니다.

  2. linux-virt-labs GitHub 프로젝트를 복제합니다.

    git clone https://github.com/oracle-devrel/linux-virt-labs.git
    
  3. 작업 디렉토리로 변경합니다.

    cd linux-virt-labs/ol
    
  4. 필요한 모음을 설치합니다.

    ansible-galaxy collection install -r requirements.yml
    
  5. lab 환경을 배치합니다.

    ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e os_version="10"
    

    무료 실습 환경에서는 Python용 Oracle Cloud Infrastructure SDK에 대한 RPM 패키지를 설치하므로 localhost에 대한 추가 변수 ansible_python_interpreter가 필요합니다. 이 패키지 설치 위치는 사용 중인 Oracle Linux 버전을 기반으로 하는 시스템의 기본 Python 모듈 아래에 있습니다. 인벤토리 변수를 사용하면 localhost 이외의 호스트에서 실행되는 재생에 영향을 주지 않습니다.

    기본 배치 구성은 AMD CPU를 사용합니다. 명령행에서 새 쉐이프 변수 정의를 전달하여 인스턴스의 쉐이프를 변경할 수 있습니다.

    예: -e instance_shape="VM.Standard3.Flex"

    마찬가지로 Oracle Linux 이미지의 기본 버전은 `default_vars.yml 파일에 정의된 os_version 변수를 사용합니다. 명령줄에서 Oracle Linux 주 버전을 전달하여 이 값을 수정할 수 있습니다.

    예: -e os_version="9"

    중요: 플레이북이 성공적으로 실행될 때까지 기다렸다가 일시 중지 작업에 도달합니다. 플레이북의 이 단계에서 Oracle Linux 설치가 완료되고 인스턴스가 준비됩니다. 이전 플레이에서 배포하는 노드의 공용 및 전용 IP 주소를 인쇄합니다.

그래픽 데스크탑 환경 설치 및 FreeRDP

  1. 터미널을 열고 SSH를 사용하여 ol-node-01 instance에 연결합니다.

    ssh oracle@<ip_address_of_instance>
    
  2. 시스템의 패키지를 최신 릴리스로 업그레이드합니다.

    sudo dnf upgrade -y
    
  3. GNOME 데스크탑 환경 및 모든 종속성을 설치합니다.

    sudo dnf group install -y GNOME Fonts
    
  4. FreeRDP 패키지 설치

    sudo dnf install -y freerdp
    
  5. 재부트가 필요한지 확인합니다.

    sudo dnf needs-restarting -r
    

    필요한 경우 sudo reboot를 사용하여 시스템을 재부트한 다음 다시 연결합니다.

다중 사용자 RDP 서비스 구성

  1. 자체 서명된 TLS 인증서에 대한 디렉토리를 만듭니다.

    sudo -u gnome-remote-desktop mkdir -p ~gnome-remote-desktop/.local/share/gnome-remote-desktop
    
  2. 자체 서명된 TLS 인증서를 생성합니다.

    sudo -u gnome-remote-desktop winpr-makecert -silent -rdp -path ~gnome-remote-desktop/.local/share/gnome-remote-desktop rdp-tls
    
  3. 원격 데스크탑에 대한 TLS 키를 설정합니다.

    sudo grdctl --system rdp set-tls-key ~gnome-remote-desktop/.local/share/gnome-remote-desktop/rdp-tls.key
    

    --system 옵션은 여러 사용자 액세스에 필요한 원격 데스크탑 시스템 데몬을 구성합니다. 추가 명령 및 옵션은 grdctl --help를 실행하여 사용할 수 있습니다.

  4. TLS 인증서를 설정합니다.

    sudo grdctl --system rdp set-tls-cert ~gnome-remote-desktop/.local/share/gnome-remote-desktop/rdp-tls.crt
    
  5. RPD 인증서를 설정합니다.

    sudo grdctl --system rdp set-credentials oracle 12345678
    

    표시된 대로 명령줄에서 이러한 자격 증명을 전달하거나 자격 증명을 전달하지 않으면 사용자 이름과 암호를 입력하라는 메시지가 표시됩니다. 이러한 자격 증명은 Gnome Desktop 로그인을 표시하는 원격 RDP 세션에 대한 액세스만 허용합니다. 원격 데스크탑 세션에 액세스하려면 사용자에게 시스템에 실제 Linux 계정이 있어야 하며 해당 자격 증명으로 로그인해야 합니다.

  6. TLS 설정 및 RDP 자격 증명을 확인합니다.

    sudo grdctl --system status --show-credentials
    

    TLS 인증서 및 TLS 키가 일치된 세트인지 확인합니다. winpr-makecert를 사용하여 TLS 인증서를 생성할 때 동일한 이름의 동일한 폴더에 .key.crt 파일이 생성됩니다. status 명령의 --show-credentials 플래그는 사용자 이름과 암호를 숨기지 않으므로 해당 사용자 이름과 암호를 읽고 올바르게 입력했는지 확인할 수 있습니다.

  7. RDP 서비스를 사용으로 설정합니다.

    sudo grdctl --system rdp enable
    
  8. 서비스가 사용으로 설정되고 활성 상태인지 확인합니다.

    sudo grdctl --system status
    
  9. GDM 서비스를 사용으로 설정합니다.

    sudo systemctl enable --now gdm
    
  10. 시스템 레벨 원격 로그인 서비스를 사용으로 설정합니다.

    sudo systemctl enable --now gnome-remote-desktop.service
    
  11. 재부트 시 원격 데스크탑 서비스를 기본값으로 설정합니다.

    sudo systemctl set-default graphical.target
    
  12. 서비스가 실행 중인지 확인합니다.

    sudo systemctl status gnome-remote-desktop.service
    

    또한 sudo ss -lnpAinet | grep -e gnome-remote를 실행하여 포트 3389에서 수신 중인지 확인하여 서비스가 실행 중인지 확인할 수 있습니다.

RDP 클라이언트 열기 및 배포 테스트

RDP에 연결하는 데 사용할 수 있는 클라이언트가 여러 개 있지만 모두 작동하지는 않습니다. 작동하는 것으로 알려진 것은 Remmina와 Linux의 연결, macOS의 xfreerdp입니다. 이 지침은 모든 버전의 Oracle Linux에서 사용 가능하므로 Remmina에 초점을 맞추고, 접속은 Oracle Linux 10의 일부인 Gnome 47 이상에서만 사용할 수 있습니다. 무료 랩 환경에서 실행 중인 경우 Remmina 소프트웨어는 이미 Luna Desktop에 설치되어 있습니다.

  1. 새 터미널을 열고 SSH를 통해 ol-node-01 인스턴스에 연결합니다.

    -L 옵션은 로컬 전달을 사용으로 설정합니다. 그러면 로컬 포트가 열리고 SSH 터널을 통해 원격 RDP 서버에 연결됩니다.

    ssh -L 13389:localhost:3389 oracle@<ip_address_of_instance>
    

    기본 RDP 포트는 3389이므로 SSH 터널의 로컬 포트로 사용 가능한 포트 13389를 사용합니다.

  2. Applications(응용 프로그램) 메뉴, Internet(인터넷), Remmina를 차례로 눌러 Remmina를 엽니다.

    rdp 메뉴

  3. 이름 필드에 RDP 연결의 이름을 입력하고 프로토콜 값 목록에서 RDP - Remote Desktop Protocol을 선택합니다.

  4. 배치된 서버의 GUI 환경에 로그온합니다.

    다음 값을 입력한 후 Connect 버튼을 누릅니다.

    • 서버: localhost:13389
    • 사용자 이름: oracle
    • 비밀번호: 12345678

    rdp 로그인

    remmina -c rdp://oracle@localhost:13389를 사용하여 터미널에서 Remmina를 실행하여 연결할 수도 있습니다.

  5. Gnome Desktop Manager가 표시되어 Gnome 로그인 세션이 표시됩니다.

  6. 사용자의 Linux 자격 증명으로 로그인합니다.

    사용 가능한 실습 환경의 인증서는 다음과 같습니다.

    • 사용자 이름: oracle
    • 비밀번호: oracle
  7. 이제 시스템에 원격으로 로그온했습니다.

    Oracle Linux 10:

    '시작' 대화상자가 나타납니다.

    구이환영

    건너뛰기 버튼을 누르거나 Enter 키를 누르면 '시작' 대화 상자가 사라집니다.

    시작-사용-ol

    연결 문제가 발생하면 SSH 터널 연결을 통해 원격 서버에 연결하여 이러한 문제를 해결합니다.

    Oracle Cloud Infrastructure 인스턴스에 접속하려면 추가 단계를 수행해야 할 수도 있습니다. 자세한 내용은 Oracle Cloud Infrastructure 설명서의 인스턴스에 연결을 참조하십시오.

    Oracle VM VirtualBox에서 호스트하는 가상 머신에 연결하려는 경우 원격 액세스를 위해 추가 포트 전달을 구성해야 합니다. 설치된 Oracle VM VirtualBox 버전에 대한 사용자 설명서에서 가상 네트워크 구성 지침을 찾을 수 있습니다.

(선택 사항) 방화벽 규칙 구성

보안 개인 네트워크에서 실행 중인 경우 기본 포트 3389를 사용하는 RDP 서비스에 대한 방화벽 포트를 열 수 있습니다.

   sudo firewall-cmd --permanent --add-port=3389/tcp
   sudo firewall-cmd --reload

주: RDP는 TLS를 사용하여 프로토콜을 암호화하는 동안 방화벽을 이 포트에 열고 보호되지 않은 네트워크를 통해 RDP 서버에 직접 연결하면 안됩니다. 이 단계는 선택 사항으로 나열되지만 사용을 권장하지는 않습니다. 대신, 비선택적 단계에 설명된 대로 SSH 터널링 또는 다른 방식을 사용하여 연결을 보호하는 것을 고려해야 합니다.

다음 단계

이제 그래픽 응용 프로그램을 실행하기 위한 기능적인 원격 데스크탑 환경이 마련되어 있어야 합니다. Oracle Linux Training Station의 다른 내용을 확인해 보세요.

추가 학습 자원

docs.oracle.com/learn에서 다른 랩을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer가 되십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.