SSD Nodes Learn 🎉 VPS $5.50/월부터
가이드 Matt Connor작성자 Matt Connor · 업데이트됨 2026-08-13

Ubuntu에서 Tor와 Nginx로 .onion 사이트 호스팅하기

Ubuntu VPS 환경에서 Tor v3 onion 서비스를 구축하는 방법을 설명합니다. Nginx를 루프백에 바인딩하여 공용 IP 노출을 차단하고, 서버 설정에서 발생할 수 있는 정보 유출을 방지하여 익명성을 유지하는 핵심 보안 가이드를 제공합니다.

구축하려는 것

Onion 사이트는 Tor 네트워크를 통해서만 응답하는 일반적인 웹 서버입니다. tor를 설치하고 /etc/tor/torrc에 두 줄을 추가한 뒤, tor가 생성한 주소를 확인하고 nginx를 127.0.0.1에 바인딩하여 공용 IP로는 아무것도 응답하지 않도록 설정합니다. 설치 과정은 10분 정도 소요됩니다. 이 가이드의 나머지 부분은 정보 유출 방지 목록을 다룹니다. Onion 사이트가 실패하는 일반적인 원인은 설정 자체가 운영자의 정보를 직접 노출하기 때문입니다.

Tor는 "the onion router"로 시작했으며, Onion 서비스는 Tor를 통해서만 접근할 수 있는 서비스입니다. 버전 3 주소는 56자의 문자와 그 뒤에 붙는 .onion로 구성됩니다. 이 문자들은 서비스의 ed25519 공개 키와 체크섬, 버전 바이트를 base32로 인코딩한 값입니다. 버전 2 주소(16자)는 2021년에 네트워크에서 제거되었으므로, 오늘날 생성하는 모든 주소는 v3입니다. 주소 자체가 곧 키라는 점에는 두 가지 결과가 따릅니다. 연결은 인증 기관 없이 종단 간 암호화 및 인증되며, 키 파일을 분실하면 해당 주소를 영구적으로 잃게 됩니다.

서버는 인바운드 연결을 절대 수락하지 않습니다. Tor는 몇 개의 릴레이를 도입 지점(introduction points)으로 선택하고, 서명된 기술서를 디렉터리 서버에 업로드하며, 방문자가 선택한 랑데부 릴레이에서 각 방문자를 만납니다. 이러한 모든 연결은 서버에서 외부로 나가는 아웃바운드 연결입니다. 개방해야 할 포트도 없고 게시해야 할 DNS 레코드도 없습니다.

Tor Project 저장소에서 Tor 설치하기

Ubuntu는 universe 저장소에 tor 패키지를 포함하고 있지만, 해당 버전은 배포판이 고정된 시점의 버전에 머물러 있습니다. Tor Project의 공식 저장소는 최신 안정화 버전을 제공하며, 사용자의 주소 익명성을 결정하는 소프트웨어인 만큼 최신 버전을 사용하는 것이 좋습니다.

sudo apt update
sudo apt install -y apt-transport-https gnupg wget
KEYURL=https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc
wget -qO- "$KEYURL" | gpg --dearmor | sudo tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/null

저장소 항목은 deb822 형식을 사용하며, Suites에는 사용 중인 Ubuntu 코드네임을 입력해야 합니다. 잘못된 코드네임을 입력하면 저장소 주소는 정상적으로 확인되더라도 실제 패키지를 찾을 수 없게 되므로, 직접 입력하지 말고 /etc/os-release에서 읽어와 사용하십시오.

. /etc/os-release
sudo tee /etc/apt/sources.list.d/tor.sources >/dev/null <<EOF
Types: deb deb-src
URIs: https://deb.torproject.org/torproject.org/
Suites: $VERSION_CODENAME
Components: main
Signed-By: /usr/share/keyrings/deb.torproject.org-keyring.gpg
EOF
sudo apt update
sudo apt install -y tor deb.torproject.org-keyring

deb.torproject.org-keyring 패키지는 서명 키를 최신 상태로 유지하므로, 향후 키가 교체되더라도 apt update 과정에서 문제가 발생하지 않습니다. Tor가 정상적으로 시작되어 네트워크에 연결되었는지 확인하십시오.

tor --version
sudo journalctl -u tor@default -n 20

