openclaw

openclaw 설치를 위한 windows mini PC(n100)와 wsl2(ubuntu) 설정들

crazyrk 2026. 4. 12. 13:10

 

23년 11월, AliExpress에서 꽤 괜찮은 물건을 하나 질렀다. FIREBAT T8 Plus 미니 PC. Intel N100 CPU에 16GB RAM, 512GB SSD를 장착하고도 가격이 고작 $98이었다. 그 이후로 주식 자동매매 등 잡다한 용도로 사용되다 반쯤 방치 상태였는데, 최근 OpenClaw 같은 AI Agent를 돌리기에 적합한 환경이 될 것 같아 다시 꺼내 설정을 정리해 봤다.


FIREBAT T8 Plus 소개

Firebat T8 plus(n100)
Firebat T8 plus(n100)

FIREBAT T8 Plus (N100 / 16GB / 512GB) 사양

항목 사양

CPU Intel 12th Gen Alder Lake-N N100 (4코어 4스레드)
클럭 기본 800MHz / 최대 3.4GHz (Turbo)
제조 공정 Intel 7 (10nm Enhanced SuperFin)
캐시 6MB Smart Cache
TDP 6W (SDP) / 최대 25W
내장 그래픽 Intel UHD Graphics (24EU, 최대 750MHz)
RAM 16GB LPDDR5 4800MHz (온보드 고정)
저장장치 512GB M.2 2242 NVMe SSD (최대 2TB 확장 가능)
운영체제 Windows 11 Home
디스플레이 출력 HDMI 2.0 × 3 (4K@60Hz 트리플 디스플레이 지원)
네트워크 (유선) 기가비트 이더넷 × 2 (RJ45)
네트워크 (무선) Wi-Fi 5 (802.11ac), Bluetooth 4.2
USB USB 3.1 × 3, USB 2.0 × 2
오디오 3.5mm 오디오 잭
크기 약 115 × 115 × 35mm (Mac mini 유사 폼팩터)
마운트 VESA 브라켓 포함

N100은 고성능 작업을 하기엔 분명 한계가 있다. 하지만 외부 AI 모델 API를 활용하는 구조라면 OpenClaw를 구동하는 데 전혀 무리가 없다. 생긴 것도 Mac mini와 흡사해서 공간도 적게 차지하고, 아래에서 설명할 원격 접속 설정까지 마치면 조용히 구석에 켜놓고 그냥 두면 된다.

물론 Mac mini처럼 로컬에서 자체 AI 모델을 직접 구동하는 건 N100 CPU의 성능상 어렵다. 하지만 외부 API(OpenAI, Claude 등)를 통해 구동하는 용도로는 충분하고, 전력 소비도 낮아 24시간 상시 운용에 부담이 없다.

 

miniPC 구동 예
miniPC 구동 예




WSL2 서버 환경 설정

미니 PC를 서버처럼 활용하기 위해 Windows 위에 WSL2(Ubuntu 22.04)를 올리고, SSH 및 원격 데스크톱 접속 환경을 구성했다. 전체 구성 흐름은 아래와 같다.

PC 부팅 & 로그온
  ├─► Chrome 원격 데스크톱 서비스 → 항상 원격 접속 대기
  │     └─► 로그온 세션 유지 (RDP와 달리 접속 해제 시 로그아웃 없음)
  │
  └─► 작업 스케줄러 (로그온 트리거)
        └─► wsl.exe -d Ubuntu-22.04 --exec sleep infinity
              └─► WSL2 Ubuntu 상시 유지
                    └─► sshd 자동 실행 (systemd)
                          └─► 방화벽 포트 22 오픈
                                └─► 외부에서 SSH 접속 가능 ✓

외부 접속 방법
  ├─► GUI 필요 시 : Chrome 원격 데스크톱 → remotedesktop.google.com
  └─► CLI 필요 시 : SSH → ssh user@<Windows_IP> -p 22

1. .wslconfig 설정 (Windows 측)

C:\Users\<사용자명>\.wslconfig 파일을 생성하거나 수정한다.

[wsl2]
guiApplications=false        # GUI 비활성화 (서버용)
networkingMode=mirrored      # Windows와 동일 IP 공유
autoMemoryReclaim=gradual    # 메모리 자동 반환
sparseVhd=true               # 디스크 공간 자동 회수

networkingMode=mirrored를 설정하면 WSL이 Windows와 동일한 IP를 공유하므로, 기존 NAT 모드에서 필요했던 포트포워딩(netsh portproxy) 작업이 불필요해진다. 네트워크 설정은 이렇게 하고 가는 게 여러모로 앞으로 편해진다...

변경 후에는 WSL을 재시작해 적용한다.

wsl --shutdown
wsl

2. WSL 내부 설정 (/etc/wsl.conf)

WSL Ubuntu 내부에서 아래 파일을 수정한다.

[boot]
systemd=true          # systemd 활성화 (서비스 관리 편의를 위해 권장)

[network]
hostname=my-wsl-server
generateHosts=true

systemd=true 설정 시 systemctl 명령으로 서비스를 관리할 수 있어 훨씬 편리하다.


3. 작업 스케줄러 - WSL 상시 유지

WSL은 활성 프로세스가 없으면 일정 시간 후 자동으로 종료된다. 이를 방지하기 위해 로그온 시 WSL 프로세스를 계속 살려두는 작업을 스케줄러에 등록한다. 작업스케줄러에서 새 작업을 등록하고 로그온 할 때 "wsl.exe -d Ubuntu-22.04 --exec sleep infinity"가 실행되게 설정한다. 이렇게 하면 windows 가 부팅하면 자동으로 ubuntu가 실행돼서 백그라운드에서 동작하고 있어서 언제든지 ssh로 접속할 수  있다. 명령어나 아래 스크립트에서 "Ubuntu-22.04"는 환경에 맞게 설치된 linux의 이름으로 변경해야 한다.

