]> gitweb.morketsmerke.org Git - mmdev.git/commitdiff
Rozpoczęcie pisania rodziału 11, modułu 2. Podrozdział 11.1
authorxf0r3m <jakubstasinski@protonmail.com>
Sat, 21 Sep 2024 20:27:12 +0000 (22:27 +0200)
committerxf0r3m <jakubstasinski@protonmail.com>
Sat, 21 Sep 2024 20:27:12 +0000 (22:27 +0200)
articles/terminallog/Cisco_-_CCNA.html

index e810450c3e4b300daf40d06dcf5c8b876f8d214c..c757db21386423cad922c08f62d3a36395c4aad9 100755 (executable)
@@ -9074,6 +9074,305 @@ R3(config-if)#standby 1 ip 192.168.20.100
         Na koniec szerzej omówiliśmy każdy z rodzajów ataków, aby mieć ich
         obraz podczas konfiguracji.
       </p>
+      <h1 id="2.11.configureswitchsecurity">2.11. Konfiguracja zabezpieczeń przełącznika</h1>
+      <p>
+        W poprzednim rodziale omówiliśmy zagrożenia z jakimi możemy się
+        spotkać w warstwie drugiej. W tym rodziale dowiemy się w jaki sposób
+        skonfigurować system IOS na przełączniku, aby móc się przed nimi
+        chronić.
+      </p>
+      <h2 id="2.11.1.portsecurity">2.11.1. Zabezpieczenia portów</h2>
+      <p>
+        Pierwszą i w prawdzie najważniejszą rzeczą są zabezpieczenia portów.
+        Za pomocą tego mechanizmu możemy nakazać aby konkrety port mógł
+        nauczyć się tylko jednego adresu MAC, który jeśi będziemy sobie tego
+        życzyć będzie może trafić do konfiguracji. Zabezpieczenia portów
+        są podstawą linią obrony przed atakami warstwy drugiej.
+      </p>
+      <p>
+        Omawianie zabezpieczeń portów, rozpoczniemy od najprostszej czynności
+        jaką możemy wykonać. Jeśli intruz będzie w zasiegu dostępnego gniazda
+        Ethernet, może sprawdzić czy jest ono aktywne. Jeśli tak, to może
+        udać mu się uzyskać dostęp do sieci. Dlatego czasami najprostrze
+        rowiązania są najlepsze. Zatem może warto
+        <strong>wyłączyć nieużywane porty</strong> administracyjnie. Wydając
+        proste polecenie <code class="code-inline">shutdown</code>. Domyślnie
+        wszystkie porty przełącznika <strong>nie są</strong> wyłączone
+        administracyjnie.
+      </p>
+<pre class="code-block">
+S1(config)#do sh ip int br
+Interface              IP-Address      OK? Method Status                Protocol
+Vlan1                  unassigned      YES unset  administratively down down    
+FastEthernet0/1        unassigned      YES unset  down                  down    
+FastEthernet0/2        unassigned      YES unset  down                  down    
+FastEthernet0/3        unassigned      YES unset  down                  down    
+FastEthernet0/4        unassigned      YES unset  down                  down    
+FastEthernet0/5        unassigned      YES unset  down                  down    
+...
+</pre>
+      <p>
+        Przejść do konfiguracji wiecej niż jednego portu możemy poprzez
+        użycie polecenia <code class="code-inline">int range</code> podając
+        zakres portów lub też ich listę jeśli porty są nie pokolei. Oczywiście
+        możemy mieszać ze sobą ter rodzaj parametrów. 
+      </p>
+<pre class="code-block">
+S1(config)#int range fa0/1-24
+S1(config-if-range)#shutdown 
+S1(config-if-range)#do sh ip int br
+Interface              IP-Address      OK? Method Status                Protocol
+Vlan1                  unassigned      YES unset  administratively down down    
+FastEthernet0/1        unassigned      YES unset  administratively down down    
+FastEthernet0/2        unassigned      YES unset  administratively down down    
+FastEthernet0/3        unassigned      YES unset  administratively down down    
+FastEthernet0/4        unassigned      YES unset  administratively down down    
+FastEthernet0/5        unassigned      YES unset  administratively down down    
+FastEthernet0/6        unassigned      YES unset  administratively down down
+...
+</pre>
+      <p>
+        Po wyłączeniu portów, nie ma możliwości aby ktoś bez naszej wiedzy
+        mógł się podłączyć do sieci. Administracyjne wyłącznie portów fizycznie
+        wyłącza zasilanie na portach przełącznika.
+      </p>
+      <p>
+        Poza dostęp do sieci, możemy również chcieć zabezpieczyć nasz
+        przełącznik, aby nigdy nie udało się zrobić z koncentratora. Z
+        poprzedniego rodziału wiemy jak tego dokonać. Zabezpieczenia portów
+        obejmują możliwość wskazania ilość adresów MAC, których przełącznik
+        może się nauczyć, w jaki sposób ma się ich uczyć, na podstawie czego
+        ma stwiedzić, że adres w tablicy uleg przedawnieniu czy co zrobić
+        w przypadku naruszenia zasad zabezpieczeń portów.
+      </p>
+      <p>
+        Samo włączenie zabezpieczeń portu spowoduje, że zostaną nałożone na
+        niego pewne zasady. Za nim jednak przejdziemy do uruchomienia tej
+        opcji to musimy sobie wyjaśnić pewną rzecz. Domyślnie włączony jest
+        protokoł DTP, natomiast porty znajdują się w domyślnym stanie
+        <em>dynamic auto</em>. Zabezpieczenia portu wymagają, aby port był
+        portem dostępowym, więc przez uruchomienieniem zabezpieczeńm portów
+        musimy przełączyć w tryb dostępu: 
+      </p>
+<pre class="code-block">
+#Domyślnie:
+S1(config)#do show int fa0/1 switchport
+Name: Fa0/1
+Switchport: Enabled
+Administrative Mode: dynamic auto
+Operational Mode: down
+Administrative Trunking Encapsulation: dot1q
+Negotiation of Trunking: On
+Access Mode VLAN: 1 (default)
+Trunking Native Mode VLAN: 1 (default)
+Administrative Native VLAN tagging: enabled
+
+S1(config)#int fa0/1
+S1(config-if)#switchport mode access
+S1(config-if)#do show interface fa0/1 switchport
+Name: Fa0/1
+Switchport: Enabled
+Administrative Mode: static access
+Operational Mode: down
+Administrative Trunking Encapsulation: dot1q
+Negotiation of Trunking: Off
+Access Mode VLAN: 1 (default)
+Trunking Native Mode VLAN: 1 (default)
+Administrative Native VLAN tagging: enabled
+Voice VLAN: none
+</pre>
+      <p>
+        Teraz możemy włączyć zabezpieczenia portu.
+      </p>
+<pre class="code-block">
+S1(config-if)#switchport port-security
+</pre>
+      <p>
+        Reguły narzucone przez uruchomienie zabezpieczeń portu to, ustawienie
+        trybu naruszenia na najbardziej restrykcyjny oraz ustawienie ilości
+        adresów MAC do nauczenia się dla tego portu to 1.
+      </p>
+<pre class="code-block">
+S1#show port-security interface fa0/1
+Port Security              : Enabled
+Port Status                : Secure-down
+Violation Mode             : Shutdown
+Aging Time                 : 0 mins
+Aging Type                 : Absolute
+SecureStatic Address Aging : Disabled
+Maximum MAC Addresses      : 1
+Total MAC Addresses        : 0
+Configured MAC Addresses   : 0
+Sticky MAC Addresses       : 0
+Last Source Address:Vlan   : 0000.0000.0000:0
+Security Violation Count   : 0
+</pre>
+      <p>
+        Tryb naruszenia <code class="code-inline">Violation Mode</code>,
+        został ustawiony na <code class="code-inline">Shutdown</code>, co
+        spowoduje, że jeśli ktoś inny podłączy się do tego portu, to zostanie
+        on ustawiony w tryb <em>error disabled</em>. Liczba możliwych adresów
+        do nauczenia (<code class="code-inline">Maximum MAC Address</code>)
+        wynosi 1.
+      </p>
+      <p>
+        Jeśli chcemy zdecydować o tym ilu adresów pownieni móc nauczyć się
+        port wówczas wyskorzysujemy następujące polecenie:
+      </p>
+<pre class="code-block">
+Switch(config-if)# switchport port-security maximum &lt;1-8129&gt;
+</pre>
+      <p>
+        Po za podaniem ilości dozwolonych adresów MAC do zapamiętania, możemy
+        manipulować samym jego procesem. Np. podać statyczny adres MAC lub
+        przełącznik będzie się ich uczył dynamicznie. Co jest domyślną metodą
+        przy włączeniu zabezpieczeń portów. Inna wariacją jest dynamiczne
+        uczenie się z wykorzystaniem NVRAM do zapamiętania adresów MAC.
+        Poniższe polecenia uruchamiają poniższe tryby:
+      </p>
+      <ul>
+        <li><strong>Przypisanie statyczne</strong> - 
+          <code class="code-inline">S1(config-if)#switchport port-security
+            mac-address 00de.adbe.ef00</code></li>
+        <li><strong>Uczenie się dynamiczne</strong> -
+          <code class="code-inline">S1(config-if)#switchport port-security</code></li>
+        <li><strong>Uczenie się dynamiczne z wykorzystaniem NVRAM</strong>
+          <code class="code-inline">S1(config-if)#switchport port-security
+          mac-address sticky</code></li>
+      </ul>
+      <p>
+        W przypadku tych trybów to można je mieszać, ustawiając ilość
+        adresów na 4 i podając np. 2 adresy statycznie a resztę pozostawić
+        do nauki dynamicznej z wykorzystaniem NVRAM. W przpadku uczenia się
+        adresów MAC, przydatne może być polecenie:
+      </p>
+<pre class="code-block">
+S1#show port-security address
+          Secure Mac Address Table
+------------------------------------------------------------------------
+Vlan    Mac Address       Type                     Ports   Remaining Age
+                                                              (mins)    
+----    -----------       ----                     -----   -------------
+   1    001f.1618.0d37    SecureSticky             Fa0/2        -
+   1    00de.adbe.ef00    SecureConfigured         Fa0/2        -
+------------------------------------------------------------------------
+Total Addresses in System (excluding one mac per port)     : 1
+Max Addresses limit in System (excluding one mac per port) : 8192
+</pre>
+      <p>
+        Statystyki dla tego portu przezentują się następująco:
+      </p>
+<pre class="code-block">
+S1#sh port-sec int fa0/2
+Port Security              : Enabled
+Port Status                : Secure-up
+Violation Mode             : Shutdown
+Aging Time                 : 0 mins
+Aging Type                 : Absolute
+SecureStatic Address Aging : Disabled
+Maximum MAC Addresses      : 2
+Total MAC Addresses        : 2
+Configured MAC Addresses   : 1
+Sticky MAC Addresses       : 1
+Last Source Address:Vlan   : 001f.1618.0d37:1
+Security Violation Count   : 0
+</pre>
+    <p>
+      Port jest podniesiony (<code class="code-inline">Port Status: Secure-up</code>)
+      i nie nastąpiło żadne naruszenie zasad
+      (<code class="code-inline">Security Violation Count: 0</code>).
+    </p>
+    <p>
+      Zabezpieczenia portów pozwalają na określenie okresu ważności dla
+      bezpiecznych adresów (Przypisanych statycznie lub nauczonych w ramach
+      dynamicznej nauki, zgodniej z okreslonym limitem). Mamy dwa rodzaje
+      przedawnienia (okresu ważności):
+    </p>
+    <ul>
+      <li><strong><em>Absolute</em></strong> (ang. bezwględy) - adresy MAC są
+        usuwane po upłynięciu podanym okresie czasu.</li>
+      <li><strong><em>Inactivity</em></strong> (ang. nieaktywność) - adresy
+        MAC są usuwane po upłynięciu podanego okresu czasu nieaktywności.</li>
+    </ul>
+    <p>
+      Za ustawianie przedawnienia odpowiedzialne jest polecenie
+      <strong>aging</strong> zabezpieczania portów. Może ono przyjąć
+      następujące opcje:
+    </p>
+    <ul>
+        <li><strong>static</strong> - włącza okres przedawnienia dla statycznie
+          przypisanych adresów MAC.</li>
+        <li><strong>time</strong> &lt;czas&gt; - Czas w minutach określający
+          przedawnienie. Przyjmuje wartości od 0 do 1440. Przy czym ustawienie
+          0, wyłącza przedawnienie dla tego portu.</li>
+        <li><strong>type</strong> <em>Absolute</em>/<em>Inactivity</em> - 
+          określa rodzaj przedawnienia dla portu.</li>
+    </ul>
+    <p>
+      Dla przykładu ustawiłem na porcie 2 czas przedawnienia 10 minut dla
+      nieaktywnych hostów.
+    </p>
+<pre class="code-block">
+S1(config)#int fa0/2
+S1(config-if)#switchport port-security aging time 10
+S1(config-if)#switchport port-security aging type inactivity 
+</pre>
+      <p>
+        W momencie gdy dojdzie do przekroczenia zasad skonfigurownych na porcie,
+        występuje naruszenie, może mieć one różne skutki. Od zaprzestania
+        transmisji dla nieznanych adresów na czas potrzebny do usunięcia 
+        nadmiarowych adresów MAC do
+        przestawienia portu w stan <em>error-disabled</em>. Istnieją trzy tryby:
+      </p>
+      <ul>
+        <li><strong>shutdown</strong> (domyślny) - Port przechodzi natychmiast
+          do stanu <em>error-disabled</em>, wyłącza kontrolkę LED i wysła 
+          komunikat do <em>Syslog</em>. Licznik naruszeń jest zwiększany</li>
+        <li><strong>restrict</strong> - Ten tryb powoduje zaprzestanie
+          transmisji dla nieznaych adresów do momentu usunięcia namiarowych
+          pozycji. Porty nie są wyłączane Licznik naruszeń jest zwiększany oraz
+          wysłane są komunikaty <em>syslog</em></li>
+        <li><strong>protect</strong> - działa na takiej samej zasadzie jak
+          <em>restrict</em>, przyczym żadne logi nie są wysłane oraz nie jest
+          zwiększany licznik naruszeń. Jest najmnie bezpieczny z trybów.<li>
+      </ul>
+      <p>
+        Do ustawienie trybu wybierany wykorzystywane jest polecenie
+        <em>violation</em>, zabezpieczeń portów.
+      </p>
+<pre class="code-block">
+S1(config)#int fa0/2
+S1(config-if)#switchport port-security violation restrict
+</pre>
+      <p>
+        Stan <em>error-disabled</em> - wyłączony przez błąd, może być
+        spowodowany przez użytkownika, w momencie gdy naruszy on zasady
+        zabezpieczeń portów. Transmisja przez taki port zostaje zatrzymana,
+        wyłączona jest również kontrolka LED. Włączenie takowego portu
+        wymaga działania administratora.
+      </p>
+      <p>
+        Do tej porty poznaliśmy polecenia, które pozwolą nam ustawienie
+        zabezpieczeń portów oraz na wyświetlenie informacji o nich. Nie których.
+        Bowiem istnieje jeszcze jedno polecenie, które pozwoli na wyświetlenie
+        zabezpieczeń na wszystkich portach.
+      </p>
+<pre class="code-block">
+S1#show port-security
+Secure Port  MaxSecureAddr  CurrentAddr  SecurityViolation  Security Action
+                (Count)       (Count)          (Count)
+---------------------------------------------------------------------------
+      Fa0/1              1            0                  0         Shutdown
+      Fa0/2              2            2                  0         Restrict
+---------------------------------------------------------------------------
+Total Addresses in System (excluding one mac per port)     : 1
+Max Addresses limit in System (excluding one mac per port) : 8192
+</pre>
+      <h3 id="2.11.1.pka">Zadanie praktyczne - Packet Tracer</h3>
+      <p>
+        <a href="">Wdrożenie zabezpieczeń portów - scenariusz</a><br />
+        <a href="">Wdrożenie zabezpieczeń portów - zadanie</a>
+      </p>     
     </div>
        </body>
 </html>