SSD Nodes Learn Hosting plans →
మార్గదర్శకాలు Matt Connorద్వారా Matt Connor · అప్‌డేట్ చేయబడింది 2026-08-30

Linux VPS పై Tor relay ని ఎలా సెటప్ చేయాలి

Linux VPS లో Tor relay ని ఎలా రన్ చేయాలో తెలుసుకోండి. torrc కాన్ఫిగరేషన్, bandwidth పరిమితులు, nyx మానిటరింగ్ మరియు నెట్‌వర్క్ కన్సెన్సస్ వేగాన్ని పెంచే పద్ధతులను ఇక్కడ చూడవచ్చు.

VPS పై Tor relay ఏమి చేస్తుంది

Tor relay అనేది పబ్లిక్ IP అడ్రస్ ఉన్న మెషీన్‌పై నడిచే ఒక Tor daemon. ఇది ఇతరుల కోసం ఎన్‌క్రిప్ట్ చేయబడిన ట్రాఫిక్‌ను ఫార్వర్డ్ చేస్తుంది. డైరెక్టరీ అథారిటీలు దీనిని ప్రచురిస్తాయి మరియు Tor క్లయింట్లు దీని ద్వారా సర్క్యూట్‌లను నిర్మిస్తాయి. ఒక guard లేదా middle relay ఎల్లప్పుడూ ట్రాఫిక్‌ను మరొక relay కి మాత్రమే పంపుతుంది, కాబట్టి ఇది ఎవరి తరపున కూడా వెబ్‌సైట్‌కు కనెక్షన్‌ను తెరవదు. ఈ ఒక్క కారణం వల్లే దీనికి ఎటువంటి abuse మెయిల్స్ రావు, మరియు సాధారణ VPS కి ఇది సరిపోయే సహకారం. ఒక relay ఇతరుల ట్రాఫిక్‌ను మాత్రమే మోస్తుంది, తన సొంత డేటాను ఏదీ ప్రచురించదు. కాబట్టి, మీరు నెట్‌వర్క్ ద్వారా ప్యాకెట్లను పంపడం కాకుండా, మీ సొంత సైట్‌ను నెట్‌వర్క్‌లో ఉంచాలనుకుంటే, nginx వెనుక v3 onion service ని రన్ చేయడం అనేది అదే tor daemon తో చేసే వేరే పని. ఒక relay ని రన్ చేయడం వల్ల మీ సొంత బ్రౌజింగ్ గోప్యతకు ఎటువంటి ప్రయోజనం ఉండదు. ఇది చాలా మంది ఊహించిన దానికంటే తక్కువ పరిధి కలిగిన వేరే సమస్య: SearXNG ని self-host చేయడం ద్వారా నిజంగా ఏమి దాచవచ్చు అనేది ఒక సేవను మీ సొంత VPS కి మార్చడం వల్ల మీకు ఎంతవరకు ప్రయోజనం కలుగుతుందో తెలియజేసే సరైన కొలమానం.

దీని కోసం చేసే పని చాలా తక్కువ: ఒక ప్యాకేజీ, పదిహేను లైన్ల కాన్ఫిగరేషన్, ఒక ఫైర్‌వాల్ రూల్, మరియు ఒక రీస్టార్ట్. ఈ గైడ్‌లో మిగిలిన భాగం ఎక్కడ పొరపాట్లు జరుగుతాయో వివరిస్తుంది. మీ ప్లాన్‌లో డేటా పరిమితి (metered plan) ఉన్నప్పుడు bandwidth లెక్కలు ఎలా వేయాలి, మరియు సరిగ్గా పనిచేస్తున్న కొత్త relay ఒక వారం పాటు ఎందుకు నిష్క్రియంగా కనిపిస్తుందో ఇందులో తెలుసుకోవచ్చు.

Guard, middle, bridge లేదా exit: ఇన్‌స్టాల్ చేసే ముందే ఎంచుకోండి

ఒకే daemon ఈ నాలుగు పాత్రలను పోషిస్తుంది. మీ కాన్ఫిగరేషన్ మరియు directory authorities నిర్ణయం ఆధారంగా మీరు ఏ పాత్రలో ఉంటారో ఖరారవుతుంది.

  • Middle relay. ఇది ఒక guard నుంచి ట్రాఫిక్‌ను స్వీకరించి మరొక relayకి పంపుతుంది. ఇది ఎప్పుడూ నేరుగా గమ్యస్థాన సైట్‌ను సంప్రదించదు. ప్రతి కొత్త relay ఇక్కడే ప్రారంభమవుతుంది.
  • Guard relay. ఇది కూడా అదే కాన్ఫిగరేషన్, కానీ అదనంగా ఒక flag ఉంటుంది. తగినంత కాలం వేగంగా మరియు స్థిరంగా పనిచేసే relayలకు మాత్రమే directory authorities 'Guard' flagను ఇస్తాయి. మీరు దీన్ని ఎంచుకోలేరు. మీ పనితీరు ద్వారా దీన్ని పొందాలి, మరియు కింది కాన్ఫిగరేషన్ అందుకు అవసరమైన అర్హతలను కల్పిస్తుంది.
  • Bridge. ఇది పబ్లిక్ డైరెక్టరీలో కనిపించకుండా ఉద్దేశపూర్వకంగా దాచబడిన relay. Tor నిరోధించబడిన ప్రాంతాల్లోని వినియోగదారులకు దీన్ని ప్రైవేట్‌గా అందిస్తారు. ఈ నాలుగింటిలో ఇది అతి తక్కువ బాధ్యత కలిగినది: తక్కువ బ్యాండ్‌విడ్త్, పబ్లిక్ లిస్టింగ్ ఉండదు, మరియు మీ ప్లాన్ చాలా చిన్నదైతే ఇది సరైన మొదటి అడుగు. దీనికి daemon తో పాటు obfs4 proxy కూడా నడవాలి మరియు వేరే రకమైన torrc లైన్లు అవసరం. దీని గురించి చౌకైన VPSలో obfs4 bridge సెటప్ చేయడం అనే విభాగంలో వివరించబడింది, చివరగా వినియోగదారులకు bridge లైన్‌ను ఎలా అందించాలో కూడా అందులో ఉంటుంది.
  • Exit relay. ఇది చివరి దశ (hop), ఇది గమ్యస్థాన సైట్‌కు కనెక్షన్‌ను తెరుస్తుంది. వినియోగదారు చేసే ప్రతి అభ్యర్థన మీ IP అడ్రస్ నుంచే వెళ్తుంది, కాబట్టి దుర్వినియోగ నివేదికలు (abuse reports) మరియు పోలీసు విచారణలు ఆ IP అడ్రస్ యజమానికే వస్తాయి.

