WSL2에서 Cockpit 환경 실습하기: systemd 설정부터 접속까지

2025. 5. 30. 01:21·Infra

 

이번 글에서는 WSL2 환경에서 Cockpit을 설치하고 사용하는 방법을 정리했습니다.

Cockpit은 웹 기반 리눅스 서버 관리 도구로, 시스템 자원 모니터링, 서비스 관리, 계정 설정 등 다양한 기능을 GUI로 제공해줍니다.

특히 systemd 기반으로 동작하기 때문에, WSL 기본 환경에서는 별도 설정이 필요합니다.
그럼 바로 시작해보겠습니다. 😎


🔍 Cockpit이란?

Cockpit은 Red Hat에서 만든 웹 기반 리눅스 서버 관리 도구입니다.
터미널 없이도 브라우저를 통해 리눅스 시스템을 쉽게 관리할 수 있어, 초보자부터 전문가까지 모두에게 유용합니다.

특히 SSH 포트(22번)가 차단된 환경에서도 Cockpit 포트(기본 9090)만 열려 있다면, Cockpit의 웹 터미널(Shell) 기능을 통해 명령어를 직접 실행할 수 있습니다.

주요 기능

  • 실시간 리소스 모니터링 (CPU, 메모리, 디스크, 네트워크)
  • systemd 서비스 관리 및 로그 확인
  • 사용자 및 그룹 관리
  • 패키지 업데이트
  • 네트워크 및 디스크 설정
  • VM 및 컨테이너 관리 (모듈 설치 시)

WSL 환경 준비

Cockpit은 systemd 기반이므로, 먼저 WSL2에서 systemd를 활성화해야 합니다.

1. 현재 WSL 버전 확인

wsl -l -v

출력 예시:

NAME                   STATE           VERSION
Ubuntu-22.04           Running         2

VERSION이 2여야 합니다.

2. WSL 자체 버전 확인

wsl --version

만약 "잘못된 명령줄 옵션입니다"라고 뜬다면 → 구버전 WSL입니다.

✅ 최신 WSL 설치

  • PowerShell(관리자 권한) 실행:
wsl --install --web-download
  • 또는 Microsoft Store에서 Windows Subsystem for Linux 설치

설치 완료 후 PC를 재부팅합니다.

 

🛠 systemd 활성화

1. 설정 파일 수정

WSL 내부에서 다음 파일을 수정합니다:

sudo nano /etc/wsl.conf

내용 입력:

[boot]
systemd=true

 

저장 후 종료


2. WSL 종료 및 재실행

wsl --shutdown

다시 실행:

wsl

 


3. systemd 동작 확인

ps -p 1 -o comm=

출력이 systemd이면 정상입니다.

🚀 Cockpit 설치 및 실행

1. 시스템 업데이트

sudo apt update
sudo apt upgrade -y

2. Cockpit 설치

sudo apt install cockpit -y

🌐 웹 브라우저로 접속하기

Cockpit은 기본적으로 https://localhost:9090에서 실행됩니다.

브라우저 주소창에 다음 입력:

https://localhost:9090

자체 서명된 인증서이기 때문에 브라우저에서 경고가 뜰 수 있습니다. 무시하고 계속 진행하세요.

로그인에는 WSL 리눅스 계정을 사용합니다.

 

로그인에 성공했다면 아래처럼 시스템 개요를 표시하며, 외에도 터미널 접속 및 네트워크 트래픽 확인, 로그와 같은 정보들을 확인할 수 있습니다.

로그인 성공 후 개요 화면

 

터미널 창으로 이동 시 명령어 입력 가능

🧾 마무리 정리

이번 글에서는 WSL2 환경에서 Cockpit을 설치하고 사용하는 방법을 단계별로 살펴봤습니다.

추가로, systemd 활성화, SSH 포트 차단 시에도 Cockpit으로 터미널 접근이 가능한 상황까지 정리해봤습니다!

Cockpit 확장 모듈을 설치해서 가상 머신 관리, 컨테이너 운영, 네트워크 설정 같은 다양한 기능도 활용할 수 있으니, 필요하신 부분이 있다면 적극적으로 사용해 보시길 바랍니다.

'Infra' 카테고리의 다른 글

로그를 작성하는 기준이 있나요? "인포는 인포용, 디버그는 디버그용이요.."  (2) 2025.05.30
Jenkins에서 SSL 인증서 문제 해결하기: skip-certificate-check 플러그인, 괜찮은가요?  (1) 2025.05.28
LightSwitch 서비스 인프라 트러블 슈팅 - Docker Network  (0) 2024.05.28
'Infra' 카테고리의 다른 글
  • 로그를 작성하는 기준이 있나요? "인포는 인포용, 디버그는 디버그용이요.."
  • Jenkins에서 SSL 인증서 문제 해결하기: skip-certificate-check 플러그인, 괜찮은가요?
  • LightSwitch 서비스 인프라 트러블 슈팅 - Docker Network
HWBB
HWBB
흥미주도개발자
  • HWBB
    코딩공부방
    HWBB
  • 전체
    오늘
    어제
    • 분류 전체보기 (161)
      • 알고리즘 (61)
      • Android (27)
      • Kotlin (0)
      • Java (2)
      • Design Pattern (2)
      • React Native (1)
      • Python (0)
      • TIL (20)
      • Unity (0)
      • React (2)
      • AWS (0)
      • Git (11)
      • MFC (1)
      • Spring (4)
      • Computer Science (4)
      • Vue (4)
      • Infra (4)
      • 박현우 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • 승윤이
  • 공지사항

  • 인기 글

  • 태그

    깃허브
    programmers
    github
    코틀린
    Android
    코딩테스트
    baekjoon
    coding
    백준
    GIT
    C++
    algorithm
    Kotlin
    안드로이드
    Java
    알고리즘
    android studio
    프로그래머스
    자바
    안드로이드 스튜디오
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
HWBB
WSL2에서 Cockpit 환경 실습하기: systemd 설정부터 접속까지
상단으로

티스토리툴바