Саргузаштҳо аз кабуд

Саргузаштҳо аз кабуд

Чӣ тавр Spotify метавонад ба шумо дар омӯзиши демонҳо, RFCҳо, шабакаҳо ва пешбурди манбаи кушода кӯмак расонад. Ё чӣ мешавад, агар шумо пардохт карда натавонед, аммо шумо дар ҳақиқат мехоҳед баъзе чизҳои олӣ дошта бошед.

Оғоз

Дар рӯзи сеюм маълум шуд, ки Spotify таблиғҳоро дар асоси кишвари суроғаи IP намоиш медиҳад. Инчунин таъкид шуд, ки дар баъзе кишварҳо таблиғ умуман ворид карда намешавад. Масалан, дар республикаи Белоруссия. Ва он гоҳ як нақшаи "болоҷон" барои хомӯш кардани таблиғ дар ҳисоби ғайримукофотӣ таҳия карда шуд.

Як каме дар бораи Spotify

Умуман, Spotify сиёсати аҷибе дорад. Бародари мо барои харидани премиум бояд хеле печида шавад: ҷойгиршавии профили худро ба хориҷа иваз кунед, корти тӯҳфаи мувофиқро ҷустуҷӯ кунед, ки онро танҳо бо PayPal пардохт кардан мумкин аст, ки вақтҳои охир аҷиб рафтор мекунад ва як даста ҳуҷҷат мехоҳад. Умуман, ин як саёҳат аст, аммо тартиби дигар. Гарчанде ки аксари одамон ин корро ба хотири версияи мобилӣ мекунанд, ман ба он таваҷҷӯҳ надорам. Аз ин рӯ, ҳама чизи дар поён овардашуда танҳо дар ҳолати версияи мизи корӣ кӯмак хоҳад кард. Гузашта аз ин, тавсеаи функсияҳо нахоҳад буд. Танҳо баъзе аз иловагиро бурида.

Чаро ин қадар мураккаб аст?

Ва ман чунин фикр мекардам, ки ҳангоми сабти маълумоти ҷӯроб-прокси дар конфигуратсияи Spotify. Мушкилот дар он буд, ки аутентификатсия дар ҷӯробҳо бо истифода аз логин ва парол кор намекунад. Илова бар ин, таҳиягарон мунтазам дар атрофи прокси коре мекунанд: баъзан ба он иҷозат медиҳанд, баъзан манъ мекунанд, баъзан онро вайрон мекунанд, ки ин боиси тамоми панелҳои баҳсҳо дар берун аз сайт мегардад.

Қарор дода шуд, ки ба функсияҳои ноустувор такя накунанд ва чизи боэътимодтар ва ҷолибтар пайдо кунанд.

Дар ҷое, ки дар ин ҷо хонанда бояд бипурсад: чаро нагиред ssh бо калид -D ва ин ба охир расид? Ва, умуман, вай дуруст хоҳад буд. Аммо, аввалан, ин ҳанӯз бояд девона карда шавад ва бо autossh дӯстӣ кунад, то дар бораи пайвастҳои канда фикр накунед. Ва дуюм: ин хеле содда ва дилгиркунанда аст.

Барои

Биёед чун одат аз чап ба рост, боло ба поён меравем ва хамаи он чиро, ки барои амалй гардондани идеям «оддй» лозим аст, тавсиф мекунем.

Аввал ба шумо прокси лозим аст

Ва дар як вақт алтернативаҳои зиёде мавҷуданд:

  • шумо метавонед танҳо равед ва аз рӯйхатҳои прокси кушода гиред. Арзон (ё дурусттараш барои ҳеҷ чиз), аммо комилан эътимоднок нест ва умри чунин проксиҳо ба сифр мерасад. Аз ин рӯ, барои рӯйхатҳои прокси як таҳлилгарро ёфтан/навиштан, онҳоро аз рӯи намуд ва кишвари дилхоҳ филтр кардан лозим буд ва масъалаи иваз кардани прокси ёфтшуда дар Spotify кушода боқӣ мемонад (хуб, шояд тавассути HTTP_PROXY интиқол диҳед ва бастабандии фармоиширо барои бинар созед, то ки ҳама трафики дигар ба он ҷо фиристода нашавад).
  • Шумо метавонед прокси шабеҳро харед ва худро аз аксари мушкилоти дар боло тавсифшуда наҷот диҳед. Аммо бо нархи прокси, шумо метавонед фавран дар Spotify премиум харед ва ин барои вазифаи аслӣ амалӣ нест.
  • Худро баланд кунед. Тавре ки шумо эҳтимол тахмин кардаед, ин интихоби мост.