Exit relay అనేది సాధారణ VPSలలో నిర్వహించకూడని ఏకైక పాత్ర. Exit relayని నడపడానికి ముందుగానే అంగీకరించిన ప్రొవైడర్ వద్ద, ప్రత్యేక IP అడ్రస్ మరియు పబ్లిక్ abuse contact వివరాలతో మాత్రమే దీన్ని నిర్వహించాలి. చాలా సాధారణ హోస్టింగ్ నిబంధనలు దీన్ని నిషేధిస్తాయి, దీన్ని విస్మరిస్తే సర్వర్ సస్పెండ్ అవ్వడం మరియు IP అడ్రస్ కోల్పోవడం జరుగుతుంది. ఒకవేళ మీరు ఇదే చేయాలనుకుంటే, exit relay నడపడంలో ఉండే వాస్తవాలు అనే విభాగంలో exit-friendly హోస్ట్‌ను కనుగొనడం, exit policy మరియు reverse DNS రాయడం, మరియు వచ్చే మెయిల్స్‌కు సమాధానం ఇవ్వడం వంటి అంశాలను చూడవచ్చు. Guard లేదా middle relay కూడా అదే వినియోగదారు ట్రాఫిక్‌ను మోసుకెళ్తాయి, కానీ పైన పేర్కొన్న ఎటువంటి ఇబ్బందులు ఉండవు.

కింద ఉన్నవన్నీ guard/middle relayని నిర్మించడానికి ఉపయోగపడతాయి. ExitRelay 0 అనేది దీన్ని కేవలం guard/middle relayగా ఉంచే లైన్.

ప్రారంభించే ముందు VPS కి ఉండాల్సినవి

Tor Project రిలేల కోసం కఠినమైన అవసరాలను నిర్దేశించింది. ఆగస్టు 2026 నాటికి అవి: రిలే కోసం ఒక పబ్లిక్ IPv4 అడ్రస్, ప్రతి దిశలో కనీసం 10 Mbit/s బ్యాండ్‌విడ్త్ (16 Mbit/s సిఫార్సు చేయబడింది), నెలకు కనీసం 100 GB అవుట్‌బౌండ్ ట్రాఫిక్, మరియు 40 Mbit/s కంటే తక్కువ వేగం కోసం 512 MB RAM లేదా అంతకంటే ఎక్కువ వేగం కోసం 1 GB RAM ఉండాలి. అప్‌టైమ్ (uptime) కోసం ఎటువంటి నిర్ణీత నిబంధన లేదు, కానీ రోజుకు రెండు గంటల కంటే తక్కువ సమయం నడిచే రిలే నెట్‌వర్క్‌కు పెద్దగా ఉపయోగపడదు.

10 Mbit/s అనేది లైన్ సామర్థ్యాన్ని సూచిస్తుంది, సెట్టింగ్‌ను కాదు. దీనికి తగిన పోర్ట్ అందుబాటులో ఉండాలి. నెలవారీ ట్రాన్స్‌ఫర్ పరిమితిని బట్టి, ఆ లైన్‌లో ఎంత భాగాన్ని రిలేకు కేటాయించాలో మీరు నిర్ణయించుకోవాలి. కాన్ఫిగరేషన్‌ను మార్చే ముందు మీ ప్లాన్ వివరాలను చదవండి. మీరు ఇంకా సర్వర్‌ను ఎంచుకుంటున్నట్లయితే, ఒక VPS నెలకు ఎంత ఖర్చవుతుంది అనే కథనం ట్రాన్స్‌ఫర్ అలవెన్స్‌లు ఎలా విక్రయించబడతాయో వివరిస్తుంది, మరియు VPS యొక్క అసలైన నెట్‌వర్క్ సామర్థ్యాన్ని కొలవడం అనే కథనం సేల్స్ పేజీలోని వివరాలను నమ్మకుండా iperf3 ఉపయోగించి లైన్ పనితీరును ఎలా పరీక్షించాలో చూపుతుంది.

ముందుగా మెషీన్‌ను సురక్షితం (harden) చేయండి. రిలే అనేది పబ్లిక్ అడ్రస్‌పై నడిచే పబ్లిక్ సర్వీస్, కాబట్టి పబ్లిష్ చేసిన నిమిషాల్లోనే ఆ అడ్రస్ స్కాన్ చేయబడుతుంది. SSH ను కీలకు పరిమితం చేయడం మరియు sshd కాన్ఫిగరేషన్‌ను సురక్షితం చేయడం అనే ప్రక్రియకు పది నిమిషాలు పడుతుంది; ఇది రిలే లైవ్ లోకి రాకముందే జరగాలి, ఆ తర్వాత కాదు.

Tor Project రిపోజిటరీ నుండి Tor ను ఇన్‌స్టాల్ చేయడం

డిస్ట్రిబ్యూషన్ ప్యాకేజీకి బదులుగా Tor Project వారి స్వంత apt రిపోజిటరీని ఉపయోగించండి. Relay కోడ్ స్థిరమైన విడుదల (stable release) కంటే వేగంగా మారుతుంది, కాబట్టి పరిష్కారాలు (fixes) ముందుగా ఈ రిపోజిటరీకి చేరుతాయి, అయితే డిస్ట్రిబ్యూషన్ ప్యాకేజీలు విడుదలల మధ్య వెనుకబడి ఉంటాయి.

sudo apt update
sudo apt install -y apt-transport-https gnupg wget

ముందుగా సైనింగ్ కీని, ఆపై రిపోజిటరీని జోడించండి. కోడ్‌నేమ్ మెషీన్ నుండి స్వయంచాలకంగా చదవబడుతుంది, కాబట్టి ఇదే బ్లాక్ Ubuntu 24.04 (noble) మరియు Debian 13 (trixie) లలో పనిచేస్తుంది.

wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc \
  | gpg --dearmor \
  | sudo tee /usr/share/keyrings/deb.torproject.org-keyring.gpg >/dev/null

CODENAME=$(. /etc/os-release && echo "$VERSION_CODENAME")
echo "$CODENAME"

sudo tee /etc/apt/sources.list.d/tor.sources >/dev/null <<EOF
Types: deb deb-src
URIs: https://deb.torproject.org/torproject.org/
Suites: $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
tor --version

tor --version మీరు ఇప్పుడే ఇన్‌స్టాల్ చేసిన వెర్షన్‌ను ప్రింట్ చేస్తుంది. ఒకవేళ apt update కమాండ్ NO_PUBKEY ఎర్రర్‌ను ప్రింట్ చేస్తే, Signed-By: లైన్‌లో పేర్కొన్న పాత్ వద్ద డీఆర్మర్డ్ (dearmored) కీ లేదు అని అర్థం, కాబట్టి రిలీజ్ ఫైల్‌ను తనిఖీ చేయడానికి apt వద్ద కీ లేదు. deb.torproject.org-keyring ప్యాకేజీ తర్వాత అవసరమవుతుంది: ఇది సైనింగ్ కీని సాధారణ ప్యాకేజీగా అందిస్తుంది, తద్వారా ఆ కీ మారినప్పుడు (rotated) కూడా apt సజావుగా పనిచేస్తుంది.

ఆటోమేటిక్ అప్‌గ్రేడ్‌లను ఆన్ చేసి, ఆపై కొత్త ఆరిజిన్ (origin) గురించి వాటికి తెలియజేయండి.

sudo apt install -y unattended-upgrades apt-listchanges

Ubuntu లో, /etc/apt/apt.conf.d/50unattended-upgrades లోని Allowed-Origins బ్లాక్‌కు Tor ఆరిజిన్‌ను జోడించండి:

Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}-security";
        "TorProject:${distro_codename}";
};

Debian లో అదే ఫైల్ Origins-Pattern ను ఉపయోగిస్తుంది, అక్కడ జోడించాల్సిన లైన్ "origin=TorProject";. ఫలితాన్ని sudo unattended-upgrade --debug --dry-run తో తనిఖీ చేయండి, ఇది అది పనిచేసే ఆరిజిన్‌లను ప్రింట్ చేస్తుంది మరియు వేరే దేనినీ రాయదు.

ముఖ్యమైన torrc

ఈ ప్యాకేజీ చాలా ఎక్కువ వ్యాఖ్యలతో కూడిన ఒక సుదీర్ఘమైన /etc/tor/torrc ఫైల్‌ను ఇన్‌స్టాల్ చేస్తుంది. ఒక relay కోసం కేవలం కొన్ని లైన్లు మాత్రమే ముఖ్యమైనవి. వాటిని ఫైల్ చివరన చేర్చండి.

Nickname mynicerelay
ContactInfo relay-ops[at]example.com
ORPort 9001
ExitRelay 0
SocksPort 0

Nickname అనేది 1 నుండి 19 అక్షరాల పొడవు ఉండాలి, ఇందులో అక్షరాలు మరియు అంకెలు మాత్రమే ఉండాలి. ఇది నెట్‌వర్క్‌లో ప్రత్యేకమైనది కాదు మరియు ఇది మీ గుర్తింపు కాదు, fingerprint మాత్రమే మీ గుర్తింపు. సెర్చ్ బాక్స్‌లో మీ relayని కనుగొనడానికి ఇది ఉపయోగపడుతుంది, కాబట్టి ఫోన్‌లో సులభంగా చెప్పగలిగే పేరును ఎంచుకోండి.

ContactInfo అనేది relay descriptor లో ప్రచురించబడుతుంది, ఇది ఎవరైనా డౌన్‌లోడ్ చేసుకోగల పబ్లిక్ డాక్యుమెంట్, కాబట్టి ఈ చిరునామా సేకరించబడుతుంది (scraped). మీరు రెండు సంవత్సరాల తర్వాత కూడా చదవగలిగే చిరునామాను ఉపయోగించండి, మీకు కావాలంటే దీన్ని obfuscate చేయవచ్చు. మీ relayలో ఏదైనా సమస్య ఉంటే Tor Project మిమ్మల్ని హెచ్చరించడానికి ఉన్న ఏకైక మార్గం ఇదే.

ORPort 9001 అనేది ఇతర relays మరియు clients కనెక్ట్ అయ్యే పోర్ట్. 9001 అనేది సాధారణంగా వాడేది. పోర్ట్ 443 మరొక సాధారణ ఎంపిక, ఎందుకంటే కొన్ని పరిమితులున్న నెట్‌వర్క్‌లు కేవలం అవుట్‌బౌండ్ 443ని మాత్రమే అనుమతిస్తాయి, కాబట్టి అక్కడ వినే (listening) relay ఎక్కువ మంది clientsకు అందుబాటులో ఉంటుంది. సర్వర్‌లో మరే ఇతర సేవకు 443 అవసరం లేకపోతేనే దీన్ని ఎంచుకోండి.

SocksPort 0 స్థానిక SOCKS proxyని ఆపివేస్తుంది, ఇది relayకి అవసరం లేదు మరియు మెషీన్ నుండి ఒక listening socketని తొలగిస్తుంది. ExitRelay 0 ఈ ఉద్దేశ్యాన్ని ఫైల్‌లో రాస్తుంది: ఈ relay వినియోగదారు తరపున ఏ గమ్యస్థానానికి కనెక్ట్ అవ్వదు, మరియు తర్వాత కాన్ఫిగరేషన్ చదివే ఎవరైనా డిఫాల్ట్ సెట్టింగ్‌ల నుండి దీన్ని అర్థం చేసుకోవాల్సిన అవసరం ఉండదు.

VPSకి IPv6 చిరునామా ఉంటే, రెండవ ORPort లైన్‌ను జోడించండి. Tor IPv4 కోసం చేసే విధంగా "any" IPv6 చిరునామాకు bind అవ్వలేదు, కాబట్టి చిరునామాను స్క్వేర్ బ్రాకెట్లలో రాయండి.