저널 로그는 Bootstrapped 100% (done): Done 메시지로 끝나야 합니다. Tor가 Bootstrapped 10% 단계에서 멈춰 있다면 외부로 나가는 경로가 없는 상태이므로, 제공자의 네트워크 방화벽과 로컬의 송신 규칙을 확인하십시오. sudo ufw status verbose 명령을 실행했을 때 allow (outgoing)이 기본값으로 표시되어야 합니다.

이제부터 두 가지 명칭이 중요합니다. 패키지는 debian-tor 사용자로 Tor를 실행하며, 실행 중인 유닛은 tor@default.service입니다. Debian과 Ubuntu에서 tor.service은 인스턴스를 관리하는 래퍼(wrapper) 역할을 하기 때문입니다. 상태와 로그를 확인할 때는 항상 인스턴스 이름을 사용하여 실제 프로세스 정보를 조회하십시오.

torrc에서 onion 서비스 구성하기

/etc/tor/torrc 파일에 다음 두 줄을 추가합니다.

HiddenServiceDir /var/lib/tor/onion_site/
HiddenServicePort 80 127.0.0.1:8080

HiddenServiceDir는 Tor가 이 서비스의 키와 주소를 보관하는 위치입니다. 이 디렉터리를 직접 생성하지 마십시오. Tor가 시작될 때 필요한 소유자와 권한 모드로 직접 생성합니다. root 권한으로 디렉터리를 미리 만들면 아래의 실패 목록에 있는 첫 번째 오류가 발생합니다.

HiddenServicePort은 두 부분으로 구성되며, 이 순서를 혼동하는 것이 가장 흔한 첫 번째 실수입니다. 첫 번째 숫자는 사용자가 터널 내부에서 접속할 포트이므로, 80은 사용자가 기대하는 표준 포트이며 이를 변경할 이유는 없습니다. 두 번째 부분은 Tor가 트래픽을 전달할 로컬 주소입니다. 단순히 HiddenServicePort 80만 적으면 127.0.0.1:80로 전달되므로, 주소를 명시하고 높은 포트 번호를 사용하면 onion vhost가 이미 80번 포트에서 대기 중인 다른 서비스와 충돌하는 것을 방지할 수 있습니다.

sudo systemctl restart tor@default
sudo ls -l /var/lib/tor/onion_site/

해당 디렉터리에는 hostname, hs_ed25519_public_key, hs_ed25519_secret_key 파일과 비어 있는 authorized_clients 디렉터리가 있어야 합니다.

.onion 주소 확인하기

sudo cat /var/lib/tor/onion_site/hostname

한 줄이 반환됩니다. 56자의 base32 문자와 .onion입니다. 이 문자열이 해당 사이트의 전체 식별자입니다. 누구도 이 주소를 할당하지 않으며, 누구도 양도할 수 없고, 키 파일을 보유하고 있는 한 누구도 빼앗아 갈 수 없습니다. 아래의 모든 설정에서 이 주소가 필요하므로 지금 복사해 두십시오. 이 가이드의 나머지 부분에서는 이를 <your-address>.onion로 표기합니다.

nginx를 127.0.0.1에 바인딩하여 사이트 서비스하기

sudo apt install -y nginx
sudo install -d -m 755 /srv/onion

/etc/nginx/sites-available/onion을 작성합니다:

server {
    listen 127.0.0.1:8080;
    server_name <your-address>.onion;

    root /srv/onion;
    index index.html;

    server_tokens off;
    etag off;
    access_log off;
    error_log /var/log/nginx/onion.error.log error;
}
echo '<h1>hello from the onion</h1>' | sudo tee /srv/onion/index.html
sudo ln -s /etc/nginx/sites-available/onion /etc/nginx/sites-enabled/onion
sudo nginx -t
sudo systemctl reload nginx

이제 서버에서 두 가지를 확인합니다. 첫 번째는 nginx가 tor가 전송할 정확한 Host 헤더인 onion 주소에 대해 응답하는지 확인하는 것입니다:

curl -s -H 'Host: <your-address>.onion' http://127.0.0.1:8080/

두 번째는 해당 주소에서만 응답하고 다른 곳에서는 응답하지 않는지 확인하는 것입니다:

sudo ss -tlnp | grep 8080

주소 열에는 127.0.0.1:8080이 표시되어야 합니다. 만약 0.0.0.0:8080*:8080으로 표시된다면, onion 사이트가 공용 인터넷에도 노출된 것이며 이는 유출 목록의 첫 번째 항목에 해당합니다. 주소가 없는 listen 8080; 행은 모든 인터페이스에 바인딩되며, 이것이 기본값입니다.

