[11] Serwer Web (IIS) – Ograniczenia IP oraz domenowe

2 sierpnia 2024 Wyłączono przez Adam [zicherka] Nogły

Ustawimy teraz ograniczenia adresów IP i domen dla określonych treści internetowych.

Uruchom PowerShell z uprawnieniami administratora.

Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

# zainstaluj rolę [Ograniczenia adresów IP i domen]
PS C:\Users\Administrator> Install-WindowsFeature Web-IP-Security
Success Restart Needed Exit Code      Feature Result
------- -------------- ---------      --------------
True    No             Success        {Ograniczenia adresów IP i domen}

# zrestartuj serwer IIS
PS C:\Users\Administrator> Restart-Service W3SVC

PS C:\Users\Administrator> Get-Website
Name             ID   State      Physical Path                  Bindings
----             --   -----      -------------                  --------
Default Web Site 1    Started    %SystemDrive%\inetpub\wwwroot  http *:80:
VWSR01.zicher.la 3    Started    C:\inetpub\newsite             http *:80:vwsr01.zicher.lab
b                                                               https *:443:vwsr01.zicher.lab sslFlags=0

PS C:\Users\Administrator> Get-ChildItem C:\inetpub\newsite
    Directory: C:\inetpub\newsite
Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        04.01.2023     21:47                aspnet_client
d-----        04.01.2023     22:02                auth_basic
d-----        04.01.2023     22:38                auth_win
d-----        05.01.2023     19:58                content01
d-----        05.01.2023     19:59                content02
-a----        04.01.2023     21:49            436 index.aspx
-a----        03.01.2023     20:37             28 index.html

# ustaw restrykcje dla folderu [content01] na serwerze [vwsr01.zicher.lab]
# zabroń dostępu z adresu [192.168.100.188/29]
PS C:\Users\Administrator> Add-WebConfiguration -Filter '/system.webServer/security/ipSecurity' -Location "vwsr01.zicher.lab/content01" -Value @{ipAddress="192.168.100.188";subnetMask="29";allowed="false"}

# zmień domyślne ustawienia dla folderu [content02] na serwerze [vwsr01.zicher.lab]
# domyślnie mają wszyscy dostęp
# zabroń wszystkim
PS C:\Users\Administrator> Set-WebConfigurationProperty -Filter '/system.webServer/security/ipSecurity' -Location "vwsr01.zicher.lab/content02" -Name allowUnlisted -Value False

# ustaw restrykcje dla folderu [content02] na serwerze [vwsr01.zicher.lab]
# zezwól na dostęp z adresów [192.168.100.188/255.255.255.240]
PS C:\Users\Administrator> Add-WebConfiguration -Filter '/system.webServer/security/ipSecurity' -Location "vwsr01.zicher.lab/content02" -Value @{ipAddress="192.168.100.180";subnetMask="255.255.255.240";allowed="true"}

# zrestartuj witrynę Web
PS C:\Users\Administrator> Restart-WebItem -PSPath 'IIS:\Sites\vwsr01.zicher.lab'

Aby wprowadzić ograniczenia domenowe oraz adresów IP za pomocą narzędzi graficznych postępuj według poniższego schematu.

Uruchom [Start] > [Menadżer serwera], następnie kliknij [Dodaj role i funkcje].

Kliknij [Dalej].

Wybierz [Instalacja oparta na rolach…] i kliknij [Dalej].

Wybierz serwer, na którym chcesz zainstalować usługę i kliknij [Dalej].

Wybierz [Ograniczenia adresów IP i domen], a następnie kliknij [Dalej].

Kliknij [Dalej].

Kliknij [Zainstaluj], aby rozpocząć instalację.

Po zakończeniu instalacji kliknij [Zamknij], aby zamknąć kreatora.

W tym przykładzie ustaw ograniczenie na folder [content01] w witrynie [vwsr01.zicher.lab].

Wybierz folder docelowy w lewym okienku i otwórz [Ograniczenia adresów IP i domen] w środkowym okienku.

Domyślne ustawienie to zezwalaj wszystkim, więc kliknij link [Dodaj wpis Odmów] w prawym okienku, aby ograniczyć niektóre adresy IP.

Wprowadź adres IP w polu [Określony adres IP] lub zakres adresów IP w polu [Zakres adresów IP].

W tym przykładzie ustaw zakres [192.168.100.188/29], aby tym adresom odmówić dostępu. Następnie kliknij [OK].

Po wprowadzeniu i zatwierdzeniu, aktualne wpisy są wyświetlana na liście. Jeśli chcesz dodać kolejne wpisy/reguły postępuj jak powyżej.

Po zakończeniu ustawień sprawdź czy powyższe reguły działają i dają możliwość uzyskać dostęp z odrzuconego komputera i dozwolonego komputera.

Poniższy przykład pokazuje, że komputer źródłowy, który ma adres IP [192.168.100.188] uzyskał dostęp do witryny IIS, ale został odrzucony jako ustawienia ograniczone.

Poniższy przykład pokazuje, że komputer źródłowy, który ma adres IP [192.168.100.183] uzyskał dostęp do witryny IIS i mógł uzyskać do niej dostęp jako ustawienie zezwolenia dostępu.

Aby uzyskać więcej przykładów, ustaw konfigurację w folderze [content02] w witrynie [vwsr01.zicher.lab].

Wybierz folder docelowy w lewym okienku i kliknij, aby otworzyć [Ograniczenia adresów IP i domen] w środkowym okienku, po czym zostanie wyświetlone następujące okno. Zmień domyślne ustawienie [zezwalaj na wszystko]. Kliknij [Edytuj ustawienia funkcji] w prawym okienku.

Zmień na [Odmów] w polu [Dostęp dla nieokreślonych klientów]. Dzięki tej zmianie domyślne ustawienie zmienia się na [odmów wszystkim]. Następnie kliknij [OK].

Kliknij link [Dodaj wpis Zezwalaj] w prawym panelu.

Wprowadź adres IP w polu [Określony adres IP] lub zakres adresów IP w polu [Zakres adresów IP]. W tym przykładzie ustaw zakres [192.168.100.188/255.255.255.240], aby im zezwolić. Następnie kliknij [OK].

Po ustawieniu adresów IP wyświetlane są wpisy. Jeśli chcesz dodać więcej reguł, możesz je dodać za pomocą tej samej operacji jak wyżej.

Po ustawieniu restrykcji dostępu opartej na adresach IP sprawdź, czy wszystko działa normalnie, aby uzyskać dostęp z odrzuconego komputera i dozwolonego komputera.

Poniższy przykład pokazuje, że komputer źródłowy, który ma adres IP [10.0.0.239] uzyskał dostęp do witryny IIS i został odrzucony jako ustawienia ograniczenia adresu IP.

Poniższy przykład pokazuje, że komputer źródłowy, który ma adres IP [192.168.100.183] uzyskał dostęp do witryny IIS i mógł uzyskać do niej dostęp jako ustawienia zezwalające.

Nawiasem mówiąc, możliwe jest również ustawienie ograniczeń opartych na nazwie domeny. Jednak w tym przypadku nie jest to zalecane, ze względu na duże obciążenie serwera, związane z rozwiązywaniem nazw.