ORPort 9001
ORPort [2001:db8::1]:9001

1 GB VPSలో, MaxMemInQueues 512 MBని జోడించండి. Tor మెషీన్‌లోని మెమరీని బట్టి తన క్యూ పరిమితిని నిర్ణయించుకుంటుంది, చిన్న షేర్డ్ బాక్స్‌లో ఇది మీరు ఆశించిన దానికంటే ఎక్కువగా ఉంటుంది. పరిమితిని మీరే సెట్ చేయడం వల్ల, ఒత్తిడి పెరిగినప్పుడు Tor క్యూలో ఉన్న సెల్స్‌ను తొలగిస్తుంది, దీనివల్ల kernel ప్రాసెస్‌ను నిలిపివేసే (kill) వరకు పెరగకుండా relay సురక్షితంగా ఉంటుంది.

ఫైర్‌వాల్‌లో ORPortను తెరవండి

ఇన్‌బౌండ్ (Inbound) ట్రాఫిక్ కోసం, ORPort ఇంటర్నెట్‌లోని ఎక్కడి నుంచైనా అందుబాటులో ఉండాలి. అవుట్‌బౌండ్ (Outbound) ట్రాఫిక్ విషయంలో, రిలేను ఎటువంటి ఆంక్షలు లేకుండా వదిలేయండి: ఇది వేలకొద్దీ ఇతర రిలేలకు అనేక విభిన్న పోర్టుల ద్వారా కనెక్షన్‌లను తెరుస్తుంది, కాబట్టి అవుట్‌బౌండ్ అలో-లిస్ట్ (allowlist) దీన్ని నిష్క్రియం చేస్తుంది.

sudo ufw allow 9001/tcp comment 'tor ORPort'
sudo ufw status verbose

ఆ తర్వాత ప్రొవైడర్ యొక్క సొంత నెట్‌వర్క్ ఫైర్‌వాల్‌ను తనిఖీ చేయండి. చాలా కంట్రోల్ ప్యానెల్‌లు వర్చువల్ మెషీన్ ముందు ఒక ప్యాకెట్ ఫిల్టర్‌ను నడుపుతాయి. మీరు ufw తో జోడించిన నియమం అక్కడ పనిచేయదు, దీనివల్ల పోర్ట్ సర్వర్ లోపల తెరిచి ఉన్నట్లు కనిపిస్తుంది కానీ బయటి నుండి మూసివేయబడినట్లు చూపిస్తుంది. మీకు ufw కొత్త అయితే, ప్రతి VPSలో ఉండాల్సిన ufw నియమాలు అనే గైడ్ డిఫాల్ట్ పాలసీ మరియు నియమాలు సరిచూసే క్రమం గురించి వివరిస్తుంది.

మీ ప్లాన్‌కు అనుగుణంగా బ్యాండ్‌విడ్త్‌ను నిర్ణయించడం

ఈ మాన్యువల్ RelayBandwidthRate ను ఒక ప్రత్యేక టోకెన్ బకెట్‌గా వివరిస్తుంది. ఇది "ఈ నోడ్‌లో రిలే చేయబడిన ట్రాఫిక్ కోసం సగటు ఇన్‌కమింగ్ బ్యాండ్‌విడ్త్ వినియోగాన్ని, మరియు సగటు అవుట్‌గోయింగ్ బ్యాండ్‌విడ్త్ వినియోగాన్ని పేర్కొన్న బైట్ల సంఖ్యకు పరిమితం చేస్తుంది". దీన్ని రెండుసార్లు చదవండి. ఈ పరిమితి ప్రతి దిశకు విడివిడిగా వర్తిస్తుంది. 1 Mbit/s కి సెట్ చేసిన రిలే ఒకే సమయంలో 1 Mbit/s ఇన్‌కమింగ్ మరియు 1 Mbit/s అవుట్‌గోయింగ్ ట్రాఫిక్‌ను పంపగలదు. రెండు దిశలను లెక్కించే ప్రొవైడర్ ఈ రెండింటి మొత్తానికి బిల్లు వేస్తారు.

ChartMonthly traffic at a sustained relay rate, both directions, 30 days
The data behind this chart
[
  {
    "label": "1 Mbit/s",
    "torrc_rate": "125 KBytes",
    "gb_per_day": 21.6,
    "gb_per_month": "648"
  },
  {
    "label": "2 Mbit/s",
    "torrc_rate": "250 KBytes",
    "gb_per_day": 43.2,
    "gb_per_month": "1,296"
  },
  {
    "label": "5 Mbit/s",
    "torrc_rate": "625 KBytes",
    "gb_per_day": 108,
    "gb_per_month": "3,240"
  },
  {
    "label": "10 Mbit/s",
    "torrc_rate": "1250 KBytes",
    "gb_per_day": 216,
    "gb_per_month": "6,480"
  },
  {
    "label": "20 Mbit/s",
    "torrc_rate": "2500 KBytes",
    "gb_per_day": 432,
    "gb_per_month": "12,960"
  }
]

ఆ 5 అడ్డు వరుసలు కేవలం గణితపరమైనవి, కొలతలు కావు: ఒక రిలే 30 రోజుల పాటు రెండు దిశలలో నిరంతరంగా పనిచేస్తే ఎంత ఖర్చు అవుతుందో అవి చూపిస్తాయి. ఒక వాస్తవ రిలే చాలా సమయం తన పరిమితి కంటే తక్కువగానే పనిచేస్తుంది, ముఖ్యంగా మొదటి కొన్ని వారాల్లో. ఈ పట్టికను అసాధ్యమైన సెట్టింగ్‌లను తొలగించడానికి ఉపయోగించండి, అంతే కానీ బిల్లును గిగాబైట్ల స్థాయిలో ఖచ్చితంగా అంచనా వేయడానికి కాదు.