Tor Browser에서 해당 주소를 엽니다. 클라이언트가 디스크립터를 가져오고 랑데부 회로를 구축하는 동안 첫 로딩에는 몇 초가 소요됩니다.

Tor Project의 자체 문서에서는 루프백 포트보다 유닉스 소켓을 선호합니다. HiddenServicePort 80 unix:/var/run/tor/onion_site.sock를 사용하고 nginx가 해당 경로에서 리스닝하도록 설정하는 방식입니다. 소켓은 나중에 서버에 두 번째 인터페이스가 추가되더라도 다른 호스트에서 전혀 접근할 수 없습니다. 단점은 파일 권한 관리입니다. nginx가 소켓을 생성하고 tor가 debian-tor으로 연결하므로, 두 사용자 간에 디렉터리 권한을 일치시켜야 합니다. 검증된 ss 출력을 사용하는 루프백 방식이 설정하기 더 쉬우며, 이 가이드의 나머지 부분도 이를 전제로 합니다.

사이트를 루프백에 두면 서버에 인바운드 규칙을 설정할 필요가 전혀 없습니다. 22번 포트만 본인을 위해 열어두고 나머지는 거부하십시오(VPS에서 설정할 가치가 있는 ufw 기본값). 방화벽은 0.0.0.0에 바인딩된 서비스를 취소하는 것이 아니라 방화벽에 도달하는 패킷만 필터링한다는 점을 기억하십시오. 컨테이너를 사용하면 이 문제가 더 심각해집니다. Docker 포트를 게시하면 ufw보다 앞서 iptables 규칙이 작성되기 때문입니다. 따라서 -p 8080:80을 사용하면 ufw가 해당 포트를 거부 상태로 보고하더라도 onion 백엔드가 공용 IP에 노출됩니다. 컨테이너 포트는 -p 127.0.0.1:8080:80로 게시하십시오.

어니언 사이트의 익명성을 해제하는 정보 유출

Tor는 서버의 위치를 숨깁니다. 하지만 Tor는 서버가 말하는 내용을 숨기지는 않습니다. 아래 나열된 항목들은 사용자의 스택이 외부로 공개하는 정보들입니다.

공인 IP에서 동일한 사이트가 응답하는 경우

이것이 가장 흔하게 발생하는 실수입니다. 스캐너는 모든 라우팅 가능한 주소의 HTTP 응답을 지속적으로 인덱싱하며, 그 결과는 공개되어 검색이 가능합니다. 공인 IP와 어니언 주소에서 동일한 페이지를 제공하면, 동일한 제목, 파비콘 해시, ETag, 헤더 순서 등을 통해 단 하나의 쿼리로 두 주소가 같은 서버임을 연결할 수 있습니다. 위의 listen 127.0.0.1:8080; 줄이 이에 대한 해결책입니다. 서버가 아닌 다른 기기에서 다음을 확인하십시오.

curl -sv --max-time 5 http://<your-public-ip>:8080/

Connection refused 또는 타임아웃이 올바른 결과입니다. HTML이 출력된다면 사이트가 공개된 것입니다. 만약 해당 서버에서 일반 웹 사이트(clearnet)도 운영 중이라면, 해당 vhost에 고유한 루트를 지정하고 공인 리스너에 명시적인 default_server 블록을 유지하여, 일치하지 않는 Host 헤더가 어니언 vhost로 넘어가지 않도록 해야 합니다.

버전 배너

curl -sI http://127.0.0.1:8080/ | grep -i '^server'

기본 nginx는 Server: nginx/1.24.0라고 응답합니다. 해당 버전 문자열은 다른 헤더들의 정확한 순서와 결합하여, 어니언 사이트와 일반 웹 사이트를 연결하는 지문 역할을 합니다. server_tokens off; 설정을 사용하면 이를 Server: nginx로 줄일 수 있습니다. 하지만 헤더 자체가 제거되는 것은 아니며, nginx에는 이를 제거하는 내장 지시어가 없으므로 제거를 원한다면 보통 headers-more 모듈을 사용합니다. PHP는 expose_php = Off을 설정하기 전까지 X-Powered-By을 추가합니다. etag off;도 같은 목록에 포함되는데, nginx는 파일의 수정 시간과 크기를 기반으로 ETag를 생성하므로 두 서버에 동일한 파일을 복사하면 양쪽 모두에서 같은 ETag가 전송되기 때문입니다.

일반 도메인을 가리키는 절대 URL

