[환경설정] google chrome remote desktop 사용하여 서버 원격 접속
1. Google Chrome Remote Desktop의 기본 원리
Google Chrome Remote Desktop은 한 컴퓨터(원격 컴퓨터)를 다른 컴퓨터나 모바일 기기(로컬 기기)에서 원격으로 제어할 수 있게 해주는 도구
클라이언트와 서버
서버: 원격으로 제어될 컴퓨터(Ubuntu 20.04가 설치된 컴퓨터)에 설치되는 소프트웨어입니다. 이 서버가 화면을 캡처하고 키보드/마우스 입력을 받아 처리합니다.
클라이언트: 원격 접속을 시도하는 기기(예: 다른 PC의 Chrome 브라우저 또는 스마트폰의 앱)입니다. 클라이언트는 서버에 연결하여 화면을 보고 제어합니다.
네트워크 연결:
- 두 기기(서버와 클라이언트)는 인터넷을 통해 연결됩니다. Google의 서버가 중간에서 이 연결을 중개. 즉, 직접적인 IP 주소 연결이 아니라 Google 계정을 통해 인증되고 연결
- 데스크톱 환경: 원격 컴퓨터(Ubuntu)에서 화면을 표시하려면 데스크톱 환경(GNOME, XFCE 등)이 필요합니다. Chrome Remote Desktop은 이 데스크톱 환경을 가상으로 실행하여 원격 클라이언트에 화면을 전송합니다.
2. 설치 과정의 큰 그림
- Google Chrome 설치: 클라이언트와 서버 모두 Chrome 브라우저를 사용하므로, Ubuntu에 Chrome 브라우저를 설치
- Chrome Remote Desktop 확장 프로그램 설치: Chrome 브라우저에서 원격 접속 기능을 활성화하기 위해 확장 프로그램을 추가
- Chrome Remote Desktop 호스트 설치: Ubuntu에서 서버 역할을 수행할 소프트웨어를 설치
- 설정: 원격 접속을 허용하도록 Ubuntu를 설정하고, Google 계정과 PIN을 통해 인증을 설정
- 데스크톱 환경 준비: 원격 접속 시 화면을 표시할 데스크톱 환경을 설정
3. 설치 및 실행
이제 각 단계를 하나씩 자세히 설명하며, 왜 이런 과정을 거치는지와 어떤 원리로 동작하는지 이해하기 쉽게 풀어보겠습니다.
3.1 Google Chrome 설치
- 명령어:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install ./google-chrome-stable_current_amd64.deb
- 원리:
- Chrome Remote Desktop은 Google Chrome 브라우저를 기반으로 동작합니다. 클라이언트(원격 접속을 시도하는 기기)와 서버(Ubuntu) 모두 Chrome 브라우저를 사용합니다.
- Ubuntu에는 기본적으로 Firefox 브라우저만 설치되어 있으므로, Google에서 제공하는 Chrome 브라우저 설치 파일(
.deb
)을 다운로드하여 설치합니다.
- 의미:
- Chrome 브라우저는 원격 접속 설정을 위한 인터페이스(웹사이트)와 인증(Google 계정 로그인)을 처리하는 도구입니다.
3.2 Chrome Remote Desktop 확장 프로그램 설치
- Chrome 웹 스토어에서 "Chrome Remote Desktop" 확장 프로그램을 설치합니다.
- 의미:
- 이 확장 프로그램이 없으면
remotedesktop.google.com
웹사이트에서 원격 접속 설정을 할 수 없습니다. 클라이언트와 서버 모두 이 확장 프로그램을 필요로 합니다.
- 이 확장 프로그램이 없으면
3.3 Chrome Remote Desktop 호스트 설치
3.3.1 서버
터미널에 입력
비밀번호 설정
3.3.2 Client
wget https://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb
sudo apt install ./chrome-remote-desktop_current_amd64.deb
- 이 단계에서는 Ubuntu에서 서버 역할을 수행할 소프트웨어(호스트)를 설치합니다. 이 호스트는 백그라운드에서 실행되며, 원격 클라이언트의 접속 요청을 받아 화면을 전송하고 입력을 처리합니다.
- .deb 파일은 Ubuntu에서 사용하는 소프트웨어 설치 패키지 형식입니다. apt 명령어는 이 패키지를 설치하고 필요한 의존성을 자동으로 해결합니다.
그런데 화면이 안나온다...!
3.4 데스크톱 환경 준비
- 원격 접속 시 클라이언트는 Ubuntu의 화면을 봐야 합니다. 이를 위해 Ubuntu에서 데스크톱 환경(GNOME, XFCE 등)이 실행되어야 함.
- Chrome Remote Desktop은 물리적인 디스플레이(모니터)가 없는 상태에서도 가상 데스크톱 세션을 실행할 수 있도록 설정 파일(~/.chrome-remote-desktop-session)을 사용
- 기본 GNOME 환경은 무거워서 문제가 발생할 수 있으므로, 더 가벼운 XFCE를 설치함
- 데스크톱 환경이 없거나 잘못 설정되면 클라이언트가 검은 화면을 보거나 연결이 끊길 수 있습니다. 이 단계는 원격 접속 시 화면을 표시하기 위한 필수 설정
-> 수정필요
- XFCE 사용
sudo apt install xfce4 xfce4-goodies
- nano로 ./chrome-remote-desktop-session 편집
echo "exec /usr/bin/startxfce4" > ~/.chrome-remote-desktop-session
근데 이러면 신기하게 파일관련 프로그램만 계속 gui가 원격접속 한 곳으로 간다...
3.5 임시로 터미네이터 설치
- 서버 작업은 여기서... ㅎ..
sudo apt update
sudo apt install terminator