Танҳо тасодуфан маълум мешавад, ки шумо дар Ҷумҳурии Беларус ё дигар кишвари хурд дӯсте доред, ки сервер дорад. Шумо бояд инро истифода баред ва прокси дилхоҳро дар он ҷойгир кунед. Мутахассисони махсус метавонанд бо як дӯсти дорои роутер қаноатманд бошанд ДД-ВРТ ё нармафзори шабеҳ. Аммо он ҷо Ӯ дунёи аҷиб ва ин дунё ба таври равшан ба чаҳорчӯбаи ин ҳикоя мувофиқат намекунад.

Ҳамин тавр, имконоти мо: Squid - илҳомбахш нест ва ман прокси HTTP намехоҳам, дар атрофи ин протокол аллакай хеле зиёданд. Ва дар соҳаи ҷӯробҳо ҳеҷ чизи оқилона нест, ба истиснои Dante то ҳол расонида нашудааст. Бинобар ин, биёед онро гирем.

Мунтазир нашавед, ки дастури Данте оид ба насб ва конфигуратсия. У танҳо гуглинг ва таваҷҷӯҳи хосае надорад. Дар конфигуратсияи ҳадди ақал ба шумо лозим аст, ки дар ҳама навъҳои client pass, socks pass, интерфейсҳоро дуруст сабт кунед ва илова карданро фаромӯш накунед socksmethod: username. Дар ин шакл, барои тасдиқ, логопас аз корбарони система гирифта мешавад. Ва қисмат дар бораи амният: манъи дастрасӣ ба localhost, маҳдуд кардани корбарон ва ғайра - ин комилан фардӣ аст, вобаста ба паранойяи шахсӣ.

Проксиеро, ки ба шабака рӯбарӯ шудааст, ҷойгир кунед

Пьеса аз ду парда иборат аст.

Якум амал

Мо проксиро ҷудо кардем, ҳоло мо бояд ба он аз веби ҷаҳонӣ дастрасӣ пайдо кунем. Агар шумо як мошини дорои IP сафед дар кишвари дилхоҳ дошта бошед, пас шумо метавонед ин нуктаро бехатар гузаред. Мо ягонто надорем (мо, тавре ки дар боло зикр шуд, дар хонаи дӯстон ҷойгирем) ва наздиктарин IP сафед дар ҷое дар Олмон аст, аз ин рӯ мо шабакаҳоро меомӯзем.

Пас, ҳа, хонандаи бодиққат боз мепурсад: чаро шумо хидмати мавҷударо ба монанди ин истифода намебаред нгрок ё монанд? Ва ӯ боз ҳақ хоҳад шуд. Аммо ин хидмат аст, онро боз демон кардан лозим аст, он метавонад пулро низ сарф кунад ва дар маҷмӯъ он варзиш нест. Бинобар ин мо аз масолехи брак велосипед месозем.

Вазифа: прокси дар ҷои дур аз NAT мавҷуд аст, шумо бояд онро дар яке аз бандарҳои VPS овезон кунед, ки дорои IP сафед ва дар канори ҷаҳон ҷойгир аст.

Фарз кардан мантиқ аст, ки инро ҳам тавассути интиқоли порт ҳал кардан мумкин аст (ки тавассути роҳҳои дар боло зикршуда амалӣ карда мешавад) ssh), ё тавассути омезиши сахтафзор ба шабакаи виртуалӣ тавассути VPN. БО ssh мо медонем, ки чӣ тавр кор кунем, autossh Гирифтан дилгиркунанда аст, аз ин рӯ биёед OpenVPN-ро гирем.