rel="canonical" 태그, Open Graph og:url, RSS 피드, 사이트맵, 비밀번호 재설정 이메일, 하드코딩된 로고 URL 등이 이에 해당합니다. 이 중 하나라도 어니언을 통해 제공되는 페이지 내에 일반 웹 사이트 주소를 포함하고 있으면 문제가 됩니다. /static/logo.svg과 같은 루트 상대 경로를 사용하고, 애플리케이션이 상수가 아닌 요청 호스트에서 기본 URL을 읽도록 하십시오. 리다이렉트도 같은 버그를 유발합니다. catch-all 블록의 return 301 https://example.com$request_uri;는 어니언 방문자를 실제 도메인으로 보내며, Location 헤더는 그들에게 답변을 직접 전달합니다.

일반 웹 사이트와 공유하는 TLS 인증서

어니언 주소는 주소 자체가 공개 키이므로 스스로를 인증합니다. 따라서 어니언 연결을 통한 http://는 이미 종단 간 암호화가 적용되어 있으며, Tor Browser는 이를 안전한 컨텍스트로 취급합니다. 어니언 vhost에 기존 인증서를 설치하면 두 사이트 간의 연결 고리가 공개됩니다. 공개적으로 신뢰받는 모든 인증서는 Certificate Transparency 로그에 기록되며, 이 로그는 공개적이고 영구적이며 이름으로 검색이 가능하기 때문입니다. 일반 웹 사이트 vhost의 Let's Encrypt 인증서를 유지하고 어니언 vhost는 일반 HTTP 상태로 두십시오.

타사 폰트 및 분석 도구

CDN(콘텐츠 전송 네트워크)에서 가져오는 폰트나 분석 스크립트가 이에 해당합니다. 방문자의 브라우저가 각각을 직접 가져오기 때문에, 제3자는 누군가가 귀하의 페이지를 로드했음을 알게 되며 보통 어떤 페이지인지도 파악하게 됩니다. Tor Browser의 엄격한 보안 수준은 어차피 해당 요청을 차단하여 레이아웃을 깨뜨립니다. 페이지에 필요한 모든 에셋은 직접 호스팅하십시오.

Host 헤더 불일치

server_name가 tor가 보내는 Host 헤더와 일치하지 않으면, nginx는 해당 리슨 주소의 기본 서버로 폴백합니다. vhost가 하나인 서버에서는 유일한 서버 블록이 기본값이므로 이 문제가 보이지 않습니다. 나중에 일반 웹 사이트 vhost를 추가하면 어니언 요청이 그곳으로 전달되기 시작하며, canonical 태그와 리다이렉트까지 함께 노출될 수 있습니다. nginx를 변경할 때마다 curl -H 'Host: ...' 검사를 다시 실행하고, 결과에서 실제 도메인을 grep으로 확인하십시오.

curl -s -H 'Host: <your-address>.onion' http://127.0.0.1:8080/ | grep -o 'https\?://[^"]*' | sort -u

어떤 프로세스가 어떤 소켓을 소유하고 있는지 파악하는 것이 이 작업의 핵심입니다 (Linux에서 포트와 리스닝 소켓이 작동하는 방식).

로그에 남는 정보

모든 요청은 127.0.0.1에서 도착하므로 nginx는 기록할 방문자 주소가 없으며 access_log off;는 비용이 발생하지 않습니다. 그 위의 애플리케이션은 다른 문제입니다. 주문 정보, 이메일 주소, 업로드된 파일의 메타데이터는 사용자가 직접 관리해야 합니다. 사용자의 습관도 중요합니다. 보안이 강화되지 않은 로그인으로 서버를 관리하는 것은 Tor가 보호하는 범위를 벗어납니다. 따라서 동일한 VPS에서의 SSH 보안 강화를 이 구축 과정의 일부로 취급하십시오.

개인 키를 백업하십시오. 이것이 곧 주소입니다

/var/lib/tor/onion_site/hs_ed25519_secret_key은(는) 서비스입니다. 등록 기관이나 복구 절차가 존재하지 않습니다. 키를 분실하면 주소도 사라집니다. 키를 복사하면 해당 사본을 가진 누구나 귀하의 주소에서 자신의 콘텐츠를 서비스할 수 있으며, 귀하가 이를 취소할 방법은 없습니다.

sudo systemctl stop tor@default
sudo tar -C /var/lib/tor -czf onion-keys.tgz onion_site
sudo chmod 600 onion-keys.tgz
sudo systemctl start tor@default

