SSD Nodes Learn 🎉 VPS החל מ־$5.50/חודש
מדריכים Matt Connorמאת Matt Connor · עודכן 2026-08-13

איך להקים אתר onion על שרת VPS באובונטו

למדו להקים שירות v3 onion על Ubuntu עם Tor ו-Nginx. המדריך מסביר איך להגדיר האזנה ל-loopback בלבד ולמנוע דליפות מידע שעלולות לחשוף את כתובת ה-IP הציבורית של השרת שלכם.

מה אתם בונים

אתר onion הוא שרת אינטרנט רגיל המגיב אך ורק דרך רשת Tor. התקינו את tor, הוסיפו שתי שורות ל-/etc/tor/torrc, קראו את הכתובת ש-tor יצר עבורכם, ולאחר מכן הגדירו את Nginx להאזין ל-127.0.0.1, כך ששום דבר לא יגיב בכתובת ה-IP הציבורית. חלק ההתקנה אורך עשר דקות. שאר המדריך עוסק ברשימת דליפות מידע, כיוון שהדרך הנפוצה שבה אתר onion נכשל היא שתצורתו חושפת ישירות את מפעיל האתר.

Tor החל כ-"the onion router", ושירות onion הוא שירות שניתן להגיע אליו רק דרכו. כתובת גרסה 3 מורכבת מ-56 תווים ואחריהם .onion; תווים אלו הם מפתח ה-ed25519 הציבורי של השירות בתוספת checksum ובייט גרסה, המקודדים ב-base32. כתובות גרסה 2 (16 תווים) הוסרו מהרשת בשנת 2021, לכן כל כתובת שתייצרו כיום תהיה v3. הכתובת היא המפתח, ויש לכך שתי השלכות. החיבור מוצפן ומאומת מקצה לקצה ללא מעורבות של רשות אישורים (CA), ואובדן קובץ המפתח משמעו אובדן הכתובת לצמיתות.

השרת שלכם לעולם אינו מקבל חיבור נכנס. Tor בוחר מספר ממסרים (relays) כנקודות הצגה (introduction points), מעלה descriptor חתום לשרתי הספריה, ופוגש כל מבקר בממסר מפגש (rendezvous relay) שהמבקר בחר. כל אחד מהחיבורים הללו הוא יוצא מהשרת שלכם. אין פורט לפתוח ואין רשומת DNS לפרסם.

התקנת Tor ממאגר הבית של Tor Project

הפצת Ubuntu כוללת חבילת tor במאגר ה-universe, אך היא נשארת קרובה לגרסה שהייתה עדכנית בעת הקפאת ההפצה. המאגר של 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

ה-journal אמור להסתיים ב-Bootstrapped 100% (done): Done. תהליך tor שתקוע ב-Bootstrapped 10% אינו מוצא נתיב יוצא, לכן בדקו את ה-firewall של ספק התשתית שלכם ואת חוקי ה-egress שלכם: sudo ufw status verbose אמור להציג את allow (outgoing) כברירת מחדל.

שני שמות חשובים מכאן והלאה. החבילה מריצה את tor תחת המשתמש debian-tor, וה-unit הפעיל הוא tor@default.service, כיוון ש-tor.service ב-Debian וב-Ubuntu הוא מעטפת (wrapper) סביב המופע. בקשו סטטוס ולוגים לפי שם המופע ותמיד תקבלו את התהליך האמיתי.

הגדרת שירות ה-onion בקובץ torrc

הוסיפו שתי שורות לקובץ /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, לכן כתיבת הכתובת המלאה ושימוש בפורט גבוה שומרים על ה-vhost של ה-onion נקי מכל שירות אחר שמאזין בפורט 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 מגיב עבור שם ה-onion, שהוא בדיוק ה-header מסוג Host ש-tor ישלח:

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. הטעינה הראשונה אורכת מספר שניות בזמן שהלקוח מושך את ה-descriptor שלכם ובונה מעגל תקשורת (rendezvous circuit).

התיעוד הרשמי של The Tor Project מעדיף שימוש ב-unix socket על פני port ב-loopback: HiddenServicePort 80 unix:/var/run/tor/onion_site.sock, כאשר nginx מאזין לנתיב זה. לא ניתן להגיע ל-socket ממארח אחר בשום אופן, גם אם לשרת יתווסף בעתיד ממשק רשת נוסף. המחיר הוא ניהול הרשאות קבצים, שכן nginx יוצר את ה-socket ו-tor מתחבר אליו בתור debian-tor, לכן שני המשתמשים חייבים להסכים על התיקייה. שימוש ב-loopback עם פלט ss מאומת הוא פשוט יותר ליישום נכון, וזה מה ששאר המדריך מניח.

