라즈베리파이4 우분투 설치와 SSH 원격 접속 설정 방법

라즈베리파이 4는 SD카드에 이미지를 한 번 구우면 그대로 리눅스 데스크톱이 되는 보드입니다. 다만 설치를 마친 뒤에도 모니터와 키보드를 계속 물려 두고 쓰기는 번거롭습니다. 이 글은 라즈베리파이 4에 Ubuntu 데스크톱을 설치하고, SSH 서버를 올려 윈도우 PC에서 원격으로 붙기까지의 순서를 정리한 것입니다. 준비물과 메모리 요구 사항, Raspberry Pi Imager 사용법, sshd 기본값은 공식 문서에서 확인해 근거를 함께 달았습니다.
설치 전에 확인할 것: 모델, 메모리, 데스크톱과 서버
우분투는 라즈베리파이용 이미지를 데스크톱과 서버 둘로 나눠 냅니다. 데스크톱 버전은 GUI 환경이 필요할 때 적합하고, 와이파이 설정처럼 초기 환경을 잡을 때 편합니다. 서버 버전은 CLI로만 운영하는 가벼운 리눅스 서버 환경을 줍니다. 이 글의 실습은 GUI가 필요해서 데스크톱 버전(Ubuntu 22.04 LTS)을 씁니다.
고르기 전에 메모리부터 봐야 합니다. 우분투 라즈베리파이 다운로드 페이지는 데스크톱에 최소 4GB RAM과 16GB 저장 공간이 필요하다고 적어 두었고, Ubuntu Desktop 설치 튜토리얼도 라즈베리파이 4의 4GB나 8GB RAM 모델에서만 동작한다고 못을 박습니다. 손에 있는 보드가 2GB 모델이라면 데스크톱 대신 서버 이미지를 고르는 쪽이 낫습니다. 같은 튜토리얼이 정리한 준비물은 microSD 카드(16GB 이상 권장), 마이크로 USB-C 전원 케이블, HDMI 모니터와 마이크로 HDMI 케이블, USB 키보드, 그리고 microSD를 읽을 수 있는 PC입니다.
다운로드 페이지가 내주는 LTS 버전은 시점에 따라 바뀝니다. 받기 전에 대상 기기 표기와 버전을 페이지에서 직접 확인하세요. 데스크톱과 서버는 파일이 따로 있으니 내려받는 자리에서 어느 쪽을 쓸지 정하면 됩니다.
Raspberry Pi Imager로 우분투 이미지 굽기
Imager 설치 방법은 라즈베리파이 공식 시작 문서가 운영체제별로 안내합니다. 윈도우와 맥은 홈페이지에서 설치 파일을 받아 실행하고, Raspberry Pi OS에서는 apt로 바로 깔 수 있으며, 그 밖의 리눅스는 AppImage를 받아 실행 권한을 주는 방식입니다.
# Raspberry Pi OS 에서 Imager 설치
sudo apt install rpi-imager
Imager를 실행하면 기기, 운영체제, 저장 장치를 차례로 고르게 됩니다. 우분투 이미지는 이미 받아 두었으니 운영체제 목록에서 "Use custom"을 눌러 내려받은 이미지 파일을 직접 지정합니다. 같은 문서도 내 컴퓨터에 있는 이미지로 설치하려면 Use Custom을 고르라고 적고 있어서, 목록에 없는 배포판을 굽는 표준 경로가 이쪽입니다. 그다음 SD카드를 선택하고 쓰기를 진행합니다.
저장 장치 화면에서는 한 번 더 눈으로 확인하는 편이 안전합니다. 공식 문서는 장치가 여러 개 붙어 있으면 용량으로 구분하거나 나머지를 뽑으라고 권하고, 호스트 PC의 디스크를 날리지 않도록 "Exclude system drives" 옵션을 켠 채로 두라고 경고합니다. 굽기가 시작되면 되돌릴 수 없습니다.
라즈베리파이 최초 부팅 설정
SD카드를 라즈베리파이에 삽입하고 전원을 켭니다. 튜토리얼은 HDMI 화면과 USB 키보드를 먼저 연결한 뒤 전원을 넣으라고 안내합니다. 부팅 로그가 지나가고 최초 설정 마법사가 뜨면 아래 순서로 진행합니다.
- 언어 설정: English
- 와이파이 연결: 사용 가능한 네트워크 선택 후 비밀번호 입력
- 사용자 계정 설정: username/password 를 편한 대로 (이 글에서는 예시로 ubuntu/ubuntu)
우분투 공식 튜토리얼은 이 마법사가 언어, 키보드 레이아웃, 시간대, 사용자 계정을 차례로 묻는다고 적어 두었습니다. 키보드 레이아웃 단계에서는 @ 와 " 키가 제대로 찍히는지 확인하라는 안내가 붙습니다. 최초 설정을 마치면 우분투 데스크톱 화면으로 들어갑니다.
와이파이는 되도록 이 단계에서 잡아 두세요. 랜선을 꽂을 수 없는 자리에 보드를 두면 뒤에서 SSH 접속에 쓸 IP 자체가 나오지 않습니다. 미리 접속할 네트워크 이름과 비밀번호를 확인해 두면 여기서 시간을 버리지 않습니다.
SSH 서버 설치와 IP 확인
라즈베리파이의 터미널을 열어 Ubuntu를 최신 상태로 업데이트한 후 SSH 서버를 설치합니다.
# 패키지 업데이트
sudo apt update
# SSH 서버 설치
sudo apt install openssh-server
# net-tools 설치 (ifconfig 명령어 사용)
sudo apt install net-tools
# IP 확인
ifconfig
패키지 이름은 우분투 서버 문서의 OpenSSH 항목이 안내하는 것과 같습니다. 같은 문서는 설정 파일이 /etc/ssh/sshd_config 이고 조각 설정은 /etc/ssh/sshd_config.d/ 아래에 둔다고 설명하며, 설정을 손댄 뒤에는 sudo sshd -t 로 문법을 검사하고 sudo systemctl restart ssh.service 로 서비스를 다시 시작하라고 안내합니다. 지금 단계에서는 설정을 건드릴 일이 없지만, 접속이 안 될 때 들여다볼 파일이 어디인지는 알아 두는 편이 낫습니다.
기본값을 알아 두면 문제가 생겼을 때 볼 곳이 줄어듭니다. sshd_config 매뉴얼 페이지에 따르면 Port 기본값은 22, PasswordAuthentication 기본값은 yes, PermitRootLogin 기본값은 prohibit-password 입니다. 설치 직후에 계정과 비밀번호만으로 붙을 수 있는 이유가 두 번째 항목이고, 약한 비밀번호가 그대로 위험이 되는 이유도 같은 항목입니다. 예시로 쓴 ubuntu/ubuntu 는 집 안 네트워크에서 실습할 때 이야기입니다. 공유기 밖으로 포트를 열어 둘 생각이라면 계정과 비밀번호부터 바꾸세요.
IP를 뽑는 데 쓴 ifconfig 는 net-tools 패키지가 제공합니다. ifconfig 매뉴얼 페이지는 BUGS 항목에서 하드웨어 주소를 포함한 링크 계층 정보는 iproute2 패키지의 ip link 를 쓰라고 권합니다. 우분투에서 이런 대체 관계가 종종 보이는데, 터미널 도구를 아직 손에 익히는 중이라면 리눅스 필수 명령어 20가지 총정리를 먼저 훑고 오는 것도 방법입니다.
윈도우에서 PuTTY로 원격 접속하기
윈도우의 Putty를 통해 ssh 원격 접속을 테스트해볼 수 있습니다. 만든 쪽 사이트는 PuTTY를 "a free SSH and Telnet client" 로 소개하고, 윈도우와 유닉스 계열에서 동작한다고 밝히고 있습니다. 내려받아 실행한 뒤 접속 정보를 채웁니다.
- Host-IP: 라즈베리파이 IP (예: 192.168.0.13)
- Port: 22, sshd 매뉴얼이 밝힌 기본 포트
- username/password: 설정한 계정 정보 입력 (예: ubuntu/ubuntu)
터미널 창이 열리고 로그인 프롬프트에서 계정이 통과하면 성공입니다. 실패한다면 IP를 잘못 적었는지, 라즈베리파이와 PC가 같은 네트워크에 있는지, openssh-server 설치가 끝났는지를 차례로 확인합니다. 라즈베리파이 쪽 IP는 공유기가 다시 나눠 주면서 바뀔 수 있으니, 접속이 갑자기 끊겼다면 ifconfig 부터 다시 실행해 보세요.
자주 막히는 지점과 다음 실습
이미지 파일은 내려받는 도중 손상될 수 있습니다. 굽기나 부팅에서 오류가 나면 붙잡고 원인을 파기보다 파일을 지우고 다시 받는 쪽이 빠릅니다. 와이파이 환경을 미리 설정해 두지 않으면 초기 설정에서 난항을 겪는다는 점도 앞에서 적은 그대로입니다. 화면 없이 보드만 켜 둔 상태에서는 이 두 가지가 대부분의 시간을 잡아먹습니다.
여기까지 왔다면 라즈베리파이는 모니터를 떼고 책상 구석에 둬도 되는 작은 리눅스 서버가 됩니다. 교육용 프로젝트부터 IoT 장치까지 붙여 볼 수 있고, 원격으로 애플리케이션을 올리고 관리하는 용도로도 그대로 쓸 수 있습니다. 파이썬 API를 하나 얹어 보고 싶다면 FastAPI로 만드는 간단한 Todo List 앱이 이어서 보기 좋고, 브라우저 쪽 화면까지 만들 생각이라면 React 상태 관리 Recoil 사용법도 참고가 됩니다.
Ubuntu Desktop 설치 튜토리얼준비물과 최초 부팅 마법사 순서를 확인할 때 Ubuntu Server OpenSSH 문서sshd_config 위치와 서비스 재시작 명령을 확인할 때
이미지는 램 용량으로 고릅니다
이미지 선택은 보드의 램 용량으로 정해집니다. 4GB 이상인 라즈베리파이 4 라면 데스크톱 이미지, 2GB 모델이라면 서버 이미지 쪽입니다. 다만 지금 어느 모델에 어떤 이미지가 올라가 있는지는 우분투 다운로드 페이지에서 굽기 전에 한 번 더 확인하세요.
원격 접속이 목적이더라도 최초 부팅만은 모니터와 키보드를 붙여 두는 편이 낫습니다. 와이파이를 잡아야 ifconfig 로 볼 IP 가 생기고, 그 IP 가 있어야 PuTTY 로 22번 포트에 붙습니다. 접속이 막혀 /etc/ssh/sshd_config 를 손댔다면 sshd -t 로 검사하고 서비스를 다시 시작합니다.
쓰려는 보드의 램 용량부터 확인하고, 그 숫자에 맞는 이미지 하나를 골라 내려받으세요.
출처: Install Ubuntu on a Raspberry Pi / How to install Ubuntu Desktop on Raspberry Pi 4 / Raspberry Pi Getting started / Ubuntu Server OpenSSH / sshd_config(5) / ifconfig(8) / PuTTY