해당 아카이브를 암호화하고(gpg -c onion-keys.tgz), 서버 외부로 이동하십시오. 새로운 VPS에서 복구하려면 아카이브와 함께 tor가 요구하는 소유권 설정을 적용해야 합니다.

sudo systemctl stop tor@default
sudo tar -C /var/lib/tor -xzf onion-keys.tgz
sudo chown -R debian-tor:debian-tor /var/lib/tor/onion_site
sudo chmod 700 /var/lib/tor/onion_site
sudo systemctl start tor@default
sudo cat /var/lib/tor/onion_site/hostname

tor가 디스크립터를 다시 게시한 후 1~2분 정도 지나면 새로운 하드웨어에서 동일한 주소가 복구됩니다. 이것이 마이그레이션의 전부입니다. DNS 변경이나 인증서 재발급은 필요하지 않습니다.

Onion-Location, 사이트가 클리어넷에도 존재하는 경우

Onion 서비스가 비밀 유지가 아닌 편의를 위한 목적이라면, 클리어넷 vhost에서 이를 알리도록 설정합니다.

add_header Onion-Location http://<your-address>.onion$request_uri;

그러면 Tor Browser 주소창에 .onion available 버튼이 표시되며 전환을 제안합니다. 이 헤더는 클리어넷 페이지가 HTTPS로 제공되고 그 값이 유효한 onion URL일 때만 적용됩니다.

이 과정에서 nginx 규칙 하나를 주의해야 합니다. add_header 지시어는 location 블록 내에 자체적인 지시어가 없을 때만 상속됩니다. 따라서 자체적인 add_header을 가진 location 블록은 Onion-Location 설정을 자동으로 무시합니다. 해당 블록에 헤더를 다시 작성하거나, 모든 응답 헤더를 한곳에서 관리하십시오. 이 헤더를 게시하는 행위는 의도적으로 두 사이트를 연결하는 것이므로, 미러 사이트에는 적합하지만 연결되지 않아야 할 서비스에는 부적절합니다.

베니티 주소(Vanity addresses)

mkp224o은 요청한 접두사로 시작하는 주소가 생성될 때까지 키 쌍을 반복해서 생성합니다. 이는 무차별 대입 방식이므로, 접두사와 대기할 시간 외에 별도로 설정할 항목은 없습니다.

sudo apt install -y git gcc libc6-dev libsodium-dev make autoconf
git clone https://github.com/cathugger/mkp224o
cd mkp224o
./autogen.sh
./configure --enable-amd64-51-30k
make
./mkp224o -d onionkeys blog

각 결과물은 hostnamehs_ed25519_secret_key을 포함하는 onionkeys/<address>.onion/에 저장됩니다. 설치하려면 tor를 중지하고 해당 디렉터리를 사용자의 HiddenServiceDir에 복사한 뒤, 앞서 설명한 복구 절차와 동일하게 chownchmod 700을 적용하십시오.

접두사의 길이에 따라 소요 시간이 결정됩니다. 주소는 base32 형식이므로, 요구하는 문자가 하나 늘어날 때마다 예상 키 생성 횟수는 32배로 증가합니다. 짧은 접두사는 노트북으로도 충분히 생성할 수 있습니다. 하지만 긴 접두사는 개인이 소유한 어떤 장비로도 생성이 불가능합니다. 또한 베니티 접두사를 사용하면 사용자가 주소 전체가 아닌 앞부분 몇 글자만 확인하는 습관을 갖게 되며, 피싱 사이트들은 바로 이러한 습관을 악용하여 onion 사이트를 위조합니다.

실패 유형 및 확인 가능한 메시지

재시작 후 hostname 파일이 없음. Tor가 시작되지 않았거나 디렉터리 접근을 거부한 경우입니다. sudo journalctl -u tor@default -n 50에 다음과 같이 표시됩니다.

/var/lib/tor/onion_site/ is not owned by this user (debian-tor, 108) but by root (0). Perhaps you are running Tor as the wrong user?

이는 수동으로 생성한 디렉터리의 모습입니다. 소유권과 모드를 수정하거나, 디렉터리를 삭제하여 Tor가 직접 생성하도록 하십시오.

Tor Browser에 Onionsite Not Found (0xF0) 오류가 표시됨. 클라이언트가 디스크립터를 가져오지 못한 상태이며, 네트워크 관점에서는 해당 주소에 게시된 내용이 없는 것입니다. Tor가 실행 중이고 부트스트랩이 완료되었는지 확인하십시오. 입력한 주소를 sudo cat /var/lib/tor/onion_site/hostname과 한 글자씩 대조하고 시스템 시간을 확인하십시오. Tor가 디스크립터를 게시하고 검증하려면 정확한 시간이 필요하며, timedatectlSystem clock synchronized: yes를 보고해야 합니다.