כאשר האתר נמצא ב-loopback, השרת אינו זקוק לשום חוק כניסה עבורו. השאירו את פורט 22 פתוח עבורכם וחסמו את השאר (ברירות המחדל של ufw שכדאי להגדיר ב-VPS). זכרו ש-firewall אינו מבטל שירות שמאזין ל-0.0.0.0, הוא רק מסנן חבילות שמגיעות אליו. מכולות (containers) הופכות את העניין למורכב יותר, כיוון ש-פרסום פורט ב-Docker כותב חוקי iptables לפני ה-ufw, כך ש--p 8080:80 חושף את ה-backend של ה-onion לכתובת ה-IP הציבורית בזמן ש-ufw עדיין מדווח שהפורט חסום. פרסמו פורטים של מכולות בתור -p 127.0.0.1:8080:80.

דליפות שחושפות את זהות האתר ב־Tor

Tor מסתיר את מיקום השרת. דבר ב־Tor אינו מסתיר את תוכן התקשורת של השרת. כל פריט להלן הוא מידע שהתשתית שלכם מפרסמת.

האתר עונה בכתובת ה־IP הציבורית שלכם

זו הטעות הנפוצה ביותר. סורקים מאנדקסים את תגובות ה־HTTP של כל כתובת נגישה ברשת באופן רציף, והתוצאות הללו ציבוריות וניתנות לחיפוש. אם תגישו את אותו דף בכתובת ה־IP הציבורית ובכתובת ה־onion, הקישור ביניהן יתגלה בשאילתה אחת: כותרת דף זהה, hash של favicon זהה, ETag זהה, וסדר headers זהה. השורה listen 127.0.0.1:8080; לעיל היא הפתרון. ודאו זאת ממכונה אחרת, לא מהשרת עצמו:

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

Connection refused או timeout הם התוצאה התקינה. כל תוכן HTML משמעו שהאתר חשוף לציבור. אם השרת מריץ גם אתר ב־clearnet, הגדירו ל־vhost שלו root נפרד ושמרו על בלוק default_server מפורש ב־listener הציבורי, כך ש־header מסוג Host שלא נמצא לו תואם לעולם לא יזלוג ל־vhost של ה־onion.

חשיפת גרסאות (Banners)

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

הגדרת ברירת מחדל של nginx עונה עם Server: nginx/1.24.0. מחרוזת הגרסה הזו, יחד עם הסדר המדויק של ה־headers האחרים, היא טביעת אצבע המקשרת בין ה־onion לבין השרת הציבורי שלכם. server_tokens off; מצמצם זאת ל־Server: nginx. זה לא מסיר את ה־header, ול־nginx אין הוראה מובנית שעושה זאת, לכן המודול headers-more הוא הפתרון המקובל אם ברצונכם להסירו. PHP מוסיף X-Powered-By עד שתגדירו expose_php = Off. etag off; שייך לאותה רשימה, כיוון ש־nginx בונה את ה־ETag לפי זמן העריכה והגודל של הקובץ; לכן, אותם קבצים שמועתקים לשני שרתים יפיקו את אותו ה־ETag בשניהם.

כתובות URL מוחלטות המצביעות על דומיין ה־clearnet

תגית rel="canonical", תגית Open Graph מסוג og:url, עדכון RSS, מפת אתר, אימייל לאיפוס סיסמה, או כתובת לוגו מקודדת. כל אחד מאלה מציין את אתר ה־clearnet בתוך דף שמוגש דרך ה־onion. השתמשו בנתיבים יחסיים ל־root כמו /static/logo.svg, ואפשרו ליישום לקרוא את כתובת הבסיס שלו מתוך ה־request host במקום להשתמש בערך קבוע. הפניות (redirects) הן אותה שגיאה במקום אחר: return 301 https://example.com$request_uri; בתוך בלוק catch-all שולח את המבקר ב־onion לדומיין האמיתי שלכם, וה־header מסוג Location מספק להם את התשובה ישירות.

תעודת TLS משותפת עם אתר ה־clearnet