DigitalOcean дорад манули аҷиб оид ба ин масъала. Ман чизе барои илова кардан надорам. Ва конфигуратсияи натиҷавӣ метавонад ба осонӣ бо муштарии OpenVPN ва systemd. Танҳо онро (конфигуратсия) гузоред /etc/openvpn/client/ ва тағир додани васеъкуниро фаромӯш накунед .conf. Баъд аз ин, хидматро кашед [email protected]Фаромӯш накунед, ки ин корро барои вай анҷом диҳед enable ва шод бошед, ки ҳама чиз парвоз кард.

Албатта, мо бояд ҳама гуна масири трафикро ба VPN-и навтаъсис хомӯш кунем, зеро мо намехоҳем суръатро дар мошини муштарӣ тавассути гузаштани трафик аз ним тӯб кам кунем.

Ва ҳа, мо бояд суроғаи IP-и статикиро дар сервери VPN барои муштарии худ сабт кунем. Ин каме дертар дар ҳикоя лозим мешавад. Барои ин ба шумо лозим аст, ки фаъол созед ifconfig-pool-persist, таҳрир ipp.txt, ки бо OpenVPN дохил карда шудааст ва client-config-dir-ро фаъол созед ва инчунин конфигуратсияи муштарии дилхоҳро тавассути илова таҳрир кунед ifconfig-push бо ниқоби дуруст ва суроғаи IP дилхоҳ.

Амали дуюм

Ҳоло мо дар «шабака» мошине дорем, ки ба Интернет рӯ ба рӯ мешавад ва метавонад барои мақсадҳои худхоҳона истифода шавад. Маҳз, як қисми трафикро тавассути он равона кунед.

Ҳамин тавр, вазифаи нав: шумо бояд трафики воридшавандаро ба яке аз бандарҳои VPS бо IP-и сафед хомӯш кунед, то ин трафик ба шабакаи виртуалии нав пайваст шавад ва посух аз он ҷо баргардад.

Ҳалли: албатта iptables! Боз кай шумо чунин имконияти олиҷаноб барои машқ кардан бо ӯ хоҳед дошт?

Конфигуратсияи заруриро хеле зуд, дар се соат, сад калимаи дашном ва як мушт асабҳои беҳуда ёфтан мумкин аст, зеро ислоҳи шабакаҳо як тартиби хеле мушаххас аст.

Аввалан, шумо бояд масири трафикро дар ядро ​​фаъол созед. Ин чиз номида мешавад ipv4.ip_forward ва вобаста ба OS ва мудири шабака каме фарқ мекунад.

Дуюм, шумо бояд бандари VPS-ро интихоб кунед ва тамоми трафики ба он воридшударо ба зершабакаи виртуалӣ гузоред. Инро, масалан, ин тавр кардан мумкин аст:

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 8080 -j DNAT --to-destination 10.8.0.2:8080

Дар ин ҷо мо тамоми трафики TCP-ро, ки ба порти 8080 интерфейси беруна меояд, ба мошини дорои IP 10.8.0.2 ва ҳамон порти 8080 равона мекунем.

Барои онҳое, ки мехоҳанд ҷузъиёти ифлоси кор netfilter, iptables ва умуман масир, комилан бояд андеша кард ин ё ин.

Ҳамин тавр, ҳоло бастаҳои мо ба зершабакаи виртуалӣ парвоз мекунанд ва ... онҳо дар он ҷо мемонанд. Аниқтараш, посух аз прокси ҷӯроб тавассути шлюзи пешфарз дар мошин бо Данте бармегардад ва қабулкунанда онро мепартояд, зеро дар шабакаҳо фиристодани дархост ба як IP ва гирифтани посух аз дигараш маъмул нест. Аз ин рӯ, ба мо лозим аст, ки ифротгароиро идома диҳем.

