Iptables at pagsala ng trapiko mula sa mga mahihirap at tamad na dissidents

Ang kaugnayan ng pagharang sa mga pagbisita sa mga ipinagbabawal na mapagkukunan ay nakakaapekto sa sinumang administrator na maaaring opisyal na makasuhan ng hindi pagsunod sa batas o mga utos ng mga nauugnay na awtoridad.

Iptables at pagsala ng trapiko mula sa mga mahihirap at tamad na dissidents

Bakit muling likhain ang gulong kapag may mga espesyal na programa at pamamahagi para sa aming mga gawain, halimbawa: Zeroshell, pfSense, ClearOS.

May isa pang tanong ang management: May safety certificate ba ang ginamit na produkto mula sa ating estado?

Nagkaroon kami ng karanasan sa pagtatrabaho sa mga sumusunod na pamamahagi:

  • Zeroshell - nag-donate pa ang mga developer ng 2-taong lisensya, ngunit lumabas na ang distribution kit na interesado kami, hindi makatwiran, ay gumanap ng isang kritikal na function para sa amin;
  • pfSense - paggalang at karangalan, sa parehong oras na mayamot, nasanay sa command line ng FreeBSD firewall at hindi sapat na maginhawa para sa amin (sa palagay ko ito ay isang ugali, ngunit ito ay naging maling paraan);
  • ClearOS - sa aming hardware naging napakabagal, hindi kami makakarating sa seryosong pagsubok, kaya bakit ganoon kabigat ang mga interface?
  • Ideco SELECTA. Ang produkto ng Ideco ay isang hiwalay na pag-uusap, isang kawili-wiling produkto, ngunit para sa mga kadahilanang pampulitika hindi para sa amin, at gusto ko rin silang "kagatin" tungkol sa lisensya para sa parehong Linux, Roundcube, atbp. Saan nila nakuha ang ideya na sa pamamagitan ng pagputol ng interface sa Sawa at sa pamamagitan ng pag-alis ng mga karapatan ng superuser, maaari silang magbenta ng tapos na produkto na binubuo ng mga binuo at binagong module mula sa komunidad ng Internet na ipinamahagi sa ilalim ng GPL&etc.

Naiintindihan ko na ngayon ang mga negatibong tandang ay bubuhos sa aking direksyon na may mga hinihiling na patunayan ang aking mga subjective na damdamin nang detalyado, ngunit nais kong sabihin na ang network node na ito ay isa ring traffic balancer para sa 4 na panlabas na channel sa Internet, at ang bawat channel ay may sariling mga katangian. . Ang isa pang pundasyon ay ang pangangailangan para sa isa sa ilang mga interface ng network upang gumana sa iba't ibang mga puwang ng address, at ako handa na aminin na ang mga VLAN ay maaaring gamitin saanman kung saan kinakailangan at hindi kinakailangan Hindi pa handa. Mayroong mga device na ginagamit tulad ng TP-Link TL-R480T+ - hindi sila kumikilos nang perpekto, sa pangkalahatan, na may sariling mga nuances. Posibleng i-configure ang bahaging ito sa Linux salamat sa opisyal na website ng Ubuntu IP Balancing: pagsasama-sama ng ilang mga channel sa Internet sa isa. Bukod dito, ang bawat isa sa mga channel ay maaaring "bumagsak" anumang sandali, pati na rin tumaas. Kung interesado ka sa isang script na kasalukuyang gumagana (at ito ay nagkakahalaga ng isang hiwalay na publikasyon), sumulat sa mga komento.

Ang solusyon na isinasaalang-alang ay hindi inaangkin na natatangi, ngunit nais kong itanong ang tanong: "Bakit dapat umangkop ang isang negosyo sa mga third-party na kahina-hinalang produkto na may seryosong mga kinakailangan sa hardware kapag maaaring isaalang-alang ang isang alternatibong opsyon?"

Kung sa Russian Federation mayroong isang listahan ng Roskomnadzor, sa Ukraine mayroong isang annex sa Desisyon ng National Security Council (halimbawa. dito), pagkatapos ay hindi rin natutulog ang mga lokal na pinuno. Halimbawa, binigyan kami ng listahan ng mga ipinagbabawal na site na, sa opinyon ng pamamahala, ay nakakapinsala sa pagiging produktibo sa lugar ng trabaho.

Ang pakikipag-usap sa mga kasamahan sa iba pang mga negosyo, kung saan bilang default ang lahat ng mga site ay ipinagbabawal at kapag hiniling lamang na may pahintulot ng boss maaari mong ma-access ang isang partikular na site, nakangiting magalang, iniisip at "naninigarilyo sa problema", naunawaan namin na ang buhay mabuti pa at sinimulan na namin ang paghahanap nila.

Ang pagkakaroon ng pagkakataon na hindi lamang makita ang analytically kung ano ang isinulat nila sa "mga aklat ng mga maybahay" tungkol sa pag-filter ng trapiko, ngunit din upang makita kung ano ang nangyayari sa mga channel ng iba't ibang mga provider, napansin namin ang mga sumusunod na recipe (anumang mga screenshot ay medyo na-crop, mangyaring maunawaan ):

Provider 1
β€” hindi nag-abala at nagpapataw ng sarili nitong mga DNS server at isang transparent na proxy server. Well?.. ngunit mayroon kaming access sa kung saan namin ito kailangan (kung kailangan namin ito :))

Provider 2
- naniniwala na dapat itong isipin ng kanyang nangungunang provider, inamin pa nga ng teknikal na suporta ng nangungunang provider kung bakit hindi ko mabuksan ang site na kailangan ko, na hindi ipinagbabawal. Sa tingin ko ang larawan ay magpapasaya sa iyo :)