כתובת onion מאמתת את עצמה, כיוון שהכתובת היא המפתח הציבורי. לכן, http:// מעל חיבור onion הוא ממילא מוצפן מקצה לקצה, ו־Tor Browser מתייחס אליו כאל הקשר מאובטח. התקנת התעודה הקיימת שלכם על ה־vhost של ה־onion מפרסמת את הקשר בין השניים, כיוון שכל תעודה מהימנה ציבורית מתועדת ביומני Certificate Transparency, ויומנים אלו ציבוריים, קבועים וניתנים לחיפוש לפי שם. שמרו על תעודות Let's Encrypt ב־vhost של ה־clearnet והשאירו את ה־vhost של ה־onion על HTTP רגיל.

גופנים וכלים לניתוח נתונים מצד שלישי

גופן מ־CDN או סקריפט לניתוח נתונים (analytics). הדפדפן של המבקר מושך כל אחד מהם ישירות, כך שהצד השלישי לומד שמישהו טען את הדף שלכם ובדרך כלל גם איזה דף. רמות האבטחה המחמירות של Tor Browser חוסמות ממילא את הבקשות הללו, מה שמותיר פריסת דף שבורה. אירחו בעצמכם כל משאב שהדף זקוק לו.

אי-התאמה ב־Host header

אם server_name אינו תואם ל־header מסוג Host ש־Tor שולח, nginx חוזר לשרת ברירת המחדל עבור כתובת ה־listen הזו. בשרת עם vhost יחיד זה בלתי נראה, כיוון שבלוק השרת היחיד הוא גם ברירת המחדל. אם תוסיפו vhost ל־clearnet בהמשך, בקשות onion עלולות להתחיל להגיע אליו, יחד עם תגיות ה-canonical והפניות ה־redirect שלו. הריצו שוב את הבדיקה curl -H 'Host: ...' לאחר כל שינוי ב־nginx, וחפשו בתוצאות את הדומיין האמיתי שלכם:

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

הבנה איזה תהליך מחזיק באיזה socket היא רוב העבודה הזו (איך פורטים ו־sockets עובדים ב־Linux).

מה נשאר ביומנים (Logs)

כל בקשה מגיעה מ־127.0.0.1, לכן ל־nginx אין כתובת מבקר לתעד ו־access_log off; לא עולה לכם בדבר. היישום שמעליו הוא עניין אחר, שכן הזמנה, כתובת אימייל או מטא-דאטה של קובץ שהועלה הם באחריותכם. גם להרגלים שלכם יש משקל: ניהול השרת דרך חיבור לא מאובטח נמצא מחוץ לכל מה ש־Tor מגן עליו, לכן התייחסו ל-הקשחת SSH באותו VPS כחלק מהקמת המערכת.

גבו את המפתח הפרטי, שכן הוא מהווה את הכתובת

/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 תפרסם מחדש את ה-descriptor. זוהי כל ההגירה: ללא שינוי DNS וללא הנפקה מחדש של תעודות.

Onion-Location, כאשר האתר זמין גם ב-clearnet

אם כתובת ה-onion נועדה לנוחות ולא לצורך סודיות, ניתן לפרסם אותה מתוך ה-vhost של ה-clearnet:

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

דפדפן Tor יציג כעת כפתור .onion available בשורת הכתובת ויציע לעבור לכתובת ה-onion. ה-header יכובד רק כאשר דף ה-clearnet מוגש באמצעות HTTPS והערך הוא כתובת onion תקינה.

כלל אחד ב-nginx עלול להוות מכשול. הוראות add_header מורשות לבלוק location רק כאשר בלוק זה אינו מגדיר הוראות משלו; לכן, בלוק location עם add_header משלו יבטל בשקט את ה-Onion-Location. יש לחזור על ההגדרה בתוך הבלוק, או לרכז את כל ה-response headers במקום אחד. פרסום ה-header הזה מקשר באופן מכוון בין שני האתרים; זהו מצב תקין עבור מראה (mirror), אך שגוי עבור כל תוכן שנועד להישאר ללא קישור.

כתובות מותאמות אישית (Vanity addresses)

mkp224o מייצר זוגות מפתחות עד שאחד מהם מפיק כתובת המתחילה בקידומת שביקשת. מדובר בחיפוש בשיטת כוח גס (brute force), לכן אין מה להגדיר מעבר לקידומת וזמן ההמתנה שאתה מוכן להקדיש.

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

