Linux VPS పై Tor relay సెటప్ చేయడం ఎలా?
Linux VPS లో Tor relay ఎలా రన్ చేయాలో తెలుసుకోండి. torrc కాన్ఫిగరేషన్, బ్యాండ్విడ్త్ పరిమితులు, nyx మానిటరింగ్ మరియు కొత్త relay నెమ్మదిగా యాక్టివేట్ అయ్యే కారణాలను ఇక్కడ చూడండి.
VPS పై Tor relay ఏమి చేస్తుంది
Tor relay అనేది public IP address కలిగిన యంత్రంపై నడిచే ఒక Tor daemon. ఇది ఇతరుల కోసం ఎన్క్రిప్ట్ చేయబడిన ట్రాఫిక్ను ఫార్వార్డ్ చేస్తుంది. Directory authorities దీనిని ప్రచురిస్తాయి మరియు Tor clients దీని ద్వారా సర్క్యూట్లను నిర్మిస్తాయి. ఒక guard లేదా middle relay ట్రాఫిక్ను మరొక relay కి మాత్రమే పంపుతుంది, కాబట్టి ఇది ఎన్నడూ అపరిచితుల తరపున వెబ్సైట్లకు కనెక్షన్లను తెరవదు. ఈ ఒక్క కారణం వల్లే దీనికి ఎటువంటి abuse మెయిల్స్ రావు, మరియు సాధారణ VPS కి ఇది సరైన సహకారం.
దీని పని చాలా తక్కువ: ఒక ప్యాకేజీ, పదిహేను లైన్ల కాన్ఫిగరేషన్, ఒక firewall రూల్, మరియు ఒక రీస్టార్ట్. ఈ గైడ్లో మిగిలిన భాగం తరచుగా సమస్యలకు దారితీస్తుంది. Metered ప్లాన్లలో 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 బ్లాక్ చేయబడిన ప్రాంతాల్లోని వినియోగదారులకు దీన్ని ప్రైవేట్గా అందిస్తారు. ఈ నాలుగింటిలో ఇది అతి తక్కువ బాధ్యత కలిగినది: తక్కువ బ్యాండ్విడ్త్, పబ్లిక్ లిస్టింగ్ ఉండదు, మరియు మీ ప్లాన్ చిన్నదైతే ఇది సరైన మొదటి అడుగు.
- Exit relay. ఇది చివరి దశ, ఇది గమ్యస్థాన సైట్కు కనెక్షన్ను తెరుస్తుంది. వినియోగదారు చేసే ప్రతి అభ్యర్థన మీ IP అడ్రస్ నుంచే వెళ్తుంది, కాబట్టి దుర్వినియోగ నివేదికలు (abuse reports) మరియు పోలీసు విచారణలు ఆ IP అడ్రస్ యజమానికే అందుతాయి.
Exit అనేది సాధారణ VPSలలో ఉండకూడని ఏకైక పాత్ర. Exit relayని నడపాలనుకుంటే, ముందుగానే అంగీకరించిన ప్రొవైడర్ వద్ద, ప్రత్యేక IP అడ్రస్ మరియు పబ్లిక్ abuse contact వివరాలతో మాత్రమే నడపాలి. చాలా సాధారణ హోస్టింగ్ నిబంధనలు దీన్ని నిషేధిస్తాయి, దీన్ని విస్మరిస్తే సర్వర్ సస్పెండ్ అవ్వడం మరియు IP అడ్రస్ కోల్పోవడం జరుగుతుంది. Guard లేదా middle relayలు అదే వినియోగదారు ట్రాఫిక్ను మోస్తాయి, కానీ ఇటువంటి ఇబ్బందులు ఉండవు.
కింద ఉన్నవన్నీ guard/middle relayని నిర్మించడానికి ఉపయోగపడతాయి. ExitRelay 0 అనేది దీన్ని ఆ పాత్రలోనే ఉంచే లైన్.
ప్రారంభించే ముందు VPS కు అవసరమైనవి
Tor Project రిలేల కోసం కఠినమైన అవసరాలను ప్రచురిస్తుంది. ఆగస్టు 2026 నాటికి అవి: రిలే కోసం ఒక పబ్లిక్ IPv4 అడ్రస్, ప్రతి దిశలో కనీసం 10 Mbit/s బ్యాండ్విడ్త్ (16 Mbit/s సిఫార్సు చేయబడింది), నెలకు కనీసం 100 GB అవుట్బౌండ్ ట్రాఫిక్, మరియు 40 Mbit/s కంటే తక్కువ వేగం ఉంటే 512 MB RAM లేదా అంతకంటే ఎక్కువ ఉంటే 1 GB RAM ఉండాలి. అప్టైమ్ కోసం ఎటువంటి స్థిరమైన నిబంధన లేదు, కానీ రోజుకు రెండు గంటల కంటే తక్కువ సమయం నడిచే రిలే నెట్వర్క్కు పెద్దగా ఉపయోగపడదు.
10 Mbit/s అనేది లైన్ సామర్థ్యాన్ని సూచిస్తుంది, సెట్టింగ్ను కాదు. దీనికి తగిన పోర్ట్ అవసరం. మీరు నెలవారీ ట్రాన్స్ఫర్ పరిమితిని బట్టి, ఆ లైన్లో ఎంత భాగాన్ని రిలేకు కేటాయించాలనేది మీ నిర్ణయం. కాన్ఫిగరేషన్ను మార్చే ముందు మీ ప్లాన్ వివరాలను చదవండి. మీరు ఇంకా సర్వర్ను ఎంచుకుంటున్నట్లయితే, ఒక VPS నెలకు వాస్తవంగా ఎంత ఖర్చవుతుంది అనే విభాగం ట్రాన్స్ఫర్ అలవెన్స్లు ఎలా విక్రయించబడతాయో వివరిస్తుంది, మరియు VPS యొక్క అసలైన నెట్వర్క్ త్రూపుట్ను కొలవడం అనే విభాగం సేల్స్ పేజీని నమ్మకుండా iperf3 తో లైన్ సామర్థ్యాన్ని ఎలా పరీక్షించాలో చూపుతుంది.
ముందుగా మెషీన్ను సురక్షితం (harden) చేయండి. రిలే అనేది పబ్లిక్ అడ్రస్లో ఉండే పబ్లిక్ సర్వీస్, కాబట్టి ప్రచురించిన నిమిషాల్లోనే ఆ అడ్రస్ స్కాన్ చేయబడుతుంది. SSH ను కీలకు పరిమితం చేయడం మరియు sshd కాన్ఫిగరేషన్ను కఠినతరం చేయడం అనే ప్రక్రియకు పది నిమిషాలు పడుతుంది; ఇది రిలే లైవ్ లోకి రాకముందే జరగాలి, తర్వాత కాదు.
Tor Project repository నుండి Tor ను ఇన్స్టాల్ చేయడం
Distribution ప్యాకేజీకి బదులుగా Tor Project యొక్క స్వంత apt repository ని ఉపయోగించండి. Relay కోడ్ stable release కంటే వేగంగా మారుతుంది, కాబట్టి పరిష్కారాలు (fixes) ముందుగా ఈ repository కి చేరుతాయి, అయితే distribution ప్యాకేజీలు విడుదలల మధ్య వెనుకబడి ఉంటాయి.
sudo apt update
sudo apt install -y apt-transport-https gnupg wgetముందుగా signing key ని, ఆపై repository ని జోడించండి. Codename ను మెషిన్ నుండే చదువుతుంది, కాబట్టి ఇదే block 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 --versiontor --version మీరు ఇప్పుడే ఇన్స్టాల్ చేసిన వెర్షన్ను ప్రింట్ చేస్తుంది. ఒకవేళ apt update ప్రింట్ చేసినప్పుడు NO_PUBKEY ఎర్రర్ వస్తే, Signed-By: లైన్లో పేర్కొన్న పాత్లో dearmored key లేదు అని అర్థం, కాబట్టి release ఫైల్ను చెక్ చేయడానికి apt వద్ద కీ లేదు. deb.torproject.org-keyring ప్యాకేజీ తర్వాత అవసరమవుతుంది: ఇది signing key ని సాధారణ ప్యాకేజీగా అందిస్తుంది, తద్వారా ఆ కీ మారినప్పుడు (rotated) కూడా apt పనిచేస్తూనే ఉంటుంది.
Automatic upgrades ను ఆన్ చేసి, ఆపై కొత్త origin గురించి వాటికి తెలియజేయండి.
sudo apt install -y unattended-upgrades apt-listchangesUbuntu లో, /etc/apt/apt.conf.d/50unattended-upgrades లోని Allowed-Origins బ్లాక్కు Tor origin ని జోడించండి:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
"TorProject:${distro_codename}";
};Debian లో అదే ఫైల్ Origins-Pattern ని ఉపయోగిస్తుంది, అక్కడ జోడించాల్సిన లైన్ "origin=TorProject";. ఫలితాన్ని sudo unattended-upgrade --debug --dry-run తో తనిఖీ చేయండి, ఇది అది పనిచేసే origins ను ప్రింట్ చేస్తుంది మరియు వేరే దేనినీ రాయదు.
ముఖ్యమైన torrc
ఈ ప్యాకేజీ చాలా వ్యాఖ్యలతో కూడిన సుదీర్ఘమైన /etc/tor/torrcని ఇన్స్టాల్ చేస్తుంది. ఒక relay కోసం కొన్ని లైన్లు మాత్రమే ముఖ్యమైనవి. వాటిని ఫైల్ చివరన చేర్చండి.
Nickname mynicerelay
ContactInfo relay-ops[at]example.com
ORPort 9001
ExitRelay 0
SocksPort 0Nickname అనేది 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]:90011 GB VPSలో, MaxMemInQueues 512 MBని జోడించండి. Tor మెషీన్లోని మెమరీని బట్టి దాని క్యూ పరిమితిని నిర్ణయిస్తుంది, చిన్న షేర్డ్ బాక్స్లో ఇది మీరు ఆశించిన దానికంటే ఎక్కువ మెమరీని తీసుకుంటుంది. పరిమితిని మీరే సెట్ చేయడం వల్ల, ఒత్తిడి ఉన్నప్పుడు Tor క్యూలో ఉన్న సెల్స్ను తొలగిస్తుంది, దీనివల్ల kernel ప్రాసెస్ను నిలిపివేసే (kill) వరకు పెరగకుండా relay సురక్షితంగా ఉంటుంది.
ఫైర్వాల్లో ORPortను తెరవండి
ఇన్బౌండ్ ట్రాఫిక్ కోసం, ORPort ఇంటర్నెట్లోని ఎక్కడి నుంచైనా అందుబాటులో ఉండాలి. అవుట్బౌండ్ ట్రాఫిక్ విషయంలో, రిలేపై ఎటువంటి ఆంక్షలు విధించవద్దు: ఇది వేలకొద్దీ ఇతర రిలేలకు అనేక విభిన్న పోర్ట్ల ద్వారా కనెక్షన్లను తెరుస్తుంది, కాబట్టి అవుట్బౌండ్ 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 అవుట్గోయింగ్ ట్రాఫిక్ను పంపగలదు. రెండు దిశలను లెక్కించే ప్రొవైడర్ ఈ రెండింటి మొత్తాన్ని బిల్లు చేస్తుంది.
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:00RelayBandwidthBurst అనేది టోకెన్ బకెట్ పరిమాణం, కాబట్టి సగటు స్థిరంగా ఉన్నప్పుడు ఇది స్వల్పకాలిక స్పైక్లను అనుమతిస్తుంది. రేటుకు సుమారు రెండు రెట్లు ఉండటం సరైన విలువ.
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 కి కనెక్ట్ అయ్యాయని మరియు దాని ద్వారా ఒక circuit ని నిర్మించాయని అర్థం. ఆ లైన్ కనిపించే వరకు, మీ 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/fingerprintDescriptor ప్రచురించబడిన సుమారు మూడు గంటల తర్వాత, relay Relay Search లో కనిపిస్తుంది. అక్కడ మీ nickname తో వెతకండి లేదా fingerprint ను పేస్ట్ చేయండి. ఆ పేజీలో మీ relay గురించి నెట్వర్క్ ఏమనుకుంటుందో చూడవచ్చు: దానికి ఉన్న flags ఏమిటి, authorities దానికి ఇచ్చే weight ఎంత, మరియు అది ఏ వెర్షన్ను ప్రచురిస్తోంది వంటి వివరాలు అక్కడ ఉంటాయి.
కొత్త Tor relay కి ట్రాఫిక్ ఎందుకు తక్కువగా ఉంటుంది?
ఎందుకంటే నెట్వర్క్ ఇంకా దానిని కొలవలేదు (measure చేయలేదు), ఈ ప్రక్రియకు వారాల సమయం పడుతుంది. Tor Project ఈ పెరుగుదల దశలను నాలుగు భాగాలుగా వివరిస్తుంది. దీనిని చదవని ఆపరేటర్లు, relay పాడైపోయిందని భావించి అనవసరమైన మార్పులు చేయడం ప్రారంభిస్తారు.
మొదటి మూడు రోజులు relay కొలవబడదు. ఇది తన సొంత పరీక్షా ఫలితాలను మాత్రమే నివేదిస్తుంది. డైరెక్టరీ అథారిటీలు ప్రచురించిన వెయిట్ను 20 KB కి పరిమితం చేస్తాయి, కాబట్టి క్లయింట్లు దీనిని ఎంచుకునే అవకాశం దాదాపు ఉండదు. సుమారు మూడవ రోజు నుండి ఎనిమిదవ రోజు వరకు, బ్యాండ్విడ్త్ అథారిటీలు దీనిని వాస్తవంగా కొలుస్తాయి మరియు వెయిట్ పెరుగుతుంది. అయితే, ఇది కేవలం middle hop గా మాత్రమే ఉపయోగించబడుతుంది, ఎందుకంటే ఏ క్లయింట్ కూడా కొత్తగా వచ్చిన relay ని తమ మొదటి hop (Guard) గా ఎంచుకోవడానికి ఇష్టపడదు.
సుమారు ఎనిమిదవ రోజున, relay కి Guard ఫ్లాగ్ పొందే అర్హత లభిస్తుంది. ఈ ఫ్లాగ్ వచ్చినప్పుడు ట్రాఫిక్ తగ్గడం అందరినీ ఆశ్చర్యపరుస్తుంది: క్లయింట్లు middle hop లను ఎంచుకునేటప్పుడు Guard లను దాటవేస్తారు (ఎందుకంటే Guard ఇప్పటికే బిజీగా ఉంటుందని వారు భావిస్తారు). దీనివల్ల Guard ట్రాఫిక్ పెరగకముందే, relay తన middle ట్రాఫిక్ను కోల్పోతుంది. క్లయింట్లు తమ Guard సెట్లను మార్చుకున్నప్పుడు మాత్రమే ట్రాఫిక్ మళ్లీ పెరుగుతుంది, దీనికి వారాల సమయం పడుతుంది. సుమారు 68వ రోజు నాటికి, ఇది స్థిర స్థితికి చేరుకుంటుంది; అప్పుడు relay ని వదిలేసే క్లయింట్లు మరియు కొత్తగా చేర్చుకునే క్లయింట్ల సంఖ్య సమానంగా ఉంటుంది.
కాబట్టి, సహజంగా మూడు రోజుల వరకు ఏమీ జరగదు, ఒక వారం తర్వాత కొంత ట్రాఫిక్ మొదలవుతుంది, మరియు రెండు నెలల తర్వాత పూర్తి స్థాయి లోడ్ వస్తుంది. ఏదైనా ఒక సెట్టింగ్ను మార్చినట్లయితే, దాని ప్రభావం చూడటానికి ఒక వారం వేచి ఉండండి. పోర్ట్ 9001 పై TCP చెక్తో కూడిన self-hosted Uptime Kuma status page ను ఉపయోగించడం మీ ఆందోళనకు మంచి పరిష్కారం: ఇది మీరు నియంత్రించగలిగే అంశం, అంటే పోర్ట్ ఇంకా స్పందిస్తుందా లేదా అనే విషయాన్ని ఇది నిర్ధారిస్తుంది.
nyx తో relay ను పర్యవేక్షించడం
nyx అనేది నడుస్తున్న relay కోసం ఒక terminal monitor. ఇది tor యొక్క control port తో సంభాషిస్తుంది, కాబట్టి ముందుగా torrc లో దానిని enable చేయండి:
ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1ControlPort కేవలం 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@defaultLog out అయ్యి మళ్ళీ log in అవ్వండి, ఆపై nyx ను రన్ చేయండి. కొత్త గ్రూప్ లాగిన్ సమయంలోనే అమలవుతుంది, కాబట్టి కాన్ఫిగరేషన్ సరిగ్గా ఉన్నప్పటికీ, అదే shell session లో nyx ను రన్ చేస్తే cookie ఫైల్ వద్ద permission error వస్తుంది. nyx ప్రత్యక్ష bandwidth, uptime, log stream మరియు connection జాబితాను చూపుతుంది. మొదటి కొన్ని వారాల్లో, bandwidth గ్రాఫ్ మీ RelayBandwidthRate కంటే తక్కువగా ఉండేలా చూసుకోవడం ముఖ్యం.
ఒకటి కంటే ఎక్కువ రిలేలను నడపడం: MyFamily మరియు ఫ్యామిలీ కీలు
మీరు ఒకే రిలేను నడుపుతుంటే, ఈ విభాగాన్ని దాటవేయండి. ఒకే ఆపరేటర్ నడిపే రెండు లేదా అంతకంటే ఎక్కువ రిలేలు ఒకదానికొకటి తమ వివరాలను ప్రకటించుకోవాలి. దీనివల్ల, క్లయింట్లు మీ సర్వర్ల ద్వారానే ప్రవేశించి, మళ్ళీ మీ సర్వర్ల ద్వారానే బయటకు వెళ్లే సర్క్యూట్ను నిర్మించకుండా నిరోధించవచ్చు. ఒకే ఆపరేటర్ రెండు చివరలను చూడగలిగితే అది గోప్యతకు భంగం కలిగిస్తుంది.
దీని కోసం చాలా కాలంగా వాడుకలో ఉన్న పద్ధతి ప్రతి రిలే యొక్క torrc ఫైల్లో MyFamilyని ఉపయోగించడం. ఇందులో మిగిలిన అన్ని రిలేల ఫింగర్ప్రింట్లను జాబితా చేయాలి:
MyFamily AAAAAAAAAA,BBBBBBBBప్రతి రిలే మిగిలిన అన్ని రిలేలను జాబితా చేయాలి కాబట్టి, నాలుగో రిలేను జోడించాలంటే నాలుగు ఫైళ్లను ఎడిట్ చేయాల్సి ఉంటుంది. Tor 0.4.9 వెర్షన్ నుండి దీనిని ఫ్యామిలీ కీ (family key) తో భర్తీ చేశారు. ఒక కీని జనరేట్ చేసి, దానిని షేర్ చేయండి:
tor --keygen-family myfamilyఇది myfamily.secret_family_key ఫైల్ను రాస్తుంది మరియు ఒక FamilyId లైన్ను ప్రింట్ చేస్తుంది. ఆ కీ ఫైల్ను ప్రతి రిలేకు కాపీ చేయండి. దీనిని DataDirectory లోని keys సబ్-డైరెక్టరీలో (Debian మరియు Ubuntu లలో /var/lib/tor/keys) ఉంచండి, మరియు .secret_family_key సఫిక్స్ను అలాగే ఉంచండి. ప్రింట్ అయిన FamilyId లైన్ను ప్రతి torrc ఫైల్కు జోడించి, sudo systemctl reload tor@default తో రీలోడ్ చేయండి. ప్రస్తుతానికి MyFamily జాబితాను కూడా అలాగే ఉంచండి. ఫ్యామిలీ సర్టిఫికేట్లను ఇంకా అర్థం చేసుకోలేని క్లయింట్లు పాత జాబితాను చదువుతాయి. దీనిని ఎప్పుడు తొలగించవచ్చో 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 ట్రాన్స్ఫర్ పరిమితి ఉన్న 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 డిక్లరేషన్లు ఉపయోగపడతాయి, ఇది ఒకే relay ఉన్నప్పుడు అర్థరహితం. మీరు రెండవ relayని జోడించిన వెంటనే దీనిని సెట్ చేయండి: ప్రతి relay యొక్క MyFamily లైన్లో అన్ని relayల fingerprintలను పేర్కొనండి, లేదా Tor 0.4.9 లో ప్రవేశపెట్టిన family కీని ఉపయోగించండి, ఇది నిరంతరం పెరిగే లిస్టుకు బదులుగా ఒకే FamilyId ను పంపిణీ చేస్తుంది.