ప్రతి దిశలో 1 Mbit/s వేగంతో ఒక రిలే రోజుకు సుమారు 21.6 GB ట్రాఫిక్‌ను పంపుతుంది, కాబట్టి 30 రోజుల నెలలో సుమారు 648 GB మీటర్డ్ ట్రాఫిక్ ఖర్చవుతుంది. ఇది 1 TB పరిమితిలో సరిపోతుంది, అప్‌డేట్‌లు మరియు బ్యాకప్‌ల కోసం కొంత స్థలం మిగులుతుంది. 2 Mbit/s కి పెంచితే, నెలకు 1,296 GB ఖర్చవుతుంది, ఇది ఇప్పటికే 1 TB ప్లాన్ పరిమితిని దాటిపోతుంది. చివరి వరుస, 20 Mbit/s, నెలకు 12,960 GB అవసరమవుతుంది మరియు దీనికి unmetered పోర్ట్ అవసరం. మీ ప్రొవైడర్ అవుట్‌బౌండ్ ట్రాఫిక్‌కు మాత్రమే బిల్లు వేస్తుంటే, ప్రతి సంఖ్యను సగానికి తగ్గించండి. రేటును సెట్ చేసే ముందు మీ ప్రొవైడర్ ఏ పద్ధతిని అనుసరిస్తున్నారో తెలుసుకోండి, ఎందుకంటే ఈ రెండు సమాధానాల మధ్య రెండు రెట్ల వ్యత్యాసం ఉంటుంది.

ఇప్పుడు కాన్ఫిగరేషన్ విషయానికి వస్తే, ముందుగా రేట్ లిమిట్, తర్వాత కోటా సెట్ చేయండి.

RelayBandwidthRate 125 KBytes
RelayBandwidthBurst 250 KBytes
AccountingMax 400 GBytes
AccountingRule sum
AccountingStart month 1 00:00

RelayBandwidthBurst అనేది టోకెన్ బకెట్ పరిమాణం, కాబట్టి సగటు స్థిరంగా ఉన్నప్పుడు ఇది స్వల్పకాలిక స్పైక్‌లను అనుమతిస్తుంది. రేటుకు సుమారు రెండు రెట్లు ఉండటం సరైన విలువ.

AccountingRule అనేది చాలా మంది ఆపరేటర్లు విస్మరించే లైన్. డిఫాల్ట్ విలువ max, ఇది రెండు దిశలలో పెద్దదైన దానిని కోటాతో పోల్చి చూస్తుంది. డిఫాల్ట్ సెట్టింగ్‌తో, AccountingMax 400 GBytes అనేది 400 GB ఇన్‌కమింగ్ మరియు 400 GB అవుట్‌గోయింగ్‌ను అనుమతిస్తుంది, అంటే రెండు దిశలను లెక్కించే మీటర్ ప్రకారం ఇది 800 GB అవుతుంది. AccountingRule sum అనేది రీడ్ మరియు రైట్ రెండింటినీ కలిపి కోటాకు వ్యతిరేకంగా లెక్కిస్తుంది, ఇది ట్రాన్స్‌ఫర్ అలవెన్స్‌ను కొలిచే అసలైన పద్ధతి.

AccountingStart ను కూడా రాయండి, ఎప్పుడూ AccountingMax ను విడిగా ఉంచవద్దు. కోటా అనేది సంఖ్య, మరియు స్టార్ట్ లైన్ అనేది అది రీసెట్ అయ్యే కాలపరిమితి. కాలపరిమితి లేని కోటా రిలేను నిద్రాణస్థితిలో (hibernation) ఉంచుతుంది, దాన్ని తిరిగి ప్రారంభించడానికి ఏ మార్గం ఉండదు.

హిబర్నేషన్ అనేది ఒక మొరటు పద్ధతి. కోటా అయిపోయినప్పుడు, tor దీన్ని లాగ్ చేస్తుంది మరియు కొత్త పనిని తీసుకోవడం ఆపివేస్తుంది:

Bandwidth soft limit reached; commencing hibernation. No new connections will be accepted

రిలే తదుపరి కాలపరిమితి ప్రారంభమైన వెంటనే మేల్కొనదు. Tor గత కోటాను ఎంత వేగంగా ఖర్చు చేసిందో ట్రాక్ చేస్తుంది మరియు కొత్త వ్యవధిలో ఒక యాదృచ్ఛిక సమయాన్ని ఎంచుకుంటుంది, తద్వారా వేలకొద్దీ రిలేలు ఒకే సెకనులో నెట్‌వర్క్‌లోకి తిరిగి రాకుండా ఉంటాయి. ప్రతి నెల చివరి వారంలో కనిపించకుండా పోయే రిలే, డైరెక్టరీ అథారిటీలు కొలిచే స్టెబిలిటీని కోల్పోతుంది. RelayBandwidthRate ను పరిమితి ఎప్పటికీ చేరనంతగా సెట్ చేయండి, మరియు AccountingMax ను బిల్లును రక్షించే చివరి రక్షణగా ఉంచండి.

Relayని ప్రారంభించి, అది అందుబాటులో ఉందో లేదో నిర్ధారించుకోండి

sudo systemctl restart tor@default
sudo systemctl status tor@default
sudo journalctl -u tor@default -n 50

కొన్ని నిమిషాల్లోనే, log ఫైల్‌లో ఈ క్రింది లైన్ కనిపిస్తుంది:

Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.

ఈ వాక్యం అంటే ఇతర relays మీ ORPortకి కనెక్ట్ అయ్యాయని మరియు దాని ద్వారా ఒక సర్క్యూట్‌ను నిర్మించాయని అర్థం. ఈ సందేశం కనిపించే వరకు, మీ relay డైరెక్టరీలో ఉండదు మరియు ఎటువంటి ట్రాఫిక్‌ను మోయదు. వైఫల్యం సంభవించినప్పుడు ఇలా కనిపిస్తుంది:

Your server has not managed to confirm reachability for its ORPort(s) at 203.0.113.10:9001. Relays do not publish descriptors until their ORPort and DirPort are reachable. Please check your firewalls, ports, address, /etc/hosts file, etc.

