초보자를 위한 NAS 운영 필수가이드: 3-2-1 백업부터 VPN까지

 

안녕하세요. 달소입니다.

 

앞서 작성한 시리즈들에서 NAS에 대해서 알아보는 시간이였다면 이번에는 직접 운영하면서 겪으실 여러가지 상황에 대한(?) 가이드입니다.

 


 

NAS 구축은 하드웨어를 조립하고 소프트웨어를 설치하는 것으로 끝나지 않습니다. 소중한 데이터를 장기간 안전하게 보관하고, 언제든 필요할 때 접근할 수 있도록 지속적으로 관리하고 보호하는 운영이 무엇보다 중요합니다. 이 파트에서는 백업, 데이터 무결성 유지, 그리고 보안 강화라는 세 가지 핵심 주제를 다룹니다. 

 

3-2-1 규칙: 현대적인 백업 및 복구 전략

데이터 보호의 가장 기본적이면서도 강력한 원칙은 3-2-1 백업 규칙입니다. 이는 하드웨어 고장부터 랜섬웨어 공격, 심지어 화재와 같은 물리적 재난에 이르기까지 거의 모든 데이터 손실 시나리오에 대비할 수 있는 검증된 전략입니다.

3-2-1 규칙의 정의

3-2-1 규칙은 다음과 같이 요약됩니다

  • 3개의 데이터 복사본: 원본 데이터를 포함하여 최소 3개의 데이터 사본을 유지합니다.
  • 2개의 다른 미디어: 이 사본들을 최소 2개의 서로 다른 종류의 저장 매체에 보관합니다.
  • 1개의 오프사이트(Off-site) 사본: 사본 중 최소 1개는 물리적으로 다른 장소(오프사이트)에 보관합니다.

이 규칙을 따름으로써, 단일 장애 지점(Single Point of Failure)을 제거하고 데이터의 생존 가능성을 극대화할 수 있습니다.

image.png

1단계: 온사이트 백업 구현하기 (2차 사본 만들기)

NAS 내부의 RAID 풀 전체가 손상되거나, OS 문제로 데이터에 접근할 수 없는 상황에 대비하는 1차 방어선입니다.

  • 방법 1: USB 외장 하드로 백업 (가장 쉬운 방법)
    • 개념: NAS의 USB 포트에 외장 하드를 연결하고, NAS의 중요 데이터를 정기적으로 복사합니다.
    • 도구:
      • Synology/헤놀로지: Hyper Backup 패키지를 사용하면 GUI를 통해 손쉽게 로컬 USB 드라이브로의 버전 관리 백업을 예약할 수 있습니다.
      • TrueNAS/OMV 등: 내장된 Rsync 작업 스케줄러를 사용하여 지정된 시간에 자동으로 데이터를 동기화할 수 있습니다.
    • 장점: 구현이 매우 간단하고 비용이 저렴합니다.
    • 단점: NAS와 같은 공간에 있으므로 물리적 재난(화재, 도난)에는 취약합니다.
  • 방법 2: 다른 로컬 NAS로 백업 (더 높은 안정성)
    • 개념: 메인 NAS의 데이터를 같은 네트워크에 있는 다른 NAS(혹은 PC)로 동기화합니다.
    • 도구:
      • Rsync: 모든 NAS OS가 지원하는 표준 동기화 프로토콜입니다. 메인 NAS에서 백업 NAS로 정기적으로 rsync 작업을 실행하도록 설정합니다.
      • Synology Active Backup for Business: 이 강력한 도구는 주로 다른 서버나 PC를 시놀로지 NAS로 백업하는 데 사용되지만, 파일 서버(다른 NAS의 SMB 공유 폴더)를 백업 소스로 지정하여 메인 NAS의 데이터를 백업 NAS로 가져오는 용도로도 활용할 수 있습니다.

2단계: 오프사이트 백업 구현하기 (3차 사본 만들기)

