Махфиҳои dd ва ee: истиноди проксиро чӣ тавр хондан
Сервер, порт ва махфӣ: пешвандҳои dd ва ee чӣ маъно доранд ва то пайвастшавӣ чиро санҷидан мумкин аст.
Мундариҷа
Истиноди проксиро одатан бе хондан пахш мекунанд. Аммо се параметр дар он — ягона чизест, ки то пайвастшавӣ санҷидан мумкин аст, ва махфӣ режими кориро нишон медиҳад ва аксар вақт сабаби пайваст нашудани проксиро. Истинодро қисм ба қисм таҳлил мекунем.
Истинод аз рӯи параметрҳо
Формати истинод аз ҷониби ҳуҷҷатҳои Telegram муайян шудааст. Ду навишти баробарқимат ҳаст: tg://proxy бевосита дар барнома кушода мешавад, ва t.me/proxy — дар браузер. Хости t.me-ро чун telegram.me ё telegram.dog низ навишта мешавад, ва қисми баъд аз # нодида гирифта мешавад.
tg://proxy?server=proxy.example.com&port=443&secret=ee473ce5d4958eb5f968c87680a23854a0676f6f676c652e636f6d
| Параметр | Ҳатмӣ | Ин чист |
|---|---|---|
| server | бале | суроға ё суроғаи IP-и сервер |
| port | бале | порти сервер |
| secret | бале | махфии прокси |
Параметрҳо бо аломати & ҷудо мешаванд. Агар истинодро аз саҳифа нусха кунед, боварӣ ҳосил намоед, ки бо он аломатҳои зиёдатӣ нусха нашудаанд: дар HTML амперсанд чун & навишта мешавад, ва чунин истинод кушода намешавад.
Сервер ва порт
Сервер — номи домейн ё суроғаи IP. Домейн қулайтар аст: суроғаи серверро бе аз нав додани истинод тағйир додан мумкин аст. Порт аксар вақт 443 аст — ҳамон, ки сомонаҳои оддӣ бо HTTPS доранд: дар он трафик табииътар менамояд, ва дар портҳои ғайристандартӣ пайвастшавиҳо бештар зери филтрҳо меафтанд.[1]
[1] Барои режими ee ин махсусан муҳим аст: он HTTPS-ро тақлид мекунад, ва HTTPS дар порти 443 зиндагӣ мекунад.
Дар бораи сервер ва порт бештар чизе гуфтан лозим нест: суроға ҷавоб медиҳад ё не, танҳо бо пайвастшавӣ санҷидан мумкин аст. Чизи асосие, ки дар истинод пинҳон аст, — махфӣ.
Махфӣ
Махфӣ — сатри шонздаҳӣ. Дар асоси он ҳамеша 16 байти тасодуфӣ ҳаст, яъне 32 аломат. Баъд се варианти имконпазир ҳаст:
| Шакл | Дарозӣ | Сохтор | Режим |
|---|---|---|---|
| Бе пешванд | 32 аломат | калид | оддӣ (obfuscated2) |
| dd | 34 аломат | dd + калид | иловаи тасодуфии бастаҳо |
| ee | аз 42 аломат | ee + калид + домейн дар hex | FakeTLS |
Дар ҳуҷҷатҳои Telegram формат дақиқан ҳамин тавр тавсиф шудааст: махфӣ — 16 байт, одатан дар hex; шакли 17-байтӣ ҳам ҳаст, ки байти аввали он нақлиётро интихоб мекунад, аксар вақт 0xdd — padded intermediate.
dd чӣ маъно дорад
Дар README-и MTProxy-и расмӣ гуфта шудааст: баъзе провайдерҳо MTProxy-ро аз рӯи андозаи бастаҳо муайян мекунанд, бинобар ин ба чунин режим иловаи тасодуфӣ илова шудааст. Онро дар тарафи муштарӣ бо пешванди dd дар махфӣ фаъол мекунанд (cafe…babe ба ddcafe…babe табдил меёбад), ва иловаи тасодуфӣ танҳо барои муштариёне истифода мешавад, ки онро дархост кардаанд.
Дар сатҳи протокол ин нақлиёти padded intermediate аст: пеш аз баста дарозии 4-байтӣ меояд, ва дарозии умумӣ аз 0 то 15 байти тасодуфиро дар бар мегирад. Андозаҳо доимӣ намемонанд, аммо оғози пайвастшавӣ пештара мемонад.
ee чӣ маъно дорад
Пешванди ee режими FakeTLS-ро фаъол мекунад. Баръакси dd, баъд аз калид дар махфӣ боз домейн меояд — ҳамон байтҳое, ки муштарӣ дар майдони SNI ном мебарад. Бинобар ин махфии ee ҳамеша дарозтар аст. Домейн аз hex хонда мешавад:
echo 676f6f676c652e636f6d | xxd -r -p
Чаро зиндагии прокси аз ин домейн вобаста аст — дар мақолаи «FakeTLS: прокси чӣ тавр худро ба сомона монанд мекунад».
Барои mtg махфӣ ҳам дар формати base64 ва ҳам дар hex бо пешванди ee мешавад: фармони mtg generate-secret --hex google.com шакли дуюмро медиҳад, ва бе калиди --hex — аввалинро. Агар base64 дошта бошед, онро бурида ё бо даст аз нав насозед, балки истиноди тайёрро бо фармони mtg access гиред.
Машқ: махфиро аломат ба аломат таҳлил мекунем
Мисолро аз ҳуҷҷатҳои mtg мегирем — махфӣ барои google.com. Дар он 54 аломат ҳаст, ва шумурдани онҳо аз рӯи ҷадвал қулай аст:
| Аломатҳо | Дарозӣ | Ин чист |
|---|---|---|
| 1–2 | 2 | ee — режими FakeTLS |
| 3–34 | 32 | калид — 16 байти тасодуфӣ |
| 35–54 | 20 | 676f6f676c652e636f6d — калимаи google.com, ки бо байтҳо навишта шудааст: ду аломат барои ҳар ҳарф |
Аз ин қоида: дарозии махфии ee ба 2 + 32 + шумораи дучандшудаи аломатҳои домейн баробар аст. Барои махфӣ бо домейни даҳ аломат 54 мешавад, бо дувоздаҳ — 58. Махфии ee аз 42 аломат кӯтоҳтар намешавад: Telegram Desktop онро аз 21 байт қабул мекунад, яъне ба домейн ақаллан чор байт бояд расад. Агар дарозӣ мувофиқ наояд, махфӣ бурида шудааст ё бо хато ҷамъ шудааст.
Ҳамин калид дар режими dd чунин менамуд: dd473ce5d4958eb5f968c87680a23854a0 — 34 аломат бе домейн, ва дар режими оддӣ — танҳо 32 аломати калид.
Махфиро худатон чӣ тавр эҷод кардан мумкин аст
Калид — 16 байти тасодуфӣ аст. Барои режимҳои бе домейн як фармон кифоя аст; ҳардуи он аз ҳуҷҷатҳои лоиҳаҳо гирифта шудаанд:
openssl rand -hex 16
head -c 16 /dev/urandom | xxd -ps
Барои режими dd ба натиҷа пешванди dd илова мекунанд. Барои FakeTLS боварӣ кардан ба барнома осонтар аст: mtg generate-secret --hex домени-шумо.example фавран махфии тайёрро бо пешванд ва домейн медиҳад. Агар онро дастӣ ҷамъ кардан лозим бошад, пешванд, калид ва домейнро дар hex пайваст кардан кифоя аст:
KEY=$(openssl rand -hex 16)
DOMAIN=домени-шумо.example
printf 'ee%s%s\n' "$KEY" "$(printf '%s' "$DOMAIN" | xxd -p | tr -d '\n')"
Домейн дар махфӣ бояд бо домейни дар сервер танзимшуда мувофиқ бошад: дар telemt ин параметри tls_domain аст, дар mtg домейн аз худи махфӣ гирифта мешавад.
Муштарӣ бо махфӣ чӣ мекунад
Махфӣ тавассути шабака фиристода намешавад: он дар ҳосил кардани калидҳо иштирок мекунад. Тибқи ҳуҷҷатҳои Telegram, ҳангоми обфускатсия калиди рамзгузории ҷараён ҳамчун SHA256 аз калиди бастаи оғозӣ ва махфӣ ҳисоб карда мешавад. Муштарӣ ва проксие, ки як махфиро медонанд, калидҳои якхела мегиранд; муштарии бегона калидҳои дигар хоҳад дошт, ва прокси пайвастшавии онро қабул намекунад.
Агар махфӣ 17-байтӣ бошад (бо пешванде мисли dd), байти аввал нақлиётро муайян мекунад ва дар ҳосил кардани калидҳо иштирок намекунад. Муштариён, ки байти иловагиро диданд, бо пешфарз padded intermediate — режими иловаи тасодуфиро истифода мебаранд.
Як махфӣ ё якчанд
Сервер метавонад якчанд махфиро қабул кунад: дар MTProxy-и расмӣ калиди -S-ро якчанд маротиба нишон додан мумкин аст. Ин барои он аст, ки ба одамони гуногун истинодҳои гуногун диҳанд ва онҳоро алоҳида бозхонанд. Дар mtg махфӣ як аст — муаллифон инро қарори ҳушёрона мешуморанд; дар telemt махфиҳо барои корбарон дар қисмати [access.users] муқаррар карда мешаванд.
Се мисоли истинод
Як ҷуфти «сервер ва порт» метавонад бо махфии гуногун дода шавад. Се вариант чунин менамоянд (суроға ва калид шартианд):
tg://proxy?server=proxy.example.com&port=443&secret=473ce5d4958eb5f968c87680a23854a0
tg://proxy?server=proxy.example.com&port=443&secret=dd473ce5d4958eb5f968c87680a23854a0
tg://proxy?server=proxy.example.com&port=443&secret=ee473ce5d4958eb5f968c87680a23854a0676f6f676c652e636f6d
Истиноди якум режими оддиро фаъол мекунад, дуюм — режими иловаи тасодуфӣ, сеюм — FakeTLS бо домейни google.com. Барои муштарӣ тафовут танҳо дар махфӣ аст: сервер ва порт ҳамон. Маҳз бинобар ин махфӣ — аввалин чизест, ки хондан лозим аст.
Домейн ва махфӣ якҷоя тағйир меёбанд
Дар махфии ee домейн қисми калид аст, ва дар сервер домейн алоҳида муқаррар шудааст: дар telemt ин параметри tls_domain аст, дар mtg домейн аз махфӣ гирифта мешавад. Агар яктоашро бе дигаре тағйир диҳед, муштариён пайваст шуданро бас мекунанд: тибқи FAQ-и telemt, ҳангоми иваз кардани домейн истинодҳои кӯҳна хатогии «Unknown TLS SNI» медиҳанд. Бинобар ин онҳоро ҷуфт тағйир диҳед ва истинодҳоро аз нав диҳед.
Истинодро чӣ тавр додан лозим
- бо паёми шахсӣ ба касоне, ки ба онҳо бовар доред, на дар каналҳо ва чатҳои оммавӣ;
- ба қадри имкон — ба ҳар кас махфии алоҳида: чунин махфиро бидуни таъсир ба дигарон бозхонда мешавад (MTProxy-и расмӣ ва telemt дастгирӣ мекунанд);
- агар истинод аллакай паҳн шуда бошад, махфиро иваз кунед, на умедвор шавед, ки онро «гум мекунанд»;
- махфиро ба хидматҳои «санҷиши прокси»-и бегона нафиристед: шумо рамзро медиҳед.
То пайвастшавӣ чиро санҷидан лозим
- Истинод бо
tg://proxyёt.me/proxyоғоз мешавад ва ҳар се параметрро дорад. - Махфӣ бо
eeоғоз мешавад — вагарна режим оддӣ ё dd аст. - Дарозии махфӣ ба ҷадвали боло мувофиқ меояд: 32, 34 ё на камтар аз 42 аломат.
- Домейн дар охири махфии ee хонда мешавад ва ин сомонаи оддӣ аст, на маҷмӯи тасодуфии аломатҳо.
- Порт — 443 ё порти дигари барои HTTPS одатӣ.
- Фосила, гузариш ба сатри нав ва аломатҳои зиёдатӣ мисли
&нест.
Хатоҳои маъмулӣ
- Махфӣ бурида шудааст. Аз сабаби гузариш ба сатри нав ё кӯтоҳкунӣ дар паёмрасон дум бо домейн гум мешавад; Telegram дар режими дигар пайваст мешавад ё пайваст намешавад.
- Махфӣ ба майдони рамз барои SOCKS5 гузошта шудааст. Барои MTProto навъи MTProto-ро интихоб карда, махфиро ба майдони мувофиқ ворид кардан лозим.
- Сервер ва порт омехта шудаанд. Махсусан ҳангоми воридкунии дастӣ.
- Истинодро бо даст тағйир додаанд. Як аломати тағйирёфта дар махфӣ калиди дигар медиҳад — ва прокси муштариро намегузорад.
Мисол: хаторо дар махфӣ чӣ тавр ёфтан мумкин аст
Фарз кунем, ба шумо истинод фиристоданд, ва дар он махфӣ бо дарозии 48 аломат аст, ки бо ee оғоз мешавад. Аз рӯи формулаи 2 + 32 + шумораи дучандшудаи аломатҳои домейн мебарояд, ки ба домейн 14 аломат мерасад, яъне номи ҳафт ҳарфӣ. Думро бо фармони xxd -r -p кушоед: агар номи хонданбобии сомона ҳосил шавад, махфӣ дар тартиб аст. Агар дар баромад ахлот бошад ё ном аз интизор кӯтоҳтар бошад, махфӣ дар роҳ бурида шудааст — истинодро аз нав дархост кунед.
Ҳамин усул барои санҷиши истинодҳои бегона низ кор мекунад: он ним дақиқа мегирад ва пайвастшавиро талаб намекунад.
Махфӣ — ин рамз аст
Касе, ки махфиро медонад, ба прокси пайваст мешавад ва метавонад истинодро ба дигарон диҳад. Дар README-и mtg махфиро калиди прокси ва рамзи муштарӣ меноманд. Бинобар ин истиноди шахсиро дар чатҳои кушода нашр намекунанд: ҳар қадар васеътар паҳн шавад, бори сервер зиёдтар аст ва зудтар ба рӯйхатҳои масдудкунӣ илова мешавад.
Саволҳои зуд-зуд додашаванда
Пешванди dd дар оғози махфии прокси чӣ маъно дорад?
Пешванди dd режими иловаи тасодуфӣ (padding)-ро фаъол мекунад: ба бастаҳо аз 0 то 15 байти тасодуфӣ илова мешавад, то проксиро аз рӯи андозаи бастаҳо душвортар шинохтан мумкин бошад. Калид баъд аз пешванд — ҳамон 16 байт.
Махфии ee-ро аз dd чӣ тавр фарқ кардан мумкин аст?
Аз рӯи ду аломати аввал ва дарозӣ. Махфии dd — ин dd ва 32 аломати калид, дар маҷмӯъ 34. Махфии ee дарозтар аст: баъд аз калид домейни ниқоб дар навишти шонздаҳӣ меояд.
Оё махфиро нашр кардан мумкин аст?
Беҳтар не. Махфӣ мисли рамз кор мекунад: касе, ки онро медонад, ба прокси пайваст мешавад ва истинодро ба дигарон дода метавонад. Ҳар қадар васеътар паҳн шавад, зудтар ба рӯйхатҳои масдудкунӣ илова мешавад.
Домейнро дар махфии ee чӣ тавр донистан мумкин аст?
Қисми махфиро баъд аз 34 аломати аввал (ду аломати пешванд ва 32 аломати калид) гирифта, аз навишти шонздаҳӣ ба матн табдил диҳед, масалан бо фармони echo ДУМ | xxd -r -p. Натиҷа номи сомонаест, ки прокси худро бо он ниқоб мекунад.
t.me/proxy аз tg://proxy чӣ фарқ дорад?
Параметрҳо якхелаанд. Истиноди tg://proxy бевосита дар барнома кушода мешавад, ва t.me/proxy дар браузер ҳам кор мекунад. Тибқи ҳуҷҷатҳои Telegram, t.me-ро чун telegram.me ё telegram.dog низ навиштан мумкин аст.