Ҳамин тавр, ҳоло ба шумо лозим аст, ки ҳама пакетҳоро аз прокси ба зершабакаи виртуалӣ ба сӯи VPS бо IP сафед равона кунед. Дар ин ҷо вазъият каме бадтар аст, зеро ин танҳо аст iptables мо кофӣ нахоҳем дошт, зеро агар пеш аз масир суроғаи таъинотро ислоҳ кунем (PREROUTING), пас бастаи мо ба Интернет парвоз намекунад ва агар мо онро ислоҳ накунем, баста ба он меравад default gateway. Пас, шумо бояд амалҳои зеринро иҷро кунед: занҷирро дар хотир доред mangle, барои қайд кардани бастаҳо тавассути iptables ва онҳоро дар ҷадвали масири фармоишӣ печонед, ки онҳоро ба куҷое, ки бояд равад, мефиристад.

Ҳанӯз ногуфта иҷро шуд:

iptables -t mangle -A OUTPUT -p tcp --sport 8080 -j MARK --set-mark 0x80
ip rule add fwmark 0x80 table 80
ip route add default via 10.8.0.1 dev tun0 table 80

Мо трафики содиротро мегирем, ҳама чизеро, ки аз бандаре, ки прокси дар он ҷойгир аст, қайд мекунем (дар ҳолати мо 8080), тамоми трафики қайдшударо ба ҷадвали масир бо рақами 80 равона мекунем (умуман, рақам аз ҳеҷ чиз вобаста нест, мо танҳо мехостем. ба) ва як қоида илова кунед, ки мувофиқи он ҳама бастаҳои дар ин ҷадвал дохилшуда ба зершабакаи VPN парвоз мекунанд.

Аҷоиб! Ҳоло бастаҳо ба сӯи VPS парвоз мекунанд... ва дар он ҷо мемиранд. Зеро VPS намедонад бо онҳо чӣ кор кунад. Аз ин рӯ, агар шумо ташвиш надиҳед, шумо метавонед танҳо тамоми трафики аз зершабакаи виртуалӣ воридшавандаро ба Интернет бозгардонед:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j SNAT --to-source 172.42.1.10

Дар ин ҷо ҳама чизе, ки аз зершабакаи 10.8.0.0 бо ниқоби 255.255.255.000 меояд, дар сарчашма-NAT печонида мешавад ва ба интерфейси пешфарз, ки ба Интернет табдил ёфтааст, парвоз мекунад. Бояд қайд кард, ки ин чиз танҳо дар сурате кор хоҳад кард, ки мо ба таври шаффоф бандаро интиқол диҳем, яъне порти воридотӣ дар VPS ба порти прокси мо мувофиқат кунад. Дар акси ҳол шумо бояд каме бештар азоб кашед.

Дар ҷое, ки ҳоло ҳама чиз бояд ба кор шурӯъ кунад. Ва танҳо каме боқӣ мемонад: фаромӯш накунед, ки боварӣ ҳосил кунед, ки ҳамаи конфигуратсияҳо iptables и route пас аз бозоғозӣ идома надод. Барои iptables монанди файлҳои махсус вуҷуд дорад /etc/iptables/rules.v4(дар мавриди Ubuntu), аммо барои хатсайрҳо ҳама чиз каме мураккабтар аст. Ман онҳоро тела додам up/down Скриптҳои OpenVPN, гарчанде ки ман фикр мекунам, ки онҳо метавонистанд шоистатар иҷро шаванд.

Ҷамъоварии трафик аз барнома дар прокси

Ҳамин тавр, мо прокси дорои аутентификатсия дар кишвари дилхоҳ дорем, ки тавассути суроғаи IP-и статикии сафед дастрас аст. Танҳо он чизе боқӣ мемонад, ки онро истифода баред ва трафикро аз Spotify ба он ҷо равона кунед. Аммо як нозуки вуҷуд дорад, тавре ки дар боло зикр шуд, логин-пароли прокси дар Spotify кор намекунад, аз ин рӯ мо меҷӯем, ки чӣ гуна аз он гузаштан мумкин аст.