최악의 상황(화재, 홍수, 도난)으로부터 데이터를 보호하는 마지막 보루입니다.

  • 방법 1: 클라우드 스토리지로 백업 (가장 일반적인 방법)
    • 개념: NAS의 데이터를 인터넷을 통해 원격 클라우드 스토리지 서비스에 암호화하여 백업합니다.
    • 도구:
      • Synology Hyper Backup: Backblaze B2, Wasabi, Amazon S3 등 다양한 클라우드 대상으로 직접 백업을 지원합니다.
      • Rclone: NAS OS 종류에 상관없이 사용할 수 있는 만능 클라우드 동기화 도구입니다. 스크립트와 스케줄러를 조합하여 자동화된 클라우드 백업을 구현할 수 있습니다.
    • 추천 서비스: Backblaze B2, Wasabi 등은 GB당 스토리지 비용이 매우 저렴하여 대용량 NAS 백업에 적합합니다.
  • 방법 2: 원격지 NAS로 백업 (궁극의 DIY)
    • 개념: 친구나 가족의 집에 있는 다른 NAS와 인터넷을 통해 데이터를 동기화합니다. 월 사용료가 없다는 큰 장점이 있습니다.
    • 구현:
      1. 양쪽 집에 **VPN(예: WireGuard, Tailscale)**을 설정하여 안전한 비공개 네트워크 터널을 생성합니다.
      2. 이 VPN 터널을 통해 Rsync나 **ZFS Replication (send/receive)**과 같은 도구를 사용하여 데이터를 안전하게 전송합니다.

잊지 말아야 할 것: 시스템 설정 및 애플리케이션 데이터 백업

중요한 파일뿐만 아니라, NAS 운영체제의 설정과 Docker 컨테이너의 설정 데이터(appdata 폴더)도 반드시 백업해야 합니다. 시스템 재해 발생 시, 이 설정 파일들이 있어야만 신속하게 기존 환경을 복원할 수 있습니다.

  • Unraid: 'Appdata Backup/Restore' 플러그인을 사용하여 appdata 폴더를 정기적으로 백업합니다.
  • TrueNAS/Synology: 시스템 설정 백업 기능을 사용하여 구성 파일을 다운로드하고 안전한 곳에 보관합니다.
  • Docker 사용자: Portainer의 스택 기능이나 docker-compose.yml 파일 자체를 Git 리포지토리나 개인 클라우드에 백업해두는 것이 좋습니다.

백업은 설정으로 끝나지 않습니다. 정기적인 복원 테스트를 통해 백업 데이터가 실제로 유효한지, 그리고 복구 절차를 내가 숙지하고 있는지 반드시 확인해야 합니다.

 

데이터 무결성 및 유지보수

NAS는 한 번 설정하고 잊어버리는 장치가 아닙니다. 저장된 데이터가 시간이 지나도 변질되지 않았는지, 하드웨어는 건강한 상태를 유지하고 있는지 정기적으로 점검해야 합니다.

 

저는 보통 SMART로 디스크 모니터링만했는데 스크럽도 한번 해줘야겠네요

ZFS 스크럽: 조용한 데이터 손상과의 전쟁

  • 스크럽이란? ZFS 스크럽은 ZFS 풀에 저장된 모든 데이터 블록을 하나씩 읽어 들여, 저장된 체크섬과 일치하는지 검사하는 데이터 무결성 확인 작업입니다. 만약 데이터 손상(비트 로트)이 발견되고, 미러나 RAID-Z와 같은 중복성이 존재한다면, ZFS는 손상된 블록을 건강한 복사본을 이용해 자동으로 복구합니다. 이는 ZFS의 가장 강력한 기능 중 하나입니다.
  • 권장 주기: 커뮤니티의 일반적인 권장 사항은 한 달에 한 번 스크럽을 실행하는 것입니다. 데이터의 중요도가 매우 높다면 격주로 실행할 수도 있습니다. 스크럽은 디스크에 지속적인 읽기 부하를 주므로, 너무 자주(예: 매일) 실행하는 것은 권장되지 않습니다. NAS 운영체제의 스케줄러를 이용해 사용량이 적은 심야나 주말에 자동으로 실행되도록 설정하는 것이 좋습니다.

S.M.A.R.T.를 통한 드라이브 상태 모니터링

