2026년에 자신만의 Nostr relay를 운영하는 방법
저렴한 VPS에서 Nostr relay를 운영하는 실용적인 가이드. 어떤 소프트웨어를 사용할지, 어떻게 설정할지, 비용은 얼마인지, 왜 운영할 만한지를 다룹니다.
Nostr relay 운영은 쉽게 접근할 수 있습니다. 소프트웨어는 오픈 소스이고, 프로토콜은 단순하며, 실제로 사용할 수 있는 relay가 $5짜리 VPS에서 돌아갑니다. 이전에 셀프 호스팅을 해본 경험이 있다면 오후 한 나절 만에 relay를 운영할 수 있습니다.
운영해야 하는지는 별개의 질문입니다. 대부분의 사용자는 자신만의 relay가 필요하지 않습니다. 특정 경우에는 크게 도움이 되기도 합니다.
이 가이드는 직접 시도해보고 싶은 사람을 위한 처음부터 끝까지의 안내서입니다.
소형 VPS에 strfry 또는 nostream을 설치하고, 도메인을 연결한 뒤 443 포트를 열면 됩니다. Linux에 익숙한 사람이라면 약 한 시간이면 충분합니다. 운영 비용은 월 $5~15이며, 특정 커뮤니티, 프라이버시를 중시하는 사용자, 자신의 Nostr 인프라를 더 깊이 제어하고 싶은 누구에게나 유용합니다.
준비되면, @nostr.blog 주소 받기
운영할 만한 이유
여섯 가지 타당한 이유가 있습니다. 해당하는 것이 없다면 공개 relay를 이용하세요.
커뮤니티 relay. 특정 그룹(회사의 Nostr, 취미 커뮤니티, 지역 모임 등)을 위한 relay를 원한다면 내 relay의 정책이 그 그룹의 규범을 반영하도록 설정할 수 있습니다. 쓰기 권한을 직접 관리하기 때문에 외부 스패머가 relay를 도배할 수 없습니다.
프라이버시. 자신의 설정 내에서 운영자를 직접 아는 relay를 하나쯤 두고 싶을 수 있습니다. 해당 relay에서의 읽기 습관이 제3자에게 노출되지 않습니다.
보존. 공개 relay는 오래된 이벤트를 가끔 정리하기도 합니다. 자신의 relay는 원한다면 게시물을 무기한 보존할 수 있습니다.
실험. 클라이언트, relay 확장 기능을 개발하거나 새로운 NIP을 테스트하는 중이라면 자신만의 relay는 개발에 필수적입니다.
지역별 성능. 자신이 있는 지역에 마땅한 relay가 없는 경우입니다. 해당 지역에서 relay를 운영하면 나 자신과 다른 사람들에게 더 나은 서비스를 제공할 수 있습니다.
원칙. 노드를 호스팅해서 네트워크에 기여하는 것을 가치 있게 생각한다면 그 자체로도 이유가 됩니다. 드문 경우지만 실제로 있으며, Nostr의 건전성이 많은 독립적인 노드에 달려 있다는 이유로 relay를 운영하는 사람들도 있습니다.
relay 소프트웨어 선택
2026년 4월 기준 두 가지 주요 오픈 소스 선택지:
strfry. C++로 작성되었으며 스토리지로 LMDB를 사용하고 매우 빠릅니다. 저사양 하드웨어에서도 대량의 이벤트(수백만 건)를 처리합니다. 성능 중심 relay에 적합한 선택입니다.
nostream. TypeScript 기반으로 Node.js에서 실행되며 PostgreSQL을 사용합니다. JavaScript를 아는 경우 커스터마이징하기 더 쉽습니다. 맞춤 정책과 플러그인에 적합합니다.
그 외에도 여러 선택지가 있습니다(Rust 기반 rnostr, Go 기반 khatru 프레임워크, 각종 포크 등). 처음 relay를 운영한다면 strfry나 nostream이 일반적인 경우를 잘 커버하며, 둘 다 문서화가 잘 되어 있고 활발히 유지 관리되고 있습니다.
이 가이드의 구체적인 실습 과정에서는 strfry를 사용합니다.
하드웨어 요구 사항
소규모 relay(수십에서 수백 명의 사용자):
- VPS: CPU 1
2코어, RAM 12GB - 스토리지: 보존 기간에 따라 10~50GB
- 대역폭: 월 100~500GB
- 비용: Hetzner, DigitalOcean, Linode 등에서 월 $5~15
중간 규모 relay(수천 명의 사용자):
- VPS: CPU 4코어, RAM 4~8GB
- 스토리지: 200GB 이상, SSD 권장
- 대역폭: 월 1TB 이상
- 비용: 월 $30~80
대부분의 첫 relay 운영자는 $5짜리 VPS로 시작하는데, 수백 명의 사용자에게는 충분합니다.
설정 실습: Ubuntu에서 strfry 설치
기본 배포를 위한 구체적인 단계입니다. 새로 설치된 Ubuntu 22.04+ VPS를 기준으로 합니다.
1단계: 서버 준비
# 시스템 업데이트
sudo apt update && sudo apt upgrade -y
# 빌드 의존성 설치
sudo apt install -y git build-essential libssl-dev libz-dev \
liblmdb-dev libflatbuffers-dev libsecp256k1-dev \
libzstd-dev pkg-config
2단계: strfry 클론 및 빌드
cd /opt
sudo git clone https://github.com/hoytech/strfry.git
cd strfry
sudo git submodule update --init
sudo make setup-golpe
sudo make -j4
소형 VPS에서 빌드하는 데 약 5~10분 정도 걸립니다.
3단계: relay 설정
/opt/strfry/strfry.conf를 편집합니다. 중요한 섹션:
db경로: 이벤트가 저장되는 위치network바인드 주소와 포트info섹션: relay 이름, 설명, 연락처, 공개 키retention정책: 이벤트를 얼마나 오래 보존할지
기본 설정으로는 기본값이 충분합니다. info 섹션을 커스터마이징해서 내 relay를 설명하세요.
4단계: 서비스 설정
strfry가 지속적으로 실행되도록 systemd 유닛을 만듭니다. /etc/systemd/system/strfry.service:
[Unit]
Description=strfry Nostr relay
After=network.target
[Service]
ExecStart=/opt/strfry/strfry relay
WorkingDirectory=/opt/strfry
User=strfry
Restart=always
[Install]
WantedBy=multi-user.target
사용자를 만들고 서비스를 활성화합니다:
sudo useradd -r -s /bin/false strfry
sudo chown -R strfry:strfry /opt/strfry
sudo systemctl enable --now strfry
5단계: TLS 설정 (리버스 프록시)
Nostr 클라이언트는 wss://(TLS 위의 WebSocket)를 기대합니다. strfry 앞에 Caddy 또는 Nginx를 사용하세요.
Caddy가 가장 간단합니다. 설치:
sudo apt install -y caddy
/etc/caddy/Caddyfile 설정:
your-relay-domain.com {
reverse_proxy /* localhost:7777
}
리로드: sudo systemctl reload caddy. Caddy는 Let's Encrypt에서 TLS 인증서를 자동으로 받아옵니다.
6단계: DNS 연결
your-relay-domain.com에 대한 A 레코드를 만들어 VPS의 IP를 가리키도록 합니다. DNS가 전파될 때까지 몇 분 기다립니다.
7단계: 확인
노트북에서:
curl -s https://your-relay-domain.com
relay가 정상 작동 중임을 확인하는 짧은 응답이 반환되어야 합니다. Nostr 클라이언트에서 wss://your-relay-domain.com을 relay 목록에 추가하세요. 연결됨으로 표시되고 이벤트를 수신하기 시작할 것입니다.
총 소요 시간: Linux에 익숙한 사람은 3060분, 처음 하는 사람은 23시간.
relay 운영
한 번 실행하면 relay는 최소한의 유지 관리만 필요합니다. 반복적으로 해야 할 몇 가지 작업:
디스크 사용량 모니터링. strfry의 데이터베이스는 보존된 이벤트와 함께 커집니다. 매달 확인하고 필요하다면 정리하세요.
소프트웨어 업데이트. strfry는 업데이트가 있으며, 중요한 업데이트가 있을 때 재빌드합니다. 보통 연 몇 차례입니다.
스팸 패턴을 위한 로그 확인. 심한 스팸 공격을 받는 relay는 속도 제한 조정이나 정책 강화가 필요할 수 있습니다.
TLS 갱신. Caddy는 자동으로 처리합니다. Nginx를 수동으로 사용한다면 certbot 자동 갱신을 설정하세요.
데이터베이스 백업. 소규모 relay의 경우, 다른 서버로 주 1회 rsync가 적당합니다. 데이터를 강력하게 보호하고 싶다면 더 자주 백업하세요.
relay가 안정화되면 한 달에 약 30분 정도의 시간 투자로 충분합니다.
결정해야 할 정책
relay의 규칙은 내가 정합니다. 미리 결정하고 문서화하세요.
누가 쓸 수 있는지. 완전 개방(서명된 이벤트라면 누구든)? 화이트리스트(특정 pubkey만)? 유료(이벤트당 sat 수수료)?
어떤 kind를 허용할지. 모든 이벤트 kind를 수락할지, 특정 것만 수락할지(kind:1만, 리포스트 없음, 반응 없음)?
속도 제한. pubkey당 분당 몇 개의 이벤트를 허용할지? 기본 strfry 제한은 합리적이며, 남용이 있을 경우 강화하세요.
보존. 이벤트를 영구 보존할지, X일 후에 정리할지? 정리하면 디스크는 줄지만 히스토리가 사라집니다.
관리. 특정 이벤트나 특정 pubkey를 수동으로 삭제할지? 관리자는 내가 하기 때문에 할 수 있습니다.
사용자가 무엇을 기대할 수 있는지 알 수 있도록 /(info 응답)에 정책을 공개하세요. 불투명한 relay는 사용자에게 위험 신호입니다.
실제 비용
소규모 공개 relay의 현실적인 연간 예산:
- VPS: $60~180
- 도메인: $12~15
- 모니터링 및 백업 도구 (선택 사항): $0~60
- 시간: 연간 5~10시간
- 총 비용: 연 $80~250
구독자가 있는 유료 relay라면 이 비용을 충당하고도 남을 수 있습니다. 무료 relay라면 네트워크(또는 자신)에 대한 자비 부담 기여입니다.
대규모 운영
소규모 relay는 쉽습니다. 수십만 명의 사용자 규모로 성장하려면 실질적인 운영 작업이 필요합니다.
고려 사항:
- 데이터베이스 최적화. 기본 strfry/nostream 설정은 어느 정도까지만 작동합니다. 활성 사용자가 약 50만 명을 넘어서면 맞춤 인덱싱과 튜닝이 중요해집니다.
- 지리적 분산. 한 지역의 relay는 낮은 지연 시간으로 전 세계를 서비스할 수 없습니다. 대형 relay는 종종 클러스터를 운영합니다.
- DDoS 방어. 인기 있는 relay는 공격을 받습니다. relay 앞에 Cloudflare를 두거나 다른 DDoS 서비스를 사용하는 것이 일반적입니다.
- 대규모 비용. 하루에 수백만 건의 읽기를 처리하는 relay는 대역폭과 컴퓨팅 비용으로 월 수천 달러가 들 수 있습니다.
이 규모로 운영하는 운영자는 극히 드뭅니다. Damus-relay, nos.lol, relay.primal.net 등 소수가 현재 대형 운영자입니다. 소규모 relay는 이들과 경쟁할 필요가 없으며, 네트워크는 양쪽 모두에서 이익을 얻습니다.
운영하지 말아야 할 이유
공개 relay 사용자로 남는 것이 솔직한 이유가 될 수 있습니다.
- 특별한 이유가 없다. 원칙을 위해 운영하는 것은 괜찮지만, 다른 동기 없이 원칙만으로는 지속하기 어렵습니다.
- 시스템 관리 작업을 즐기지 않는다. relay 자체는 복잡하지 않지만, 가끔 Linux 설정, 로그, TLS를 다뤄야 합니다.
- 이미 공개 relay를 신뢰한다. 기본값이 충분히 만족스럽다면, 자신의 relay를 추가하는 것은 명확한 이득 없는 추가 작업입니다.
- 게시하거나 읽는 양이 그만한 가치를 정당화하지 못한다. 가벼운 사용자는 자신의 relay가 거의 필요하지 않습니다.
Nostr 커뮤니티에서 자신의 relay를 운영해야 한다는 압박은 없습니다. 대부분의 활성 사용자는 그렇게 하지 않습니다. 네트워크는 모든 사용자가 인프라에 기여할 필요 없이, 탈중앙화를 유지하기에 충분한 수만 있으면 됩니다.
운영 시작 후
사람들에게 알리세요. 사용자 없는 relay는 relay가 아니라 백업일 뿐입니다. 새 relay에 대해 Nostr에 게시하고, 정책을 설명하고, 정책에 맞는 사용자들을 초대해서 연결하도록 하세요. 홍보를 한다면 첫 달에 10~50명의 사용자를 기대할 수 있고, 특정 커뮤니티에서 알려진 사람이라면 더 많을 수도 있습니다.
relay를 운영하면 네트워크의 건전성에 기여하고, 진정으로 자신의 것인 인프라 한 조각을 가질 수 있습니다. 적합한 사용자에게는 보람 있는 프로젝트가 될 것입니다.
자주 묻는 질문
Nostr relay를 운영하는 데 비용이 얼마나 드나요?
기술적인 사전 요건은 무엇인가요?
홈 서버에서 relay를 운영할 수 있나요?
relay가 오프라인 상태가 되면 내 데이터는 어떻게 되나요?
Nostr relay를 운영해서 돈을 벌 수 있나요?
이어 읽기
Nostr 릴레이란? 초보자를 위한 설명
릴레이는 Nostr 포스트를 보관하고 전달하는 소규모의 독립적인 서버입니다. 릴레이가 무엇을 하는지, 왜 이 설계가 특이한지, 그리고 어떤 릴레이를 선택할지 알아봅시다.
16분 소요고급 · 기술유료 Nostr 릴레이: 돈을 내고 뭘 얻나
유료 릴레이는 스팸 없는 피드, 더 높은 보관 기간, 더 나은 가동 시간을 약속합니다. 2026년 현재 실제로 제공하는 것, 어떤 것이 가치 있는지, 언제 무료로도 충분한지 알아봅니다.
14분 소요시작하기Nostr 프로토콜, 평문으로 설명
Nostr는 플랫폼이 아닌 프로토콜입니다. 이 구별은 작동 방식, 포착될 수 없는 이유, 그리고 할 수 있는 것 모두를 형성합니다.
15분 소요