Tu je niekoľko spôsobov, ako vám zabrániť v prístupe na konkrétne webové stránky, adresy URL a adresy IP v systéme Windows bez použitia programov tretích strán. Zvyčajne je najúčinnejšie nakonfigurovať blokovanie stránok na úrovni sieťovej brány (smerovač, smerovač, prístupový bod Wi-Fi, prostredníctvom ktorého pristupujete na internet) alebo pomocou softvéru tretích strán (filtre obsahu, filtre DNS atď.). V našom prípade sa pokúsime zablokovať konkrétnu stránku pomocou vstavaných nástrojov systému Windows 10 a automatizácie PowerShell.
obsah:
- Blokujte weby v systéme Windows pomocou súboru hosts
- Blokovanie webových stránok prostredníctvom DNS
- V bráne Windows Firewall blokujeme IP adresu webu
- PowerShell: pravidlá blokovania serverov podľa mena a adresy IP v bráne Windows Firewall
Blokujte weby v systéme Windows pomocou súboru hosts
Najznámejší spôsob blokovania konkrétnej lokality v systéme Windows je úprava súboru. hostitelia. Súbor sa zvyčajne nachádza v adresári % windir% \ system32 \ drivers \ etc \. Upozorňujeme, že súbor hosts nemá príponu.
Cesta k adresáru so súborom hosts je nastavená v parametri DatabasePath v pobočke registra HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters. V predvolenom nastavení je to% SystemRoot% \ System32 \ drivers \ etc.Súbor hosts sa používa na manuálne priradenie mapovaní medzi IP adresami a názvami DNS. Pri prekladaní mien má súbor hosts prednosť pred servermi DNS uvedenými v nastaveniach sieťového pripojenia.,
Ak chcete blokovať konkrétny web (napríklad ok.ru), otvorte súbor hosts na úpravu (s oprávneniami správcu) a pridajte riadky formulára:
127,0.0,1 ok.ru
127.0.0.1 www.ok.ru
Uložte súbor a reštartujte počítač (alebo vymažte vyrovnávaciu pamäť DNS pomocou príkazu: ipconfig / flushdns
).
Keď sa potom pokúsite otvoriť webovú stránku ok.ru v ľubovoľnom prehliadači, zobrazí sa správa „Stránka sa nenašla“ / „Stránka nie je k dispozícii“..
Pomocou súboru bat môžete pridať nové riadky z adries URL stránok do súboru hosts:
@echo off
set hostspath =% windir% \ System32 \ drivers \ etc \ hosts
echo 127.0.0.1 www.facebook.com >>% hostspath%
echo 127.0.0.1 facebook.com >>% hostspath%
výjazd
Alebo môžete použiť nasledujúce funkcie PowerShell na automatizáciu blokovania (odblokovania) určitých lokalít v zozname zakázaných domén v súbore hosts.
Function BlockSiteHosts ([Parameter (Povinné = $ true)] $ URL)
$ hosts = 'C: \ Windows \ System32 \ drivers \ etc \ hosts'
$ is_blocked = Získať obsah - hostitelia $ $ |
Vyberte reťazec - stránka ([regex] :: Escape ($ Url))
Ak (- nie je $ is_blocked)
$ hoststr = "127.0.0.1" + $ URL
Add-Content -Path $ hosts -Value $ hoststr
Funkcia UnBlockSiteHosts ([Parameter (Povinné = $ true)] $ URL)
$ hosts = 'C: \ Windows \ System32 \ drivers \ etc \ hosts'
$ is_blocked = Získať obsah - hostitelia $ $ |
Vyberte reťazec - stránka ([regex] :: Escape ($ Url))
Ak ($ is_blocked)
$ newhosts = Get-Content -Path $ hosts |
Where-Object
$ _ -notmatch ([regex] :: Escape ($ Url))
Set-Content -Path $ hosts -Value $ newhosts
Teraz, ak chcete pridať k blokovaným webom konkrétny web, stačí vykonať túto funkciu:
BlockSiteHosts ("vk.com")
Ak chcete web odomknúť, spustite:
UnBlockSiteHosts („vk.com“)
Blokovanie webových stránok prostredníctvom DNS
Ak vaši klienti používajú rovnaký server DNS, môžete podobne blokovať určité weby vytvorením záznamu DNS v tomto serveri DNS, ktorý ukazuje na 127.0.0.1 (alebo niečo podobné). Týmto princípom mimochodom funguje väčšina komerčných filtrov obsahu DNS (OpenDNS, SkyDNS, Yandex.DNS atď.).
V bráne Windows Firewall blokujeme IP adresu webu
Niektoré stránky môžete blokovať aj pomocou vstavanej brány Windows Firewall. Hlavnou nevýhodou tejto metódy je, že nemôžete použiť názov domény alebo lokality v pravidle blokovania. Brána Windows Firewall ako zdroj / cieľ vám umožňuje zadať iba adresu IP alebo podsiete.
Najprv musíte určiť IP adresu stránky, ktorú chcete blokovať. Najjednoduchší spôsob, ako to dosiahnuť, je pomocou príkazu nslookup.
nslookup ok.ru
Ako môžete vidieť vo výsledkoch príkazu, je niekoľko adries IP, ktoré sú priradené k lokalite. Musíte ich všetky zablokovať.
Teraz musíte spustiť panel nastavení brány Windows Firewall (Ovládací panel \ Všetky položky ovládacieho panela \ Windows Defender Firewall \ Rozšírené nastavenia alebo firewall.cpl).
V časti „Odchádzajúce pravidlá”Vytvorte nové pravidlo s nasledujúcimi parametrami:
- Typ pravidla: Prispôsobiteľné;
- Program: Všetky programy;
- Typ protokolu: Akékoľvek;
- kraj: v časti „Zadať vzdialené adresy IP, na ktoré sa toto pravidlo vzťahuje“ vyberte možnosť „Zadané adresy IP“ -> Pridať. V okne, ktoré sa otvorí, zadajte IP adresy, podsiete IP alebo rozsah IP adries stránok, ktoré chcete blokovať.
Kliknite na tlačidlo OK-> Ďalej -> Akcia: “Blokovať pripojenie".
V okne so zoznamom profilov brány firewall, na ktoré sa toto pravidlo vzťahuje, nechajte všetky možnosti. Zostáva zadať názov pravidla a uložiť ho.
Brána Windows Defender Firewall potom zablokuje všetky pripojenia k tejto lokalite. Pri pripájaní sa k blokovanej stránke sa v prehliadači zobrazí chyba:
Nedá sa pripojiť
alebo
Prístup na internet je uzavretý
Pripojenie môže byť blokované bránou firewall alebo antivírusovým softvérom..
ERR_NETWORK_ACCESS_DENIED
V doméne AD môžete distribuovať politiku blokovania stránok pomocou GPO do počítačov používateľov. Ale opäť je to nepraktické. Filtrujte weby presnejšie na bráne prístupu na internet.
PowerShell: pravidlá blokovania serverov podľa mena a adresy IP v bráne Windows Firewall
Môžete tiež použiť PowerShell na vytvorenie pravidla brány firewall, ktoré blokuje odchádzajúce pripojenia na konkrétnu lokalitu:
New-NetFirewallRule - DisplayName "Block Site" - Outbound Direction -LocalPort Any -Protocol Any -Action Block -RemoteAddress 217.20.147.1, 217.20.141.0/26
Riadok „Pravidlo bolo úspešne analyzované zo skladu“ naznačuje, že pravidlo, ktoré bolo úspešne aplikované nové pravidlo brány firewall. Nájdete ho v GUI brány Windows Firewall.
Ak sa chcete vyhnúť manuálnemu prekladu názvu lokality na adresy IP, môžete použiť rutinu cmdlet PowerShell Vyriešiť-DnsName získať adresy IP stránok.
Vyriešiť DnsName "ok.ru" | Vyberte -Výber IP adresy adresy
Môžeme teda previesť názov domény na adresy IP a okamžite pridať pravidlo odmietnutia blokovania prístupu na web:
$ IPAddress = Vyriešiť-DnsName "ok.ru" | Vyberte -Výber IP adresy adresy
New-NetFirewallRule - DisplayName "Block Site" - Outbound Direction -LocalPort Any -Protocol Any -Action Block -RemoteAddress $ IPAddress
Ukázalo sa, že teraz môžete do brány Windows Firewall pridať pravidlo odmietnutia pre niekoľko lokalít naraz:
$ SitesToBlock = “lenta.ru”, “mail.ru”, “facebook.com”
$ IPAddress = $ SitesToBlock | Vyriešiť -DnsName -NoHostsFile | Vyberte -Výber IP adresy adresy
New-NetFirewallRule -DisplayName "Block Web Sites" -Direction Outbound -LocalPort Any -Protocol Any -Action Block -RemoteAddress $ IPAddress
Pre rutinu Resolve-DnsName som pridal parameter -NoHostsFile, aby sa pri kontrole nepoužíval súbor hosts.
Skontrolujte, či sa v konzole objavilo pravidlo blokovania pre výstup.
Tento článok je predovšetkým cvičenie pre myseľ. Ak chcete v podnikovej sieti obmedziť prístup k webovým stránkam, musíte použiť filtrovanie na úrovni brány prístupu na internet alebo servera proxy. Blokovanie na úrovni hostiteľa nie je také účinné.