6장에서 다룬 S.M.A.R.T. 데이터를 정기적으로 검사하여 드라이브의 건강 상태를 지속적으로 확인해야 합니다.

  • 권장 테스트 스케줄: [153, 155]
    • 단기(Short) 테스트: 매주 또는 매일 실행합니다. 드라이브의 전기적, 기계적 상태를 빠르게 점검합니다.
    • 장기(Long) 테스트: 매월 또는 격주로 실행합니다. 드라이브의 모든 섹터를 검사하는 정밀 검사입니다.
  • 스케줄링 팁: 장기 SMART 테스트와 ZFS 스크럽은 모두 디스크에 상당한 부하를 주므로, 두 작업이 동시에 실행되지 않도록 스케줄을 조정하는 것이 중요합니다. 예를 들어, 매월 첫째 주 주말에는 스크럽을, 셋째 주 주말에는 장기 SMART 테스트를 실행하도록 설정할 수 있습니다.
image.png

 

보안 체크리스트

NAS는 개인의 모든 데이터가 집약된 소중한 자산이므로, 외부 위협으로부터 안전하게 보호하는 것이 매우 중요합니다.

필수 보안 수칙

다음은 여러 보안 가이드에서 공통적으로 강조하는 필수 보안 수칙입니다.

  • 강력한 암호 사용: 추측하기 어려운 복잡하고 긴 암호를 사용하고, 특히 기본 관리자 계정(admin)은 비활성화하거나 이름을 변경합니다.
  • 정기적인 업데이트: NAS 운영체제와 그 위에서 실행되는 모든 애플리케이션(Docker 컨테이너 포함)을 항상 최신 버전으로 유지하여 알려진 보안 취약점을 패치합니다.
  • 2단계 인증(2FA/MFA) 활성화: 웹 관리 페이지와 SSH 접속에 모두 2단계 인증을 활성화하여, 암호가 유출되더라도 무단 로그인을 방지합니다. TrueNAS와 Synology 등 대부분의 NAS OS는 이 기능을 지원합니다
  • 방화벽 설정: NAS에 내장된 방화벽을 사용하여 꼭 필요한 서비스 포트(예: SMB 포트 445)와 허용된 내부 IP 주소만 접근할 수 있도록 제한합니다. 리눅스 기반 NAS에서는 ufw와 같은 도구를 활용할 수 있습니다.
  • 불필요한 서비스 비활성화: 사용하지 않는 서비스(예: FTP, Telnet, SSH 등)는 비활성화하여 공격에 노출될 수 있는 경로(attack surface)를 최소화합니다.
image.png

 

안전한 원격 접속: 나만의 VPN 게이트웨이 구축

NAS를 구축하는 가장 큰 이유 중 하나는 집 밖에서도 내 파일과 서비스에 자유롭게 접근하기 위함입니다. 하지만 무작정 NAS를 인터넷에 노출하는 것은 매우 위험합니다. 이번 챕터에서는 외부 위협으로부터 NAS를 안전하게 보호하면서 원격 접속을 구현하는 핵심 기술인 VPN에 대해 알아봅니다. 

 

image.png

왜 VPN이 필수인가? 포트 포워딩의 위험성

많은 초보 사용자들이 공유기의 포트 포워딩 기능을 이용해 NAS의 웹 관리 페이지나 특정 서비스를 인터넷에 직접 노출시킵니다. 이는 전 세계의 자동화된 공격 스캐너에게 "여기에 서버가 있으니 공격해주세요"라고 광고하는 것과 같습니다. 무차별 암호 대입 공격, 알려진 소프트웨어 취약점을 이용한 랜섬웨어 감염 등 심각한 보안 사고로 이어질 수 있는 매우 위험한 행위입니다. 

 

**VPN(Virtual Private Network)**은 이 문제에 대한 가장 안전하고 강력한 해결책입니다. VPN은 사용자의 기기(노트북, 스마트폰)와 집 네트워크 사이에 암호화된 가상 터널을 생성합니다. 이 터널을 통과하는 모든 데이터는 암호화되므로, 외부에서는 내용을 엿볼 수 없습니다. 사용자는 마치 집에 있는 것처럼 안전하게 내부 네트워크의 모든 기기와 서비스에 접근할 수 있게 됩니다.

 