먼저, 아래와 같이 작업 스케줄러에서 새 작업을 만들자.

새 작업 만들기

 

일반 탭은 아래와 같이 설정하자.

작업의 일반 탭

 

트리거 탭은 로그온 할 때로 하자.

 

동작탭은 아래와 같이 프로그램에는 "wsl.exe"를, 인자에는 "-d Ubuntu-22.04 --exec sleep infinity"를 넣는다. 여기서 Ubuntu-22.04는 시스템에 설치된 linux 이름과 동일하게 변경해서 입력한다.

작업의 동작 탭

 

또는, 아래와 같이 PowerShell을 관리자 권한으로 실행 후 아래 명령을 입력해도 된다. 마찬가지로 Ubuntu22.04 부분은 시스템에 설치된 linux 이름으로 변경해서 실행한다.

$action = New-ScheduledTaskAction `
    -Execute "wsl.exe" `
    -Argument "-d Ubuntu-22.04 --exec sleep infinity"

$trigger = New-ScheduledTaskTrigger -AtLogOn

$settings = New-ScheduledTaskSettingsSet `
    -ExecutionTimeLimit 0 `
    -RestartCount 5 `
    -RestartInterval (New-TimeSpan -Minutes 1)

Register-ScheduledTask `
    -TaskName "WSL2-KeepAlive" `
    -Action $action `
    -Trigger $trigger `
    -Settings $settings `
    -RunLevel Highest `
    -Force

⚠️ 이 방식은 Windows에 로그온 된 상태에서만 WSL이 유지된다.
그래서 아래에서 설명할 Chrome 원격 데스크톱으로 항상 로그인 상태를 유지하는 것이 핵심이다.


4. SSH 서버 설치 및 설정

WSL Ubuntu 내부에서 SSH 서버를 설치한다.

sudo apt update && sudo apt install -y openssh-server

/etc/ssh/sshd_config 파일에서 주요 항목을 확인/수정한다.

Port 22
ListenAddress 0.0.0.0
PermitRootLogin no
PasswordAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

systemd를 활성화한 경우, 부팅 시 자동 시작으로 등록한다.

sudo systemctl enable ssh
sudo systemctl start ssh
sudo systemctl status ssh

5. Windows 방화벽 - SSH 포트 허용

PowerShell을 관리자 권한으로 실행 후 인바운드 규칙을 추가한다.

New-NetFirewallRule `
    -DisplayName "WSL2 SSH" `
    -Direction Inbound `
    -Protocol TCP `
    -LocalPort 22 `
    -Action Allow `
    -Profile Any

mirrored 네트워크 모드이므로 별도 포트포워딩은 필요 없다.

외부에서 SSH로 접속할 때는 Windows의 IP 주소를 그대로 사용하면 된다.

# 같은 네트워크 내 다른 PC에서
ssh <사용자명>@<Windows_IP> -p 22

# Windows IP 확인 (PowerShell)
ipconfig | findstr IPv4

6. Chrome 원격 데스크톱 설정

원격으로 GUI 환경에 접속하기 위해 Chrome 원격 데스크톱을 사용한다.
Windows 기본 RDP(원격 데스크톱)를 사용하지 않은 이유는, RDP는 접속을 끊으면 세션이 잠금/로그아웃 상태가 되어 작업 스케줄러로 유지되던 WSL도 함께 종료되기 때문이다. Chrome 원격 데스크톱은 접속을 끊어도 기존 세션이 그대로 유지된다.

Chrome RDP vs Windows RDP 비교

Chrome 원격 데스크톱 Windows RDP

세션 유지 ✅ 기존 세션 그대로 유지 ❌ 접속 해제 시 잠금
로그인 상태 유지
WSL 상시 유지 가능
별도 포트 개방 불필요 ✅ (Google 서버 중계) ❌ (3389 포트 필요)
외부망 접속 공유기 포트포워딩 필요

설치 방법

  1. Chrome 브라우저에서 아래 주소에 접속한다.
    👉 https://remotedesktop.google.com/access
  2. 원격 액세스 설정 클릭 → 다운로드 버튼으로 호스트 프로그램 설치
  3. 설치 완료 후 PC 이름PIN 번호(6자리 이상) 설정

설치 후 Chrome 원격 데스크톱은 Windows 서비스로 자동 등록되어, 부팅 후 로그온만 되어 있으면 항상 원격 접속 대기 상태가 된다.

서비스 등록 여부는 아래 명령으로 확인할 수 있다.

Get-Service | Where-Object { $_.Name -like "*chrome*remote*" }

접속 방법

다른 PC 또는 모바일에서 동일한 Google 계정으로 아래 주소에 접속한 후 PIN을 입력하면 된다.

👉 https://remotedesktop.google.com/access


마무리

이 구성을 완료하면 N100 미니 PC가 조용히 구석에서 24시간 서버 역할을 하게 된다. 평소엔 SSH로 CLI 작업을 처리하고, 가끔 GUI가 필요할 때는 Chrome 원격 데스크톱으로 접속하면 된다. OpenClaw 같은 AI Agent를 상시 구동하는 용도로도 딱 적합한 구성이다.

앞으로 OpenClaw 설치 및 설정에 대한 내용은 별도 포스팅으로 정리할 예정이다.