כל התאמה נשמרת בתוך onionkeys/<address>.onion/ המכיל את hostname ואת hs_ed25519_secret_key. התקן את הכתובת על ידי עצירת tor, העתקת התיקייה הזו מעל ה-HiddenServiceDir שלך, ולאחר מכן החלת אותם chown ו-chmod 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?

כך נראית ספרייה שנוצרה באופן ידני. תקנו את הבעלות ואת ההרשאות (mode), או מחקו את הספרייה ואפשרו ל-Tor ליצור אותה מחדש.

Tor Browser מציג Onionsite Not Found (0xF0). הלקוח לא הצליח למשוך descriptor, לכן מבחינת הרשת לא פורסם דבר בכתובת זו. ודאו ש-Tor רץ וסיים את תהליך ה-bootstrapping, השוו את הכתובת שהקלדתם מול sudo cat /var/lib/tor/onion_site/hostname תו אחר תו, ולאחר מכן בדקו את השעון. Tor זקוק לזמן מדויק כדי לפרסם ולאמת descriptors, ו-timedatectl אמור לדווח על System clock synchronized: yes.

הכתובת נפתרת אך הדף אינו נטען. Tor השלים את ה-rendezvous אך נכשל ב-hop האחרון, מ-Tor ל-Nginx. מכיוון שזהו חיבור מקומי, הלוג של Tor נותר שקט. הריצו את curl -sI http://127.0.0.1:8080/ בשרת. Connection refused מעיד על כך ש-Nginx אינו פעיל או שהוא מאזין לכתובת שונה מזו שמוגדרת ב-HiddenServicePort.

הדף נטען אך כל הקישורים מפנים לדומיין האמיתי שלכם. מדובר בכתובות URL מוחלטות בתבניות (templates). הריצו את הבדיקה עם grep -o 'https\?://[^"]*' כפי שצוין לעיל ותקנו את מה שמופיע בפלט לפני שתשתפו את הכתובת.

השירות עובד, אך מפסיק לפעול לאחר אתחול. בצעו אתחול יזום לשרת לפני שאתם מסתמכים על האתר, ולאחר מכן הריצו את sudo systemctl status tor@default ו-sudo systemctl status nginx. שירות שהופעל ידנית נראה זהה לשירות שמוגדר לעלייה אוטומטית (enabled) עד לרגע שבו המכונה עוברת אתחול.

FAQ

האם עליי לפתוח פורט ב-firewall עבור שירות Tor onion?

לא. ה-daemon של Tor מבצע רק חיבורים יוצאים – לשרתי ה-directory, לנקודות ה-introduction ולכל relay של rendezvous – לכן אין צורך בחוק כניסה והשרת עצמו מאזין ב-127.0.0.1. השאירו את ufw במצב default deny עבור תעבורה נכנסת, עם הרשאה ל-SSH בלבד. תכונה זו מאפשרת לשירות onion לעבוד ממכונה שנמצאת מאחורי NAT (תרגום כתובות רשת) ללא כתובת IP ציבורית כלל.

מדוע איני מצליח להגיע לכתובת ה-.onion שלי ב-Tor Browser?

עבדו מהשרת החוצה. 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. הכתובת תהיה פעילה שוב ברגע שה-descriptor יפורסם מחדש, ואין רשומת DNS שצריך לעדכן. אובדן הקובץ הזה הופך את הכתובת לבלתי ניתנת לשחזור, לכן בצעו לו גיבוי מוצפן מחוץ לשרת כבר ביום יצירתו.

האם אתר onion זקוק לתעודת HTTPS?

לא. הכתובת בת 56 התווים היא המפתח הציבורי של השירות, לכן החיבור מוצפן ומאומת מקצה לקצה, ו-Tor Browser מתייחס ל-http:// בשם .onion כאל הקשר מאובטח. שימוש חוזר בתעודה מה-clearnet עבור ה-vhost של ה-onion גרוע יותר מאי-שימוש בתעודה כלל, כיוון שיומני Certificate Transparency הם ציבוריים ומתעדים לצמיתות אילו שמות חולקים תעודה. הסיבה היחידה לרכוש תעודה עבור שם .onion היא אימות מותג מצד רשות הנפקת תעודות (CA), וקשר זה הוא ציבורי מטבעו.