본문 바로가기
서버 인프라 실무

Ubuntu 24.04 설치 USB 만들기 & 서버 최소 설치 옵션(보안·파티션·네트워크까지)

by yamoojin83 2025. 10. 18.

Ubuntu 24.04 설치 USB 만들기 & 서버 최소 설치 옵션(보안·파티션·네트워크까지)

처음 서버를 올릴 때는 설치 USB를 올바르게 만드는 것과, 설치 중 최소 옵션만 선택해 가볍고 안전한 베이스를 만드는 것이 핵심입니다. 이 글은 Ubuntu 24.04 LTS를 기준으로 ISO 다운로드 → 체크섬 검증 → USB 굽기(Windows/macOS/Linux)를 거쳐, 서버 최소 설치·파티션·네트워크·초기 보안까지 바로 실전에 쓰는 순서로 정리했습니다.


1) ISO 다운로드 & 체크섬 검증(필수)

설치 실패의 상당수는 손상된 이미지에서 시작됩니다. 반드시 SHA256 체크섬으로 파일 무결성을 확인하세요.

# macOS / Linux
shasum -a 256 ubuntu-24.04-live-server-amd64.iso
# 출력된 해시가 공식 해시와 일치하는지 비교

Windows는 PowerShell에서 다음으로 확인할 수 있습니다.

# Windows PowerShell
Get-FileHash .\ubuntu-24.04-live-server-amd64.iso -Algorithm SHA256

2) 설치 USB 만들기(환경별 방법)

2-1) Windows: Rufus

  1. Rufus 실행 → 장치에 USB 선택
  2. 부팅 선택: 다운받은 ubuntu-24.04-live-server-amd64.iso
  3. 파티션 방식: UEFI 최신 장비는 GPT, 구형/BIOS 호환은 MBR
  4. 파일 시스템: 기본(FAT32) → 시작

UEFI 장비 대부분은 GPT + UEFI가 권장입니다. 오류가 나면 MBR/BIOS 조합으로 재시도하세요.

2-2) macOS / Linux: balenaEtcher(간편)

  1. Etcher 실행 → Flash from file에서 ISO 선택
  2. Select target으로 USB 선택 → Flash

2-3) macOS / Linux: dd(고급)

# USB 식별 (Linux)
lsblk
# 예: /dev/sdb 라면 <주의: 대상 디스크 전체를 덮습니다!>
sudo dd if=ubuntu-24.04-live-server-amd64.iso of=/dev/sdb bs=4M status=progress oflag=sync

# macOS
diskutil list
# /dev/disk4 가 USB라면 언마운트 후 dd
diskutil unmountDisk /dev/disk4
sudo dd if=ubuntu-24.04-live-server-amd64.iso of=/dev/rdisk4 bs=4m

3) 부팅 & BIOS/UEFI 설정 팁

  • 부팅 키: F12/F2/Del(제조사마다 다름) → USB 선택
  • UEFI 모드 권장(보안·호환성 ↑). 구형 장비는 Legacy/CSM 사용
  • Secure Boot: 기본 On 이어도 서버 설치 가능. 드라이버 문제 시 일시적으로 Off

4) 설치 마법사: 서버 최소 설치가 답

4-1) 키보드/네트워크/미러

  • 키보드: Korean + English(US) 조합 추천
  • 네트워크: DHCP 자동이면 통과, 고정 IP가 필요하면 설치 중에 설정 가능
  • 미러: 기본 미러 사용 → 속도 문제면 설치 후 변경 가능

4-2) 설치 종류 선택

Minimal(최소)을 선택하세요. GUI, 불필요한 데스크탑 패키지는 배제합니다.

4-3) 스토리지(파티션) 가이드

  • 단일 디스크 초보용: Use an entire disk + LVM 사용
  • 서버 권장 베이스:
    • / (루트): 20~40GB
    • /var: 로그/도커/데이터 증가를 고려해 넉넉히(예: 40~100GB)
    • /home: 필요 시 분리
    • swap: RAM 8~16GB 기준 2~4GB(운영상 모니터링 후 조정)

