Iptables ir srauto filtravimas iš vargšų ir tingių disidentų

Apsilankymų draudžiamuose šaltiniuose blokavimas turi įtakos bet kuriam administratoriui, kuris gali būti oficialiai apkaltintas dėl įstatymų ar atitinkamų institucijų nurodymų nesilaikymo.

Iptables ir srauto filtravimas iš vargšų ir tingių disidentų

Kam išradinėti dviratį iš naujo, kai mūsų užduotims atlikti yra specializuotos programos ir platinimai, pavyzdžiui: Zeroshell, pfSense, ClearOS.

Vadovybei kilo dar vienas klausimas: ar naudojamas produktas turi mūsų valstybės saugos sertifikatą?

Turėjome patirties dirbant su šiais platinimais:

  • Zeroshell – kūrėjai net padovanojo 2 metų licenciją, bet paaiškėjo, kad mus dominantis platinimo rinkinys, nelogiška, atliko mums kritinę funkciją;
  • pfSense - pagarba ir garbė, tuo pačiu nuobodu, priprantama prie FreeBSD ugniasienės komandinės eilutės ir mums nėra pakankamai patogu (manau, kad tai įpročio reikalas, bet pasirodė neteisingas kelias);
  • ClearOS - mūsų aparatinėje įrangoje ji pasirodė labai lėta, negalėjome pradėti rimtų bandymų, tad kodėl tokios sunkios sąsajos?
  • Ideco SELECTA. Ideco produktas yra atskiras pokalbis, įdomus produktas, bet dėl ​​politinių priežasčių ne mums, taip pat noriu jiems „įkąsti“ dėl licencijos tam pačiam Linux, Roundcube ir pan. Iš kur jiems kilo mintis, kad pjaunant sąsają į Pitonas ir atėmę supervartotojo teises, jie gali parduoti gatavą produktą, sudarytą iš interneto bendruomenės sukurtų ir modifikuotų modulių, platinamų pagal GPL ir kt.

Suprantu, kad dabar į mano pusę pasipils neigiami šūksniai su reikalavimais detaliai pagrįsti savo subjektyvius jausmus, tačiau noriu pasakyti, kad šis tinklo mazgas taip pat yra 4 išorinių kanalų į internetą srauto balansuotojas, ir kiekvienas kanalas turi savo ypatybes. . Kitas kertinis akmuo buvo poreikis, kad viena iš kelių tinklo sąsajų veiktų skirtingose ​​adresų srityse, ir aš pasiruošę pripažinti, kad VLAN galima naudoti visur, kur reikia ir kur nereikia nepasirengusi. Yra naudojami įrenginiai, tokie kaip TP-Link TL-R480T+ - jie elgiasi ne idealiai, apskritai su savo niuansais. Šią dalį buvo galima sukonfigūruoti „Linux“ dėka oficialios „Ubuntu“ svetainės IP balansavimas: kelių interneto kanalų sujungimas į vieną. Be to, kiekvienas kanalas gali bet kurią akimirką „nukristi“, taip pat pakilti. Jei jus domina šiuo metu veikiantis scenarijus (ir tai verta atskiro leidinio), rašykite komentaruose.

Nagrinėjamas sprendimas nepretenduoja į unikalumą, tačiau norėčiau užduoti klausimą: „Kodėl įmonė turėtų prisitaikyti prie trečiųjų šalių abejotinų produktų, kuriems keliami rimti techninės įrangos reikalavimai, kai galima apsvarstyti alternatyvų variantą?

Jei Rusijos Federacijoje yra „Roskomnadzor“ sąrašas, Ukrainoje yra Nacionalinio saugumo tarybos sprendimo priedas (pavyzdžiui. čia), tada nemiega ir vietos vadovai. Pavyzdžiui, mums buvo pateiktas sąrašas draudžiamų vietų, kurios, vadovybės nuomone, mažina produktyvumą darbo vietoje.

Bendraudami su kolegomis kitose įmonėse, kur pagal numatytuosius nustatymus visos svetainės yra uždraustos ir tik paprašius, gavę viršininko leidimą, galite patekti į konkrečią svetainę, pagarbiai šypsodamiesi, mąstydami ir „rūkydami dėl problemos“, supratome, kad gyvenimas vis dar geras ir pradėjome jų paieškas.