దీనిని క్రమ పద్ధతిలో పరిష్కరించండి. ufwలో ORPort ఓపెన్ అయి ఉందో లేదో చూడండి. అలాగే, సర్వీస్ ప్రొవైడర్ అందించే ప్రత్యేక నెట్‌వర్క్ ఫైర్‌వాల్‌లో కూడా అది ఓపెన్ అయి ఉండాలి. ఆ సందేశంలో ఉన్న అడ్రస్, NAT సెటప్ నుండి వచ్చిన ప్రైవేట్ అడ్రస్ కాకుండా, ఇంటర్నెట్ ద్వారా మీకు రూట్ అయ్యే అసలైన అడ్రస్ అని నిర్ధారించుకోండి. వేరొక మెషీన్ నుండి nc -vz 203.0.113.10 9001 ఉపయోగించి పోర్ట్‌ను పరీక్షించండి. Tor స్వయంగా self-testను మళ్ళీ మళ్ళీ నిర్వహిస్తుంది, కాబట్టి ఫైర్‌వాల్ సమస్యను పరిష్కరించిన తర్వాత అది ఆటోమేటిక్‌గా గుర్తిస్తుంది, లేదా వెంటనే తెలియాలంటే సర్వీస్‌ను restart చేయండి.

మీ relay యొక్క శాశ్వత గుర్తింపు దాని fingerprint:

sudo cat /var/lib/tor/fingerprint

Descriptor ప్రచురించబడిన సుమారు మూడు గంటల తర్వాత, relay Relay Searchలో కనిపిస్తుంది. అక్కడ మీ nicknameతో వెతకండి లేదా fingerprintను paste చేయండి. మీ relay గురించి నెట్‌వర్క్ ఏమనుకుంటుందో ఆ పేజీ తెలియజేస్తుంది: దానికి ఉన్న flags ఏమిటి, authorities దానికి ఇచ్చే weight ఎంత, మరియు అది ఏ వెర్షన్‌ను ప్రచురిస్తోంది వంటి వివరాలు అక్కడ ఉంటాయి.

కొత్త Tor relay కి ట్రాఫిక్ ఎందుకు తక్కువగా ఉంటుంది?

ఎందుకంటే నెట్‌వర్క్ ఇంకా దానిని కొలవలేదు (measure చేయలేదు), ఈ ప్రక్రియకు వారాల సమయం పడుతుంది. Tor Project ఈ పెరుగుదల దశలను నాలుగు భాగాలుగా వివరిస్తుంది, అయితే దీనిని చదవని ఆపరేటర్లు relay పాడైపోయిందని భావించి సెట్టింగులను మార్చడం ప్రారంభిస్తారు.

మొదటి మూడు రోజులు relay కొలవబడదు. ఇది తన సొంత పరీక్షా ఫలితాలను నివేదిస్తుంది, కానీ directory authorities ప్రచురించిన బరువును (weight) 20 KB కి పరిమితం చేస్తాయి, కాబట్టి క్లయింట్లు దీనిని దాదాపు ఎంచుకోవు. సుమారు మూడవ రోజు నుండి ఎనిమిదవ రోజు వరకు, bandwidth authorities దీనిని నిజంగా కొలుస్తాయి మరియు బరువు పెరుగుతుంది. అయితే, ఇది కేవలం middle hop గా మాత్రమే ఉపయోగించబడుతుంది, ఎందుకంటే ఏ క్లయింట్ కూడా కొత్తగా వచ్చిన relay ని తమ మొదటి hop గా ఎంచుకోవడానికి ఇష్టపడదు.

ఎనిమిదవ రోజు ప్రాంతంలో, relay కి Guard flag పొందే అర్హత వస్తుంది. ఈ flag రాగానే ట్రాఫిక్ తగ్గుతుంది, ఇది అందరినీ ఆశ్చర్యపరుస్తుంది: క్లయింట్లు middle hops ఎంచుకునేటప్పుడు guards ను వదిలేస్తారు (ఎందుకంటే guard ఇప్పటికే బిజీగా ఉంటుందని వారు భావిస్తారు), కాబట్టి guard ట్రాఫిక్ పెరగకముందే relay తన middle ట్రాఫిక్‌ను కోల్పోతుంది. క్లయింట్లు తమ guard సెట్‌లను మార్చుకున్నప్పుడు మాత్రమే ఇది మళ్ళీ నిండుతుంది, దీనికి వారాల సమయం పడుతుంది. సుమారు 68వ రోజు నాటికి ఇది స్థిరమైన స్థితికి చేరుకుంటుంది, అక్కడ relay ని వదిలేసే క్లయింట్లు మరియు కొత్తగా చేర్చుకునే క్లయింట్లు సమానంగా ఉంటారు.

కాబట్టి, మూడు రోజుల వరకు ఏమీ ఆశించకపోవడం, వారం తర్వాత కొంత ట్రాఫిక్ రావడం, మరియు రెండు నెలల తర్వాత పూర్తి స్థాయి లోడ్ రావడం అనేది సహజమైన అంచనా. ఏదైనా ఒక సెట్టింగ్‌ను మార్చినట్లయితే, దాని ప్రభావం చూడటానికి ఒక వారం వేచి ఉండండి. పోర్ట్ 9001 పై TCP చెక్ చేసే self-hosted Uptime Kuma status page ను ఉపయోగించడం మీ ఆందోళనను తగ్గించడానికి మంచి మార్గం: ఇది మీరు నియంత్రించగలిగే ప్రశ్నకే సమాధానం ఇస్తుంది, అంటే పోర్ట్ ఇంకా స్పందిస్తుందా లేదా అనేది మాత్రమే.

nyx తో relay ని పర్యవేక్షించడం

nyx అనేది నడుస్తున్న relay కోసం టెర్మినల్ మానిటర్. ఇది tor యొక్క కంట్రోల్ పోర్ట్‌తో కమ్యూనికేట్ చేస్తుంది, కాబట్టి ముందుగా torrc లో దానిని ఎనేబుల్ చేయండి:

ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1

ControlPort కేవలం 127.0.0.1 లో మాత్రమే వింటుంది (listens), మరియు cookie authentication అంటే ఒక ప్రోగ్రామ్ కమాండ్లను జారీ చేయడానికి ముందు ఒక రహస్య ఫైల్‌ను చదవాలి. Tor ఆ cookie ని /run/tor/control.authcookie లో debian-tor యూజర్‌గా, 600 మోడ్‌లో రాస్తుంది, కాబట్టి వేరే ఏదీ దానిని చదవలేదు. CookieAuthFileGroupReadable 1 దానిని గ్రూపుకు అందుబాటులోకి తెస్తుంది, దీనివల్ల మీ సొంత అకౌంట్ sudo లేకుండానే nyx ని రన్ చేయగలదు.