RAID가 필요하면 설치 후 mdadm/LVM RAID 구성도 가능합니다. 초보자는 단일 디스크 + LVM으로 시작했다가 필요 시 확장하세요.

4-4) 사용자/SSH

  • 관리자 계정 생성(루트 비활성 유지) · 호스트명 설정
  • Install OpenSSH server 체크(원격 접속 필수)

4-5) 스냅/스냅 패키지

기본값 유지. 서버 최소 구성을 우선 만들고, 애플리케이션 설치는 나중에 단계적으로 추가하세요.


5) 첫 부팅 후 바로 하는 보안·운영 세팅

5-1) 시스템 업데이트

sudo apt update && sudo apt -y full-upgrade
sudo reboot

5-2) 방화벽(UFW) 기본 정책

sudo apt install -y ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
# 웹 서버라면
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status

5-3) 시간 동기화(chrony)

sudo apt install -y chrony
timedatectl  # NTP: active 확인

5-4) 무차별 대입 방지(fail2ban, 선택)

sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban
# 기본 sshd jail로도 초보자 방어에 충분

5-5) 자동 보안 업데이트

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

6) 네트워크: 고정 IP가 필요할 때(netplan)

설치 중 못했다면 설치 후 /etc/netplan/*.yaml을 편집합니다(장치명은 ip a로 확인).

# /etc/netplan/01-netcfg.yaml (예시)
network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: no
      addresses: [192.168.0.10/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [1.1.1.1,8.8.8.8]
sudo netplan apply

7) 서버 최소 설치의 기준(불필요한 것 지우기)

  • GUI, 프린트/블루투스 관련 패키지: 서버에선 필요 없음
  • 샘플/데모 서비스: 설치 직후 제거
  • 포트 점검: ss -lntup로 열린 포트 확인 → 필요 없는 서비스 disable
# 열린 포트·프로세스 확인
sudo ss -lntup
# 예: 필요 없는 데몬 비활성화
sudo systemctl disable --now avahi-daemon

8) 설치 검증(기본 동작 점검 루틴)

  • uname -a: 커널/아키 확인
  • ip a, ping -c 3 1.1.1.1: 네트워크 OK
  • systemctl status ssh: SSH 서비스 활성
  • journalctl -p 3 -xb: 오류 로그 먼저 확인
  • df -h, lsblk: 디스크 마운트/용량 체크

9) 자주 묻는 질문(FAQ)

Q1. Minimal 설치 후 Docker나 Nginx는 언제 설치하나요?
A. 기본 보안(업데이트/UFW/SSH 키) 완료 → 서비스 역할에 맞게 단계적으로 설치하세요. 한 번에 많이 설치하면 문제 원인 추적이 어렵습니다.

Q2. RAID/LVM은 설치 중에 꼭 해야 하나요?
A. 아니요. 단일 디스크로 먼저 시작하고, 나중에 LVM 확장이나 mdadm RAID를 붙여도 됩니다. 운영 경험이 쌓인 뒤가 안전합니다.

Q3. Secure Boot를 켜두면 안 되나요?
A. 기본 On으로 문제 없습니다. 드물게 서명되지 않은 드라이버/모듈이 필요하면 일시적으로 Off 후 작업하세요.


10) 다음 단계(추천 글 시퀀스)

  • SSH 공개키 로그인 + 루트 접속 차단
  • Nginx 설치 & 서버 블록 구성(도메인 연결)
  • 무료 SSL(HTTPS) 적용: Certbot 자동 갱신
  • Docker & Compose로 서비스 표준화

여기까지 진행하면 “설치만 된 서버”가 아니라 운영 가능한 베이스가 준비됩니다. 이후에는 워크로드에 맞춰 Nginx/Tomcat/Resin/Spring Boot 등을 얹고, 로그·모니터링·백업을 추가로 구성하세요.