만약 꼭 포트포워딩을 사용해서 포트를 오픈하더도 기본 포트인 22, 5000,5001 등의 경우 공격자들이 아주 쉽게 타겟을 찾는 요소가 되기때문에 리버스프록시를 통해서 80,443만 오픈 후 최소한의 포트오픈으로 운영하는게 좋습니다.

원격 접속 솔루션 3파전: Synology VPN vs. WireGuard vs. Tailscale

안전한 원격 접속을 위해, 우리는 세 가지 대표적인 VPN 솔루션을 비교 분석할 수 있습니다.

보통 Synology VPN Server가 이전에 많이 사용하던 구 솔루션이였다면 최근에는 Tailscale이 제일 사용하기 편하고 그다음은 성능을 위한 wireguard 솔루션을 추천드리는편입니다.

  • Synology VPN Server (전통과 편의성): 시놀로지/헤놀로지 사용자를 위한 가장 기본적인 선택지입니다. 패키지 센터에서 클릭 몇 번으로 설치할 수 있으며, OpenVPN과 L2TP/IPsec과 같은 검증된 프로토콜을 지원합니다. GUI 기반으로 설정이 매우 쉽다는 장점이 있지만, 성능 면에서 최신 기술에 비해 뒤처지며 공유기에서 포트 포워딩 설정이 반드시 필요합니다.
  • WireGuard (성능과 제어): 더 가볍고, 빠르며, 효율적인 최신 VPN 프로토콜입니다. 성능을 중시하는 파워 유저들 사이에서 사실상의 표준으로 자리 잡았습니다. 사용자가 모든 것을 직접 제어할 수 있다는 장점이 있지만, 이는 반대로 공유기 포트 포워딩, 클라이언트 키 관리 등 모든 것을 수동으로 설정해야 함을 의미합니다. wg-easy와 같은 Docker 프로젝트를 사용하면 웹 UI를 통해 관리가 한결 수월해집니다.
  • Tailscale (단순함의 미학): WireGuard를 기반으로 하지만, 복잡한 네트워크 설정을 완전히 제거한 '마법 같은' 솔루션입니다. 포트 포워딩이 전혀 필요 없으며, 구글, 마이크로소프트 등 기존 계정으로 로그인만 하면 내 모든 기기(NAS, PC, 스마트폰)들이 어디에 있든 서로를 위한 비공개 가상 네트워크를 자동으로 형성합니다. 특히 공유기 설정이 어려운 CGNAT 환경에서도 문제없이 작동하는 것이 최대 장점입니다. 설치와 사용이 극도로 간편하지만, 인증을 Tailscale의 중앙 서버에 의존한다는 점을 고려해야 합니다.

기능 비교표

기능/철학

Synology VPN Server

WireGuard (wg-easy)

Tailscale

핵심 가치

쉬운 GUI, 생태계 통합

성능, 완전한 자체 제어

극강의 편의성, 제로 컨피그

설정 난이도

매우 쉬움

중간 (Docker, 포트포워딩 필요)

"마법" (설치 후 로그인)

포트 포워딩

필수

필수

필요 없음

성능/속도

보통 (OpenVPN)

최상

좋음 (WireGuard 기반)

보안 모델

자체 제어

자체 제어

중앙 인증 서버 의존

플랫폼

시놀로지/헤놀로지

Docker 지원 모든 OS

거의 모든 OS/플랫폼 지원

추천 사용자

시놀로지 초심자

성능 중시/네트워크 지식 보유자

모든 사용자 (특히 초심자, CGNAT)

 

이번 글에서는 NAS를 성공적으로 운영하기 위한 전략, 즉 백업, 데이터 무결성 유지, 그리고 보안 강화라는 세 가지 핵심 요소를 집중적으로 다루었습니다. NAS는 한 번 구축했다고 해서 모든 것이 끝나는 장치가 아니라, 여러분의 소중한 데이터를 안전하게 보호하기 위해 지속적인 관심과 관리가 필요한 시스템입니다.

 

기본적인 개념의 글이였지만 이 글이 여러분의 NAS 운영에 실질적인 도움이 되시면 좋겠습니다!