Барои оғоз, биёед дар бораи он ёдовар шавем прокси. Чизҳои олӣ, аммо арзиши он ба қадри як киштии ситоравӣ ($40). Бо ин пул мо метавонем боз премиум харем ва бо он кор кунем. Аз ин рӯ, мо аналогҳои бештар озод ва кушодаро дар Mac ҷустуҷӯ хоҳем кард (бале, мо мехоҳем дар Mac мусиқӣ гӯш кунем). Биёед як асбоби пурраро кашф кунем: проксимак. Ва мо бо хушнудӣ ба ӯ меравем.

Аммо шодӣ кӯтоҳ хоҳад буд, зеро маълум мешавад, ки шумо бояд реҷаи дебаг ва васеъкунии ядрои фармоиширо дар MacOS фаъол созед, конфигуратсияи оддиро файл кунед ва бифаҳмед, ки ин асбоб маҳз мушкилоти Spotify дорад: он наметавонад бо истифода аз аутентификатсия гузарад. логин-парол оид ба ҷӯроб-прокси.

Дар ҷое дар ин ҷо вақти он расидааст, ки ғазаб кунед ва мукофот харед ... аммо не! Биёед кӯшиш кунем, ки онро ислоҳ кунем, ин манбаи кушода аст! Биёед чипта. Ва дар посух мо як ҳикояи дилшикастае мегирем, ки чӣ тавр ягона нигоҳдор дигар MacBook надорад ва ба ҷаҳаннам бо он, на ислоҳ.

Мо боз хафа мешавем. Аммо он гоҳ мо ҷавонии худ ва C-ро ба ёд меорем, реҷаи дебагро дар Данте фаъол мекунем, садҳо килобайт логҳоро кобед, RFC1927 барои маълумот дар бораи протоколи SOCKS5, биёед ба Xcode назар кунем ва мушкилотро пайдо кунем. Барои ислоҳ кардани як аломат дар рӯйхати рамзҳои усул, ки муштарӣ барои аутентификатсия пешниҳод мекунад, кофӣ аст ва ҳама чиз мисли механизми соат кор мекунад. Мо шодӣ мекунем, мо бинарии озодро ҷамъ мекунем, мо мекунем дархост кашед ва мо ба ғуруби офтоб меравем ва ба нуқтаи дигар меравем.

Онро автоматӣ кунед

Вақте ки Proximac кор мекунад, онро девона кардан ва фаромӯш кардан лозим аст. Як системаи пурраи оғозёбӣ мавҷуд аст, ки барои ин мувофиқ аст, ки дар MacOS мавҷуд аст, яъне ба кор андохта шуд.

Мо онро зуд пайдо мекунем дастур ва мо мефаҳмем, ки ин тамоман нест systemd ва дар ин ҷо он қариб як ковок ва xml. Ягон конфигуратсияи зебо барои шумо, ҳеҷ фармонҳои монанди status, restart, daemon-reload. Танҳо намуди хардкор start-stop, list-grep, unload-load ва бисёр чизҳои дигар. Бартараф кардани хамаи ин мо менависем plist, бор кардан. Кор намекунад. Мо усули ислоҳи девҳоро меомӯзем, онро ислоҳ мекунем, мефаҳмем, ки дар он ҷо чӣ ҳаст ENV даже PATH мо муқаррариро нарасонидем, мо баҳс мекунем, мо онро меорем (илова мекунад /sbin и /usr/local/bin) ва нихоят мо аз автостарт ва кори муътадил хурсандем.

Нафас кашед

Оқибат чӣ мешавад? Ҳафтаи саёҳат, боғи зону аз хидматҳое, ки ба дил азиз аст ва он чизеро, ки аз он талаб карда мешавад, иҷро мекунад. Як каме дониш дар соҳаҳои шубҳаноки техникӣ, каме сарчашмаи кушода ва табассум дар чеҳраи шумо аз андешаи "ман ин корро кардам!"

PS: ин даъват ба бойкот кардани капиталистон, сарфа кардани гугирд ё макри куллй нест, балки танхо нишон додани имкониятхои тадкикот ва конструкторй мебошад, ки дар он умуман шумо онхоро интизор нестед.

Манбаъ: will.com

Илова Эзоҳ