sudo apt install -y nyx
sudo adduser "$USER" debian-tor
sudo systemctl restart tor@default

లాగ్ అవుట్ చేసి మళ్ళీ లాగిన్ అవ్వండి, ఆపై nyx ని రన్ చేయండి. కొత్త గ్రూప్ లాగిన్ సమయంలోనే అప్డేట్ అవ్వాలి, కాబట్టి కాన్ఫిగరేషన్ సరిగ్గా ఉన్నప్పటికీ, అదే షెల్ సెషన్‌లో nyx ని రన్ చేస్తే cookie ఫైల్ వద్ద పర్మిషన్ ఎర్రర్ వస్తుంది. nyx లైవ్ బ్యాండ్‌విడ్త్, అప్‌టైమ్, లాగ్ స్ట్రీమ్ మరియు కనెక్షన్ జాబితాను చూపుతుంది. మొదటి కొన్ని వారాల్లో, బ్యాండ్‌విడ్త్ గ్రాఫ్ మీ RelayBandwidthRate కంటే తక్కువగా ఉండేలా చూసుకోవడం ముఖ్యం.

ఒకటి కంటే ఎక్కువ relayలను నడపడం: MyFamily మరియు family keys

ఒకే relay ఉన్నట్లయితే, ఈ విభాగాన్ని దాటవేయండి. ఒకే ఆపరేటర్ నడుపుతున్న రెండు లేదా అంతకంటే ఎక్కువ relayలు ఒకదానికొకటి ప్రకటించుకోవాలి. దీనివల్ల, క్లయింట్లు మీ యంత్రాల ద్వారానే ప్రవేశించి, బయటకు వెళ్లే సర్క్యూట్‌ను నిర్మించకుండా నిరోధించవచ్చు; లేకపోతే ఒకే ఆపరేటర్ సర్క్యూట్ యొక్క రెండు చివరలను చూడగలిగే అవకాశం ఉంటుంది.

దీని కోసం చాలా కాలంగా వాడుకలో ఉన్న పద్ధతి ప్రతి relay యొక్క torrc ఫైల్‌లో MyFamily ని ఉపయోగించి, మిగిలిన అన్ని relayల fingerprints ను జాబితా చేయడం:

MyFamily AAAAAAAAAA,BBBBBBBB

ప్రతి relay మిగిలిన అన్ని relayలను జాబితా చేస్తుంది, కాబట్టి నాలుగో relayని చేర్చాలంటే నాలుగు ఫైళ్లను సవరించాల్సి ఉంటుంది. Tor 0.4.9 వెర్షన్ దీనిని family key తో భర్తీ చేసింది. ఒక కీని సృష్టించి, దానిని షేర్ చేయండి:

tor --keygen-family myfamily

ఇది myfamily.secret_family_key ఫైల్‌ను రాస్తుంది మరియు ఒక FamilyId లైన్‌ను ప్రింట్ చేస్తుంది. ఆ కీ ఫైల్‌ను ప్రతి relay లోని DataDirectory యొక్క keys సబ్-డైరెక్టరీలోకి (Debian మరియు Ubuntu లలో /var/lib/tor/keys) కాపీ చేయండి, ఫైల్ పేరుకు .secret_family_key సఫిక్స్‌ను అలాగే ఉంచండి. ప్రింట్ అయిన FamilyId లైన్‌ను ప్రతి torrc ఫైల్‌కు జోడించి, sudo systemctl reload tor@default తో రీలోడ్ చేయండి. ప్రస్తుతానికి MyFamily జాబితాను కూడా అలాగే ఉంచండి. family certificates గురించి ఇంకా తెలియని క్లయింట్లు పాత పద్ధతిలోని జాబితాను చదువుతాయి, మరియు దానిని ఎప్పుడు తొలగించవచ్చో Tor Project తెలియజేస్తుంది.

రన్ అవుతున్న తర్వాత ఏమి విఫలమవుతాయి

వెర్షన్ పాతబడిపోతుంది. Unattended upgrades ప్యాకేజీని భర్తీ చేస్తాయి, కానీ ఏదైనా కారణంతో రీస్టార్ట్ అయ్యే వరకు రన్ అవుతున్న ప్రాసెస్ పాత బైనరీనే ఉపయోగిస్తుంది. బాక్స్‌లోని tor --version ని, రిలే యొక్క Relay Search పేజీలో కనిపించే వెర్షన్‌తో పోల్చి చూడండి. అవి వేర్వేరుగా ఉంటే, నెట్‌వర్క్ ఇంకా పాత వెర్షన్‌నే చూస్తోంది, కాబట్టి సర్వీస్‌ను రీస్టార్ట్ చేయండి.

క్లాక్ డ్రిఫ్ట్ (సమయం మారడం). కన్సెన్సస్ డాక్యుమెంట్లు మరియు సర్టిఫికెట్లు అన్నీ సమయంతో ముడిపడి ఉంటాయి, కాబట్టి సిస్టమ్ క్లాక్ చాలా తేడాగా ఉన్న మెషీన్ కన్సెన్సస్‌ను తిరస్కరిస్తుంది మరియు పబ్లిష్ చేయడం ఆపేస్తుంది. timedatectl సిస్టమ్ క్లాక్ సింక్రొనైజ్ అయిందని చూపించాలి. ఒకవేళ అలా చూపించకపోతే, systemd-timesyncd ని ఎనేబుల్ చేయండి లేదా chrony ని ఇన్‌స్టాల్ చేయండి.

IP అడ్రస్ మారుతుంది. డిస్క్రిప్టర్ అడ్రస్‌ను కలిగి ఉంటుంది, అడ్రస్ మారితే క్లయింట్లు దానిని చేరుకోలేవు. ఏదైనా ప్రొవైడర్ మైగ్రేషన్ లేదా అడ్రస్ మార్పు తర్వాత, tor ని రీస్టార్ట్ చేసి మళ్ళీ self-test లైన్ కోసం చూడండి.

