개념 사전 · 프로그램

Apache Guacamole

과카몰리 · Guacamole

은 웹 브라우저로 같은 원격 접속을 사용할 수 있게 하는 게이트웨이이다. 이 사용자와 연결 권한을 관리하고 가 대상 원격 프로토콜을 처리한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 브라우저에서 별도 전용 원격 클라이언트 없이 접속 화면을 제공한다.
  • 포털 사용자와 허용된 대상 연결을 인증·권한 설정에 연결한다.
  • 를 통해 원격 프로토콜을 브라우저용 통신 표현으로 중계한다.

02어떤 순서로 동작하나

  1. 웹 접속

    브라우저가 HTTPS의 에 접속하고 포털 을 수행한다.

  2. 연결 권한 선택

    사용자에게 허용된 대상·프로토콜·접속 설정을 선택한다.

  3. 중계

    웹앱이 에 연결을 요청하고 가 대상 · 등에 연결을 만든다.

  4. 화면·입력 전달

    대상 출력과 사용자 입력을 브라우저 경로로 중계하고 각 구간의 종료·오류를 관리한다.

03먼저 알아둘 용어와 구성요소

브라우저 세션과 인증·연결 목록을 관리하는 구성 요소다. 대상 운영체제에 로그인할 계정과 포털 로그인 계정은 같아야 하는 것이 아니다.
프로토콜을 처리하는 프록시 데몬이다. 웹앱과의 연결 및 대상 호스트로의 연결은 별도 네트워크 경계다.
.properties·확장·라이브러리 등의 설정을 찾는 디렉터리다. 실제 웹앱 가 어느 경로를 사용하는지와 읽기 권한이 중요하다.
사용자·연결 권한을 공급하는 플러그인 계층이다. 기본 파일·DB·디렉터리 등의 인증 구성은 요구에 맞게 선택한다.
가 대상에 사용하는 원격 접속 프로토콜이다. 지원 라이브러리와 서버 정책이 맞아야 하며 하나의 성공이 다른 프로토콜 지원을 증명하지 않는다.
사용자가 브라우저와 원격 세션 사이 자료를 교환하는 UI다. 브라우저 권한·HTTPS·대상 정책에 따라 동작 범위가 달라진다.
LEARN THROUGH PRACTICE

RDP 서비스·리스너·방화벽·계정의 네 경계 확인하기

접속의 전제 조건을 서비스 화면과 리슨·그룹 조회 결과로 나누어 읽는다.

실습 구성과 전제

  • 서비스와 방화벽 화면, PowerShell 조회는 여러 실습 환경의 사례다. 한 컴퓨터에서 모두 확인한 연속 증거로 취급하지 않는다.
  • 지원되는 호스트와 허용된 관리 계정을 가정한다. 명령은 상태 조회이며 공개망으로 포트를 개방하지 않는다.
  1. 서비스 실행과 시작 유형을 구분한다

    • Remote Desktop Services의 Running은 현재 실행 상태이고 Automatic은 시작 설정이다. 둘이 보인다고 RDP 포트의 실제 수신이나 사용자 로그온 권한까지 확인된 것은 아니다.
    • 클라이언트 접속 전에는 해당 서비스와 소켓의 관계를 확인한다. 서비스 이름은 표시 언어와 실제 서비스 식별자가 다를 수 있다.
    powershell
    Get-Service -Name TermService
    Get-NetTCPConnection -LocalPort 3389 -State Listen

    호스트에서 서비스와 리스너를 조회하는 예시다.

    9/8 - guacamole, RDP BF · 설정·관리 화면 5원본 크기로 보기 ↗
    • Remote Desktop Services 행이 Running으로 표시된다.
    • Startup Type은 Automatic으로 표시되어 현재 상태와 시작 방식이 별도 열에 있다.
    확인 기준

    서비스 상태 다음에는 실제 리슨 포트와 주소를 확인한다.

  2. 방화벽 규칙의 프로토콜과 적용 범위를 읽는다

    • RDP의 3389 수신 허용 규칙이 활성화되어 있다. 규칙의 사용 여부만 보지 말고 적용 프로필·원격 주소 범위·상충하는 차단 정책을 함께 확인해야 한다.
    • 현재 네트워크 프로필이 규칙 적용 프로필과 다르면 목록에 Enabled가 보여도 기대한 경로가 열리지 않을 수 있다.
    9/8 - guacamole, RDP BF · 설정·관리 화면 3원본 크기로 보기 ↗
    • 원격 데스크톱 사용자 모드 TCP 수신 규칙이 Allow와 Enabled 상태로 보인다.
    • 프로토콜은 TCP, 로컬 포트는 3389로 표시되어 어떤 연결을 다루는지 알 수 있다.
    확인 기준

    규칙이나 다른 포트의 허용을 3389의 증거로 대신하지 않는다. 실제 클라이언트 경로에서 확인한다.

  3. 리스너와 사용자 자격을 연결하되 로그온 성공은 따로 본다

    • 별도 PowerShell 화면은 · 리슨, 활성 로컬 사용자, Remote Desktop Users 그룹을 조회한다. 각 출력은 접속 조건의 일부를 확인한다.
    • 그룹 소속 외에도 원격 로그온 허용·거부 권리, NLA 인증, 계정 제한이 작용한다. 을 경유하면 브라우저→게이트웨이와 게이트웨이→RDP 연결도 따로 확인해야 한다.
    powershell
    Get-LocalUser -Name labuser
    Get-LocalGroupMember -SID "S-1-5-32-555"

    labuser는 재구성 계정이다. SID는 Remote Desktop Users 기본 그룹을 언어와 무관하게 지정한다.

    Windows RDP 연결 설정원본 크기로 보기 ↗
    • 3389에 대해 IPv4와 IPv6 Listen 행이 보인다.
    • 테스트 사용자의 Enabled=True와 Remote Desktop Users 그룹 구성원 조회 결과가 함께 표시된다.
    확인 기준

    계정 활성화나 그룹 조회만으로 실제 RDP 로그인 성공을 선언하지 않는다. 실패 시 인증과 로그온 권리의 사건을 같은 시각으로 추적한다.

실습에서 확인한 동작 원리

  • 서비스 실행·포트 리슨·방화벽 허용·로그온 권한은 각각 독립된 필요 조건이다.
  • 게이트웨이를 쓸 때에는 사용자 브라우저의 성공 화면과 실제 RDP 세션 수립을 구분한다.
관련 개념·전체 실습 화면 이어서 읽기 →
동작·명령 참고 문서

04예제로 따라가기

  • 포털 로그인이 성공해도 대상 의 RDP 인증이나 원격 로그온 권리가 없으면 바탕화면 연결은 실패한다.
  • 브라우저와 웹앱 사이 HTTPS를 적용한 것만으로 별도 호스트의 연결까지 자동 보호되는 것은 아니다.
  • Ctrl+Alt+Shift는 메뉴를 여는 기본 동작으로 설명할 수 있으며 클립보드 보호를 일괄 해제하는 스위치로 이해하지 않는다.

05혼동하기 쉬운 점과 확인 기준

  • 웹 포털··대상 호스트의 인증과 연결 실패를 같은 계정 오류로 합치지 않는다.
  • 설정 파일에는 대상 계정 등 민감정보가 들어갈 수 있으므로 디렉터리 생성만으로 보호됐다고 보지 않고 실제 파일 소유권·읽기 권한을 제한한다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.