주소는 확인되지만 페이지가 로드되지 않음. Tor가 랑데부 과정을 완료했으나 마지막 홉인 Tor에서 nginx로의 연결에 실패한 경우입니다. 이 홉은 로컬에서 발생하므로 Tor 로그에는 기록이 남지 않습니다. 서버에서 curl -sI http://127.0.0.1:8080/을 실행하십시오. Connection refused은 nginx가 중단되었거나 HiddenServicePort가 가리키는 주소와 다른 주소에서 수신 대기 중임을 의미합니다.

페이지는 로드되지만 모든 링크가 실제 도메인으로 연결됨. 템플릿에 절대 URL이 포함된 경우입니다. 위에서 언급한 grep -o 'https\?://[^"]*' 점검을 수행하고, 주소를 공유하기 전에 출력된 내용을 수정하십시오.

작동하다가 재부팅 후 중단됨. 사이트를 운영하기 전에 의도적으로 서버를 한 번 재부팅한 뒤 sudo systemctl status tor@defaultsudo systemctl status nginx를 실행하십시오. 수동으로 시작한 서비스는 시스템이 재부팅되기 전까지는 활성화된 서비스와 동일하게 보입니다.

FAQ

Tor onion 서비스를 위해 방화벽 포트를 열어야 합니까?

아니요. tor 데몬은 디렉터리 서버, 도입 지점(introduction points), 각 랑데부 릴레이(rendezvous relay)로 나가는 연결만 생성하므로 인바운드 규칙은 필요하지 않으며, 웹 서버 자체는 127.0.0.1에서 대기합니다. ufw는 SSH만 허용하고 들어오는 트래픽은 기본적으로 거부(deny) 상태로 유지하십시오. 이러한 특성 덕분에 onion 서비스는 공인 IP가 없는 NAT(네트워크 주소 변환) 환경의 장비에서도 작동합니다.

Tor Browser에서 .onion 주소에 접속할 수 없는 이유는 무엇입니까?

서버에서 외부 방향으로 문제를 확인하십시오. sudo journalctl -u tor@default -n 50 명령으로 Bootstrapped 100% (done): Done 상태인지 확인하고, 서버에서 curl -sI http://127.0.0.1:8080/ 명령을 실행하여 상태 줄이 반환되는지 확인하십시오. 그 후 입력한 주소와 hostname 파일의 내용을 비교하십시오. 문자 하나만 틀려도 완전히 다른 서비스로 인식되기 때문입니다. Onionsite Not Found (0xF0) 오류는 해당 주소에 대한 기술자(descriptor)를 찾을 수 없다는 의미이며, 보통 tor가 실행 중이지 않거나 시스템 시간이 맞지 않을 때 발생합니다.

onion 사이트를 새 서버로 옮기면서 기존 주소를 유지할 수 있습니까?

네. 주소는 hs_ed25519_secret_key에서 파생되므로, HiddenServiceDir 디렉터리 전체를 새 서버로 복사한 뒤 debian-tor 소유권과 700 권한을 설정하고 tor를 시작하십시오. 기술자가 다시 게시되면 주소가 즉시 활성화되며, 업데이트할 DNS 레코드는 없습니다. 해당 파일을 분실하면 주소를 복구할 수 없으므로, 생성한 날 바로 암호화하여 서버 외부로 백업해 두십시오.

onion 사이트에 HTTPS 인증서가 필요합니까?

아니요. 56자 주소 자체가 서비스의 공개 키이므로 연결은 이미 종단 간 암호화 및 인증이 완료된 상태이며, Tor Browser는 .onion 이름의 http://를 안전한 컨텍스트로 취급합니다. 일반 웹(clearnet)용 인증서를 onion 가상 호스트에 재사용하는 것은 아무것도 하지 않는 것보다 나쁩니다. 인증서 투명성(Certificate Transparency) 로그는 공개되어 있으며, 어떤 도메인들이 하나의 인증서를 공유하는지 영구적으로 기록하기 때문입니다. .onion 이름에 대해 인증서를 구매하는 유일한 이유는 인증 기관(CA)으로부터 브랜드 보증을 받기 위함인데, 그 연결 고리는 설계상 공개되어 있습니다.