Turėdami galimybę ne tik analitiškai pamatyti, ką jie rašo „namų šeimininkių knygose“ apie srauto filtravimą, bet ir pamatyti, kas vyksta skirtingų tiekėjų kanaluose, pastebėjome šiuos receptus (bet kokios ekrano nuotraukos yra šiek tiek apkarpytos, prašau supranti, kai klausia):

1 teikėjas
– nesivargina ir primeta savo DNS serverius bei skaidrų tarpinį serverį. Na?.. bet mes turime priėjimą ten, kur reikia (jei reikia :))

2 teikėjas
- mano, kad jo geriausias teikėjas turėtų apie tai pagalvoti, geriausio teikėjo techninė pagalba netgi pripažino, kodėl negalėjau atidaryti man reikalingos svetainės, o tai nebuvo draudžiama. Manau, kad nuotrauka jus pradžiugins :)

Iptables ir srauto filtravimas iš vargšų ir tingių disidentų

Kaip paaiškėjo, jie draudžiamų svetainių pavadinimus verčia į IP adresus ir blokuoja patį IP (jų netrikdo tai, kad šis IP adresas gali talpinti 20 svetainių).

3 teikėjas
— leidžia eismui ten važiuoti, bet neleidžia grįžti atgal.

4 teikėjas
— draudžia visas manipuliacijas su paketais nurodyta kryptimi.

Ką daryti su VPN (atsižvelgiant į „Opera“ naršyklę) ir naršyklės papildinius? Žaisdami su mazgu Mikrotik iš pradžių gavome net daug resursų reikalaujantį L7 receptą, kurio vėliau teko atsisakyti (gali būti ir daugiau draudžiamų pavadinimų, darosi liūdna, kai, be tiesioginių pareigų už maršrutus, 3 deš. PPC460GT procesoriaus apkrova pasiekia 100 %.

Iptables ir srauto filtravimas iš vargšų ir tingių disidentų.

Kas tapo aišku:
DNS 127.0.0.1 yra visiškai ne panacėja, šiuolaikinės naršyklių versijos vis tiek leidžia apeiti tokias problemas. Neįmanoma apriboti visų vartotojų su sumažintomis teisėmis, ir mes neturime pamiršti apie daugybę alternatyvių DNS. Internetas nėra statiškas, be naujų DNS adresų draudžiamos svetainės perka naujus adresus, keičia aukščiausio lygio domenus ir gali į savo adresą įtraukti/pašalinti simbolį. Bet vis tiek turi teisę gyventi taip:

ip route add blackhole 1.2.3.4

Būtų gana efektyvu gauti IP adresų sąrašą iš draudžiamų svetainių sąrašo, tačiau dėl pirmiau nurodytų priežasčių perėjome prie svarstymų apie Iptables. „CentOS Linux“ 7.5.1804 versijoje jau buvo tiesioginis balansavimo įrankis.

Vartotojo internetas turėtų būti greitas, o Naršyklė neturėtų laukti pusės minutės, padarydama išvadą, kad šis puslapis nepasiekiamas. Po ilgų paieškų priėjome prie šio modelio:
1 failas -> /script/denied_host, draudžiamų pavadinimų sąrašas:

test.test
blablabla.bubu
torrent
porno

2 failas -> /script/denied_range, draudžiamų adresų erdvių ir adresų sąrašas:

192.168.111.0/24
241.242.0.0/16

3 scenarijaus failas -> ipt.shatlieka darbą su 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

Sudo naudojamas dėl to, kad turime nedidelį įsilaužimą valdymui per WEB sąsają, tačiau, kaip parodė daugiau nei metų patirtis naudojant tokį modelį, WEB nėra toks reikalingas. Įdiegus atsirado noras į duomenų bazę įtraukti svetainių sąrašą ir pan. Užblokuotų kompiuterių skaičius yra daugiau nei 250 + keliolika adresų erdvių. Einant į svetainę per https ryšį tikrai kyla problemų, pavyzdžiui, sistemos administratorius, turiu nusiskundimų dėl naršyklių :), bet tai yra ypatingi atvejai, dauguma prieigų prie šaltinio vis dar yra mūsų pusėje. , taip pat sėkmingai blokuojame „Opera“ VPN ir papildinius, tokius kaip „Microsoft“ friGate ir telemetrija.

Iptables ir srauto filtravimas iš vargšų ir tingių disidentų

Šaltinis: www.habr.com

Добавить комментарий