Iptables at pagsala ng trapiko mula sa mga mahihirap at tamad na dissidents

Tulad ng nangyari, isinalin nila ang mga pangalan ng mga ipinagbabawal na site sa mga IP address at hinarangan ang IP mismo (hindi sila nababahala sa katotohanan na ang IP address na ito ay maaaring mag-host ng 20 mga site).

Provider 3
β€” pinapayagan ang trapiko na pumunta doon, ngunit hindi ito pinapayagang bumalik sa ruta.

Provider 4
β€” ipinagbabawal ang lahat ng manipulasyon na may mga packet sa tinukoy na direksyon.

Ano ang gagawin sa VPN (paggalang sa Opera browser) at mga plugin ng browser? Ang paglalaro sa node na Mikrotik sa una, nakakuha pa kami ng isang mapagkukunan-intensive na recipe para sa L7, na sa kalaunan ay kinailangan naming iwanan (maaaring mayroong higit pang mga ipinagbabawal na pangalan, nagiging malungkot kapag, bilang karagdagan sa mga direktang responsibilidad nito para sa mga ruta, sa 3 dosena expression na ang PPC460GT processor load ay napupunta sa 100 %).

Iptables at pagsala ng trapiko mula sa mga mahihirap at tamad na dissidents.

Ano ang naging malinaw:
Ang DNS sa 127.0.0.1 ay ganap na hindi isang panlunas sa lahat; pinapayagan ka pa rin ng mga modernong bersyon ng mga browser na lampasan ang mga naturang problema. Imposibleng limitahan ang lahat ng mga gumagamit sa mga pinababang karapatan, at hindi natin dapat kalimutan ang tungkol sa malaking bilang ng alternatibong DNS. Ang Internet ay hindi static, at bilang karagdagan sa mga bagong DNS address, ang mga ipinagbabawal na site ay bumili ng mga bagong address, baguhin ang mga nangungunang antas ng domain, at maaaring magdagdag/mag-alis ng character sa kanilang address. Ngunit may karapatan pa ring mamuhay tulad ng:

ip route add blackhole 1.2.3.4

Magiging epektibo ang pagkuha ng listahan ng mga IP address mula sa listahan ng mga ipinagbabawal na site, ngunit para sa mga kadahilanang nakasaad sa itaas, lumipat kami sa mga pagsasaalang-alang tungkol sa Iptables. Nagkaroon na ng live balancer sa CentOS Linux release 7.5.1804.

Ang Internet ng gumagamit ay dapat na mabilis, at ang Browser ay hindi dapat maghintay ng kalahating minuto, na nagtatapos na ang pahinang ito ay hindi magagamit. Pagkatapos ng mahabang paghahanap, dumating kami sa modelong ito:
File 1 -> /script/denied_host, listahan ng mga ipinagbabawal na pangalan:

test.test
blablabla.bubu
torrent
porno

File 2 -> /script/denied_range, listahan ng mga ipinagbabawal na puwang ng address at address:

192.168.111.0/24
241.242.0.0/16

Script file 3 -> ipt.shginagawa ang trabaho sa ipables:

# считываСм ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Ρ‡Π½Π΅ΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ²
HOSTS=`cat /script/denied_host | grep -v '^#'`
RANGE=`cat /script/denied_range | grep -v '^#'`
echo "Stopping firewall and allowing everyone..."
# сбрасываСм всС настройки iptables, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
#Ρ€Π΅ΡˆΠ°Π΅ΠΌ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π°Ρ… (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ нашСй Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹)
sudo sh rout.sh
# цикличСски обрабатывая ΠΊΠ°ΠΆΠ΄ΡƒΡŽ строку Ρ„Π°ΠΉΠ»Π° примСняСм ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ строки
for i in $HOSTS; do
sudo iptables -I FORWARD -m string --string $i --algo bm --from 1 --to 600 -p tcp -j REJECT --reject-with tcp-reset;
sudo iptables -I FORWARD -m string --string $i --algo bm --from 1 --to 600 -p udp -j DROP;
done
# цикличСски обрабатывая ΠΊΠ°ΠΆΠ΄ΡƒΡŽ строку Ρ„Π°ΠΉΠ»Π° примСняСм ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ адрСса
for i in $RANGE; do
sudo iptables -I FORWARD -p UDP -d $i -j DROP;
sudo iptables -I FORWARD -p TCP  -d $i -j REJECT --reject-with tcp-reset;
done

Ang paggamit ng sudo ay dahil sa ang katunayan na mayroon kaming isang maliit na hack para sa kontrol sa pamamagitan ng interface ng WEB, ngunit tulad ng ipinakita ng karanasan sa paggamit ng naturang modelo sa loob ng higit sa isang taon, ang WEB ay hindi masyadong kinakailangan. Pagkatapos ng pagpapatupad, nagkaroon ng pagnanais na magdagdag ng isang listahan ng mga site sa database, atbp. Ang bilang ng mga naka-block na host ay higit sa 250 + isang dosenang puwang ng address. Talagang may problema kapag pumunta sa isang site sa pamamagitan ng isang https na koneksyon, tulad ng administrator ng system, mayroon akong mga reklamo tungkol sa mga browser :), ngunit ito ay mga espesyal na kaso, karamihan sa mga nag-trigger para sa kakulangan ng pag-access sa mapagkukunan ay nasa aming panig pa rin , matagumpay din naming na-block ang Opera VPN at mga plugin tulad ng friGate at telemetry mula sa Microsoft.

Iptables at pagsala ng trapiko mula sa mga mahihirap at tamad na dissidents

Pinagmulan: www.habr.com

Magdagdag ng komento