రిలే ప్లాన్ అనుమతించిన దానికంటే నెమ్మదిగా ఉంటుంది. ఆధునిక ప్రాసెసర్లపై Tor రిలే క్రిప్టో సమర్థవంతంగా పనిచేస్తుంది, మరియు Tor Project ప్రకారం AES-NI సపోర్ట్ ఉన్న CPU ప్రతి దిశలో సుమారు 400 నుండి 450 Mbit/s వేగాన్ని ఇస్తుంది. ఆ పరిమితికి చేరుకోకముందే మీరు పోర్ట్ వేగం మరియు ట్రాన్స్‌ఫర్ అనుమతుల ద్వారా పరిమితం చేయబడతారు, అందుకే హార్డ్‌వేర్ కంటే పైన పేర్కొన్న అకౌంటింగ్ విభాగం చాలా ముఖ్యం.

FAQ

Tor relay ఎంత bandwidth ఉపయోగిస్తుంది?

మీరు ఎంత అనుమతిస్తే అంత మాత్రమే, అంతకు మించి కాదు. RelayBandwidthRate ప్రతి దిశలోనూ relay ట్రాఫిక్‌ను విడివిడిగా పరిమితం చేస్తుంది, కాబట్టి 1 Mbit/s కి సెట్ చేసిన relay ఒకే సమయంలో 1 Mbit/s ఇన్‌కమింగ్ మరియు 1 Mbit/s అవుట్‌గోయింగ్ ట్రాఫిక్‌ను నిర్వహించగలదు. ఇది రోజుకు సుమారు 21.6 GB, లేదా 30 రోజుల నెలలో రెండు దిశలను కలిపి 648 GB అవుతుంది. ఆ పరిమితికి లోబడి నెలవారీ కోటా కోసం AccountingMax తో పాటు AccountingRule sum ని జోడించండి.

Tor relay నడపడం వల్ల నాకు abuse ఫిర్యాదులు వస్తాయా?

Guard లేదా middle relay ట్రాఫిక్‌ను ఇతర Tor relayలకు మాత్రమే పంపుతుంది, వినియోగదారుడి కోసం నేరుగా ఏ వెబ్‌సైట్‌కూ కనెక్ట్ అవ్వదు. కాబట్టి Tor ద్వారా ఎవరైనా చేసిన పనులకు సంబంధించిన ఫిర్యాదులు exit operator కి వెళ్తాయి, మీకు రావు. మీ IP అడ్రస్ పబ్లిక్‌గా relay అని లిస్ట్ చేయబడటం వల్ల, కొన్నిసార్లు scanning లేదా IP reputation లిస్టింగ్‌లు జరగవచ్చు. Exit relayలు మాత్రమే abuse మెయిల్స్ మరియు లీగల్ నోటీసులను అందుకుంటాయి, కాబట్టి వాటిని నడిపే ముందు అటువంటి వాటిని నిర్వహించడానికి అంగీకరించే ప్రొవైడర్‌ను ఎంచుకోవాలి. ఏదైనా రకమైన relay ప్రారంభించే ముందు మీ ప్రొవైడర్ నిబంధనలను చదవండి.

నా కొత్త Tor relay కి ట్రాఫిక్ ఎందుకు రావడం లేదు?

కొత్త relayలను వాటి సామర్థ్యాన్ని కొలిచే వరకు డిజైన్ ప్రకారం పరిమితం చేస్తారు. మొదటి మూడు రోజులు directory authorities ప్రచురించిన weight ను 20 KB కి పరిమితం చేస్తాయి, కాబట్టి క్లయింట్లు ఆ relayని ఎంచుకోవు. సుమారు మూడవ రోజు నుండి bandwidth authorities దీనిని కొలుస్తాయి, ఎనిమిదవ రోజు నాటికి ఇది Guard flag కి అర్హత పొందుతుంది. ఆ సమయంలో క్లయింట్లు middle hops ఎంచుకునేటప్పుడు guardలను నివారించడం వల్ల ట్రాఫిక్ మళ్ళీ తగ్గుతుంది. సుమారు 68వ రోజు నాటికి పూర్తి లోడ్ వస్తుంది. లాగ్‌లో "Self-testing indicates your ORPort is reachable from the outside" అని ఉందో లేదో సరిచూసుకోండి, ఆ తర్వాత దానిని వదిలేయండి.

1 TB transfer allowance ఉన్న VPS లో నేను Tor relay నడపవచ్చా?

అవును, ప్రతి దిశలో సుమారు 1 Mbit/s వేగంతో నడపవచ్చు, ఇది RelayBandwidthRate 125 KBytes అవుతుంది. మీ ప్రొవైడర్ రెండు దిశలను లెక్కిస్తే, ఇది నెలకు సుమారు 648 GB అవుతుంది, దీనివల్ల అప్‌డేట్‌లు మరియు బ్యాకప్‌ల కోసం కొంత ఖాళీ ఉంటుంది. AccountingMax 400 GBytes తో పాటు AccountingRule sum మరియు AccountingStart month 1 00:00 ని జోడించండి, తద్వారా ప్లాన్ పరిమితి దాటితే relay hibernates అవుతుంది. ఒకవేళ ప్రొవైడర్ అవుట్‌బౌండ్ ట్రాఫిక్‌కు మాత్రమే ఛార్జ్ చేస్తే, మీరు ఈ వేగాన్ని రెట్టింపు చేయవచ్చు.

నేను ఒకే relay నడుపుతుంటే MyFamily సెట్ చేయాలా?

అవసరం లేదు. ఒకే ఆపరేటర్ ఆధ్వర్యంలో ఉన్న రెండు relayల ద్వారా క్లయింట్లు సర్క్యూట్‌ను నిర్మించకుండా ఉండటానికి Family declarations ఉపయోగపడతాయి, ఒకే relay ఉన్నప్పుడు దీనికి అర్థం లేదు. మీరు రెండవ relayని జోడించిన వెంటనే దీనిని సెట్ చేయండి: ప్రతి relay యొక్క MyFamily లైన్‌లో అన్ని relayల fingerprintలను పేర్కొనండి, లేదా Tor 0.4.9 లో ప్రవేశపెట్టిన family keyని ఉపయోగించండి, ఇది నిరంతరం పెరిగే జాబితాకు బదులుగా ఒకే FamilyId ని పంపిణీ చేస్తుంది.