프라이버시 · KYC 없음
SearXNG를 해외 VPS에 호스팅
수십 개의 검색 엔진에 대신 질의하고 트래커를 제거하며 당신을 절대 프로파일링하지 않는 나만의 프라이빗 메타서치 엔진을 운영하세요 — 해외에서 호스팅되고 암호화폐로 결제됩니다.
설명
SearXNG는 70개 이상의 소스(Google, Bing, DuckDuckGo, Wikipedia 등)에서 결과를 취합하면서도 검색어를 저장하거나 식별 가능한 데이터를 이들 상위 검색 엔진에 전달하지 않는 무료 셀프 호스팅 메타서치 엔진입니다. Google 수준의 검색 품질을 제공하면서도 프라이버시 버퍼 역할을 하기 때문에, 검색 제공업체는 오직 당신의 서버 IP만 볼 뿐 당신의 IP는 절대 볼 수 없습니다.
왜 해외에서 호스팅해야 할까요
셀프 호스팅 검색 엔진은 그것이 돌아가는 서버만큼만 프라이빗합니다 — 해외의 KYC 없는 VPS는 어떤 신원도 인스턴스에 결부되지 않으며, 어떤 자국 관할권도 당신의 검색 로그를 강제로 받아갈 수 없다는 뜻입니다. 암호화폐로 결제하고 프라이버시 등급이 높은 지역(NL/CH/RO/IS/MD/LU)에 호스팅하면, 가입부터 검색 질의에 이르는 전체 체인이 신원 정보 없이, 그리고 감시가 심한 관할권 밖에 유지됩니다.
배포
실제로 작동하는 참고 설정
이 내용을 새 ChainVPS 인스턴스에 붙여넣으세요. 자리표시자를 실제 값으로 교체한 뒤 실행하세요.
# 1. 설정 디렉터리와 settings.yml을 생성하세요 (SearXNG가 최초 부팅 시 자동 생성합니다).
# 2. 실제 시크릿 값을 생성하세요: openssl rand -hex 32
# 3. docker compose up -d
#
# docker-compose.yml
services:
searxng:
image: docker.io/searxng/searxng:latest
container_name: searxng
restart: unless-stopped
ports:
- "127.0.0.1:8080:8080" # bind to loopback; put a TLS proxy in front
volumes:
- ./searxng:/etc/searxng:rw
environment:
- SEARXNG_BASE_URL=https://search.example.com/
- SEARXNG_SECRET=REPLACE_WITH_openssl_rand_hex_32
- UWSGI_WORKERS=4
- UWSGI_THREADS=4
depends_on:
- valkey
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
logging:
driver: json-file
options:
max-size: "1m"
max-file: "1"
valkey:
image: docker.io/valkey/valkey:8-alpine
container_name: searxng-valkey
restart: unless-stopped
command: valkey-server --save 30 1 --loglevel warning
volumes:
- valkey-data:/data
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
- DAC_OVERRIDE
volumes:
valkey-data:
# After first boot, edit ./searxng/settings.yml:
# server.secret_key: <same 32-byte hex>
# server.limiter: true
# valkey.url: redis://searxng-valkey:6379/0
# then: docker compose restart searxng
방화벽
열어야 할 포트
| 포트 | 프로토콜 | 용도 |
|---|---|---|
| 8080 | TCP | SearXNG uWSGI HTTP — 127.0.0.1에 바인딩된 상태로 유지하고, 절대 직접 노출하지 마세요 |
| 443 | TCP | Let's Encrypt 인증서를 사용하는 리버스 프록시(Caddy/nginx)를 통한 HTTPS |
| 6379 | TCP | 레이트 리미터용 Valkey/Redis — 내부 Docker 네트워크 전용, 절대 외부에 공개하지 않음 |
적정 규모 산정
필요한 요금제
VPS Nano/Small (1 vCPU, 1-2GB RAM)
프라이빗 단일 사용자 인스턴스에는 충분하고도 남습니다. SearXNG는 유휴 상태에서는 거의 리소스를 쓰지 않으며 검색 시마다 잠깐씩만 스파이크가 발생합니다.
VPS Pro (2-4 vCPU, 4-8GB RAM)
코어 수에 맞춰 UWSGI_WORKERS를 늘리세요. CPU 사용의 주요 원인은 저장 공간이 아니라 상위 검색 엔진으로의 팬아웃 질의입니다.
VPS Max 또는 Dedicated (8+ vCPU, 16GB+ RAM)
퍼블릭 인스턴스는 스크레이퍼 봇을 끌어들이기 때문에, 순수 CPU 성능보다 무제한 트래픽과 디도스 방어가 더 중요합니다.
추천 로케이션: SearXNG는 프라이버시 도구이므로 프라이버시 등급이 높은 지역을 선택하세요. 스위스(CH)와 아이슬란드(IS)는 강력한 개인정보 보호법과 의무적 로그 보관 규정이 없다는 강점이 있고, 네덜란드(NL)와 룩셈부르크는 유럽 사용자를 위한 훌륭한 EU 피어링과 낮은 지연 시간을 제공하며, 루마니아(RO)와 몰도바(MD)는 14개국 정보동맹(14 Eyes)의 영향권 밖에 있어 관할권 저항력이 가장 강한 구성이 가능합니다. 더 빠른 검색 응답을 원한다면 당신과 가장 가까운 지역을, 관할권 중립성이 우선이라면 가장 중립적인 지역을 선택하세요.
보안을 강화하세요
보안 강화 체크리스트
- 포트 8080을 절대 0.0.0.0에 공개하지 마세요 — 127.0.0.1에 유지하고, 해외/무기명 이메일로 발급받은 Let's Encrypt 인증서를 사용하는 리버스 프록시(Caddy 또는 nginx)에서 TLS를 종료하세요.
- 고유한 server.secret_key(openssl rand -hex 32)를 설정하고 Valkey를 연결한 상태로 server.limiter: true를 활성화하세요 — 이것이 봇이 당신의 인스턴스를 오픈 스크레이핑 릴레이로 악용하는 것을 막아줍니다.
- 인스턴스를 비공개로 유지하세요: 눈에 띄지 않는 호스트명을 지정하고, HTTP 기본 인증/VPN 뒤에 두거나, 공개 인스턴스 목록에서 빼서 인덱싱되거나 봇의 공격을 받지 않도록 하세요.
- settings.yml에서 사용하지 않는 검색 엔진과 기능을 비활성화하고, 필요 없다면 이미지 프록시나 메트릭 엔드포인트를 꺼서 공격 표면을 줄이세요.
- 컨테이너 로그를 제한하고(위에 표시된 max-size 참고) 필요한 몇 가지를 제외한 모든 Linux capabilities를 제거하세요 — SearXNG는 어떤 사용자 데이터도 보관하지 않으므로, 목표는 최소한이고 로그가 적으며 영속성이 없는 풋프린트를 만들어 압수할 것을 남기지 않는 것입니다.
질문
호스팅 SearXNG — FAQ
SearXNG는 검색 로그를 보관하나요?
아니요. SearXNG는 기본적으로 검색 기록이나 사용자 프로필을 저장하지 않습니다 — Valkey에 단명하는 레이트 리미터 카운터만 유지할 뿐입니다. 해외의 KYC 없는 호스팅과 결합하면, 애초에 넘겨줄 수 있는 신원 연결 검색 로그 자체가 존재하지 않습니다.
Google이나 Bing이 내 서버를 차단하나요?
간혹 상위 검색 엔진이 트래픽이 많은 IP를 레이트 리밋할 수 있습니다. 라이트/개인용 인스턴스에서는 드문 일입니다. 발생하더라도 SearXNG에서 해당 엔진을 비활성화하거나 함께 취합되는 다른 여러 대안으로 질의를 우회시킬 수 있어 결과는 계속 나옵니다.
Valkey/Redis 컨테이너가 꼭 필요한가요?
SearXNG는 이것 없이도 동작하지만, 내장 레이트 리미터와 봇 방어 기능을 활성화하려면 Valkey가 필요합니다. 인터넷에서 접근 가능한 환경이라면 반드시 유지하세요 — 인스턴스 악용을 막아주는 요소입니다.
이걸 내 앱이나 AI 도구용 프라이빗 검색 API로 사용할 수 있나요?
네. settings.yml에서 JSON 출력 포맷을 활성화하고 /search?q=...&format=json으로 질의하세요. 오직 자신의 서비스만 접근할 수 있도록 내부 네트워크에 두거나 인증 뒤에 배치하세요.
대역폭은 얼마나 사용하나요?
질의당 사용량은 매우 적습니다 — SearXNG는 미디어가 아닌 텍스트 결과만 가져옵니다. 개인용 인스턴스는 월 최대 몇 GB 정도만 사용하며, ChainVPS의 대역폭은 무제한이므로 봇 트래픽이 몰리는 퍼블릭 인스턴스도 초과 요금 걱정 없이 운영할 수 있습니다.
신원을 밝히지 않고 결제할 수 있나요?
네. ChainVPS는 KYC 없이 암호화폐로 결제하므로, 이름과 전혀 연결하지 않고 SearXNG 인스턴스를 구축할 수 있습니다 — 이것이 바로 검색을 셀프 호스팅하는 이유입니다.