Fórum Root.cz

Hlavní témata => Windows a jiné systémy => Téma založeno: smoofy 11. 06. 2013, 15:36:50

Název: Nastaveni firewallu pres powershell
Přispěvatel: smoofy 11. 06. 2013, 15:36:50
Ahoj,

snad s tim bude mit nekdo zkusenost a pomuze mi v teto zalezitosti.
Hledam zpusob, jak pomoci powershellu nastavit windowsacky firewall obdobne jako na unix-like systemech skriptem, tj. vse zakazat a postupne dodavat jen pravidla pro spojeni ktera potrebuju. GUI je pro mne nepouzitelne, nakolik to ranec trva a pri vetsim mnozstvi stroju je to mrhani neskutecnym mnozstvim casu a navic bych timto zpusobem mohl resit defaultni instalaci a nastaveni serveru skriptem.
V tuto chvili zkoumam pouziti Get-NetFirewallRule, New-NetFirewallRule etc. nicmene nemam to jeste zazite a pomoc z venci od nekoho, kdo s tim ma zkusenost by byla velice napomocna.
Název: Re:Nastaveni firewallu pres powershell
Přispěvatel: Withy14 11. 06. 2013, 16:18:14
Asi to moc nepomůže, ale zkus mrknout tady: http://technet.microsoft.com/en-us/library/jj554908%28v=wps.620%29.aspx
Dole sou examply, takže snad aspoň trochu.

Taky mě napadá, proč chceš vytvářet firewall/router z Windows OS? Pokud požaduješ nějaká pravidla uvnitř sítě (napadá mě jen oddělení provozu), nebylo by jednodušší řešit to vlanami, jinak bych radši použil nějaký Unix-like systém (jen blbá připomínka, jaké další role ten Windows má, pokud je to například DC, Federační server nebo CA, tak si koledujš o malér, protože vystavit takovýhle server ven není vhodné řešení).
Název: Re:Nastaveni firewallu pres powershell
Přispěvatel: Paulos 11. 06. 2013, 16:35:14
Kdysi jsem pomocí jistých Powershellovských příkazů upravoval chybná pravidla, která si nastavoval ovladač tiskárny, od té doby už to chování ovšem opravili a můj skript jsem si nádherně přeformátoval spolu s diskem (OT :) ). Tehdy jsem to snad ještě dělal s využitím WMI, a to bylo paradoxně možná i trochu jednodušší než tyto příkazy. Ovšem to jen proto, že jsem je tehdy neznal.

Velmi jednoduše:
Kód: [Vybrat]
New-NetFirewallRule -DisplayName “block ie” -RemoteAddress "192.168.1.1-192.168.1.10" -LocalAddress "192.168.1.101"Více ti řekne MSDN popř. tutoriály na internetu.[/li]
[li]Get-NetFirewallRule vypíše všechna definovaná pravidla, ovšem bez informací o blokovaných/povolených adresách, portech, síťových rozhraních apod. To jsou samostatné filtry, jejichž informace získáš s použitím vhodných příkazů.[/li]
[li]Využiješ kombinace Get-NetFirewallRule, Get-NetFirewallPortFilter, Get-NetFirewallInterfaceFilter apod. (úplný seznam získáš pomocí [/li][/list]
Kód: [Vybrat]
Get-Command -Noun "*firewall*" a vhodným použitím rour (znak |) nakombinuješ tak, abys získal potřebné informace.

Příklad: chci najít pravidlo s portem TCP 3389. Načtu si nejdřív ze seznamu portů správné porty a pak podle nich vyfiltruji pravidla.
Kód: [Vybrat]
PS> $port = Get-NetFirewallPortFilter -Protocol TCP | Where {$_.LocalPort -eq 3389}
PS> $port | Get-NetFirewallRule

DisplayName : Vzdálená plocha – uživatelský režim (TCP-In)

Vše je samozřejmě napsané v manuálech, tutoriálech (ty doporučuji), ale tohle je pár základních věcí, které lze použít.
Název: Re:Nastaveni firewallu pres powershell
Přispěvatel: smoofy 11. 06. 2013, 16:52:59
to Withy14:
Jedna se v drtive vetsine o webove servery ktere nekteri zakaznici, i z mne neznamych duvodu, pozaduji na windows. Ty servery jsou samozrejme pristupne z Internetu a vzhledem k rozdilnemu rozlozeni po servrovnach pripadne virtualizaci je reseni s externim firewallem dost neohrabane.
Neni to tedy o tom, vytvaret route/firewall z Windows, ale zabezpecit zakladni ochranu systemu jako takoveho a to obousmerne. Casto se totiz stava, ze jsou weby napadeny a pouzivany k DoS utokum.

Vseobecne je situace takova, ze nekteri zakaznici pozaduji windows a maji na to plne pravo a ja nevidim duvod, proc bych jim v tom nemel vyhovet a nebavi mne to nejak zaplatovat ale delat to poradne, nebo alespon co nejlepe umim. Nejsem ortodoxni linuxak a nevidim nic spatneho na rozsireni znalosti systemu i treba do vod MS kdyz se navic ukazuje, jake jsou firmy za to ochotny platit penize.

to Paulos:
diky za namet, urcite si to projdu :)