ERETEK
BİLGİ SİSTEMLERİ

Switch Yapılandırma Standardı: Erişim Portu ve Yönetim Şablonu

Switch’ler için golden config: isimlendirme, SSH/AAA, NTP, syslog, SNMPv3, erişim ve trunk port şablonları, açıklamalı Cisco IOS XE örneği ve denetim listesi.

Bu makalede8 bölüm
Teknik özet
Teknoloji
Cisco IOS XE, SSH, TACACS+/AAA, NTP, syslog, SNMPv3, STP BPDU Guard, LACP
Konu
Switch’ler için standart temel yapılandırma ve port şablonları
Seviye
Başlangıç–orta
Ön koşullar
  • Cisco IOS temel CLI bilgisi
  • VLAN ve trunk kavramları
  • Yönetim ağı ve AAA sunucusu

Gece yarısı bir kat düştü; konsola bağlanıyorsunuz ve switch’in yapılandırması yan binadakine hiç benzemiyor. Biri telnet açık bırakmış, öbüründe BPDU Guard yok, port açıklamaları üç farklı kişinin üç farklı alışkanlığını yansıtıyor. Bu durumda her arıza ayrı bir bulmacadır. Bir switch yapılandırma standardı (golden config), tüm cihazlarda ortak olması gereken satırları, port şablonlarını ve isimlendirme kurallarını tek belgede toplar. Aşağıda Cisco IOS XE üzerinden satır satır açıklamalı bir temel şablon ve standarda uyumu denetlemek için bir kontrol listesi veriyoruz; aynı mantık diğer üreticilerin komut setlerine uyarlanabilir.

Neden tek bir yapılandırma standardı?

Standart yapılandırmanın asıl getirisi kurulum hızında değil, işletimdedir:

  • Öngörülebilir davranış: Bir erişim portu nerede olursa olsun aynı BPDU korumasına, aynı storm control eşiğine ve aynı QoS politikasına sahipse, arızada “bu portta neler açık?” sorusu ortadan kalkar.
  • Denetlenebilirlik: Standarttan sapma, yapılandırma yedeklerinin otomatik karşılaştırılmasıyla yakalanır. Yedekleme ve fark takibi için Oxidized ile konfigürasyon yedekleme yazısına bakın.
  • Güvenli varsayılanlar: Telnet, HTTP yönetimi, paylaşılan yerel parolalar gibi riskli ayarlar şablonda bir kez kapatılır ve her yeni cihazda kapalı gelir.
  • Devir teslim: Yeni ekip üyesi veya dış destek, tek belgeyi okuyarak kurumsal ağ altyapısının tamamının nasıl yapılandırıldığını anlar.

Standart üç bölümden oluşur: cihaz geneli (global) ayarlar, port şablonları ve isimlendirme kuralları. Her bölüm sürüm numarasıyla tutulur; değişiklikler değişiklik yönetimi sürecinden geçer. Belgesi olmayan standart, standart değildir.

İsimlendirme ve açıklama (description) kuralları

Hostname, cihazın nerede olduğunu ve ne iş yaptığını söylemeli. Örnek bir şema:

Alan Örnek Anlamı
Lokasyon IST-HQ Şehir ve yerleşke kodu
Bina/kat B1-K2 Bina numarası ve kat
Rol AS / DS / CS Erişim, dağıtım, çekirdek
Sıra 01 Aynı roldeki cihaz numarası

Sonuç: IST-HQ-B1-K2-AS01. Türkçe karakter ve boşluk kullanılmaz; DNS kaydı, izleme sistemi ve log sunucusu aynı adı kullanır.

Port açıklamaları da aynı disiplinle yazılır. Önerilen biçim TIP | KARSI UC | NOT: UPL | IST-HQ-B1-DS01 Te1/0/5, AP | B1-K2-AP07, SRV | ESX03 vmnic2, USR | Masaustu, UNUSED. İlk alan sabit bir kod listesinden seçilirse show interfaces description | include ^Te.*UPL gibi filtrelerle hızlı rapor çıkarılır. Sahada en çok zaman kaybettiren şeylerden biri, açıklaması “yeni” veya “test” olan uplink’tir. Port eşleşmelerinin belgelenmesi için ağ dokümantasyonu ve port haritası yazısı bu kuralın tamamlayıcısıdır.

Yönetim düzlemi: SSH, AAA, NTP, syslog, SNMP

Aşağıdaki şablon bir L2 erişim switch’i içindir. Açılı ayraç içindeki değerler kuruma göre doldurulur; parola ve anahtarlar şablona açık metin olarak yazılmaz, kasadan (vault) alınır.

hostname IST-HQ-B1-K2-AS01
!
! Zaman ve log damgası
clock timezone TRT 3 0
service timestamps log datetime msec localtime show-timezone
service timestamps debug datetime msec localtime show-timezone
service password-encryption
!
! Kullanılmayan yönetim servisleri kapalı
no ip http server
no ip http secure-server
no ip domain lookup
!
! Yerel acil durum hesabı (AAA sunucusu erişilemezse)
username <acil-hesap> privilege 15 algorithm-type scrypt secret <parola>
!
! AAA: TACACS+ birincil, yerel hesap yedek
aaa new-model
tacacs server TACACS-1
 address ipv4 10.0.100.21
 key <anahtar>
aaa group server tacacs+ TACACS-GRP
 server name TACACS-1
 ip tacacs source-interface Vlan100
aaa authentication login default group TACACS-GRP local
aaa authorization exec default group TACACS-GRP local if-authenticated
aaa accounting exec default start-stop group TACACS-GRP
aaa accounting commands 15 default start-stop group TACACS-GRP
!
! SSH
ip domain name corp.example
ip ssh version 2
ip ssh time-out 60
ip ssh authentication-retries 3
! (bir kez çalıştırılır) crypto key generate rsa modulus 3072
!
! Yönetim erişim listesi
ip access-list standard ACL-MGMT
 permit 10.0.100.0 0.0.0.255
 deny any log
line vty 0 15
 access-class ACL-MGMT in
 transport input ssh
 exec-timeout 10 0
line con 0
 exec-timeout 10 0
!
! Yönetim VLAN'ı (yalnız L2 switch)
interface Vlan100
 description MGMT
 ip address 10.0.100.45 255.255.255.0
ip default-gateway 10.0.100.1
!
! NTP
ntp server 10.0.100.1 prefer
ntp server 10.0.100.2
ntp source Vlan100
!
! Syslog
logging buffered 64000 informational
logging trap informational
logging source-interface Vlan100
logging host 10.0.100.30
!
! SNMPv3 (yalnız okuma)
ip access-list standard ACL-SNMP
 permit 10.0.100.40
snmp-server group NMS-RO v3 priv access ACL-SNMP
snmp-server user <nms-kullanici> NMS-RO v3 auth sha <auth-parola> priv aes 128 <priv-parola>
snmp-server location IST-HQ B1 Kat2 Dolap-2A
!
banner login ^
Bu cihaz yalnız yetkili personelin kullanımı içindir. Tüm erişimler kayıt altına alınır.
^

Satırların gerekçeleri:

  • Zaman damgası ve NTP: Log’ları cihazlar arasında ilişkilendirecekseniz saatler aynı kaynaktan senkronize olmalı, log satırı milisaniye ve saat dilimini içermeli. NTP sunucusu olarak iki iç kaynak kullanılır. Saatleri farklı iki cihazın log’uyla olay incelemesi yapılmaz.
  • AAA: Bireysel hesaplarla giriş ve komut kaydı (accounting), “bu değişikliği kim yaptı?” sorusunu cevaplanabilir kılar. local anahtar kelimesi, TACACS+ sunucusuna ulaşılamadığında acil durum hesabıyla giriş yapılabilmesini sağlar; bu hesabın parolası kasada tutulur, kullanımı alarm üretir.
  • SSH ve VTY ACL: Telnet kapalıdır; yönetim yalnız yönetim ağından yapılır. algorithm-type scrypt, yerel parolanın zayıf type 7 veya MD5 tabanlı type 5 yerine scrypt (type 9) ile saklanmasını sağlar.
  • Syslog: Yerel tampon, merkezi sunucuya ulaşılamayan anlar için kısa süreli kayıt tutar. Merkezi saklama ve saklama süresi için merkezi syslog sunucusu kurulumu yazısına bakın.
  • SNMPv3: Community tabanlı v1/v2c yerine kimlik doğrulama ve şifreleme sunan authPriv kullanılır. Ayrıntılı yapılandırma SNMPv3 yapılandırma rehberi yazısında.

Erişim portu şablonu

Erişim portu şablonunu uç cihaz tipine göre iki–üç varyantla sınırlı tutun. Varyant sayısı arttıkça standart çözülür. Kullanıcı portu örneği:

interface range GigabitEthernet1/0/1 - 44
 description USR | Masaustu
 switchport mode access
 switchport access vlan 20
 switchport voice vlan 120
 switchport nonegotiate
 spanning-tree portfast
 spanning-tree bpduguard enable
 storm-control broadcast level 1.00
 storm-control multicast level 5.00
 storm-control action trap
 no shutdown
  • switchport mode access ve nonegotiate: Port, karşı uçla DTP üzerinden trunk pazarlığına girmez.
  • portfast ve bpduguard: Uç cihaz bağlantısı STP dinleme sürecini beklemeden açılır; porta switch takılırsa port err-disable olur. Masa altına takılan küçük switch’lerin döngü yarattığı arızalar sahada hâlâ sık görülür. STP korumalarının tamamı için STP, RSTP ve MSTP yazısına bakın.
  • storm-control: Eşikler bağlantı kapasitesinin yüzdesi cinsindendir; bu örnekteki değerler gösterim amaçlıdır, normal trafik profilinizi ölçerek belirleyin. Eşik aşımında trafiği bastırmak yerine önce yalnız uyarı (trap) üretmek, yanlış eşiğin kesintiye dönüşmesini önler.

Kullanıcı portlarında kimlik doğrulama (802.1X/MAB) kullanılacaksa ilgili satırlar bu şablona eklenir; politika ve geçiş planı siber güvenlik tarafında 802.1X ve NAC geçiş planı yazısında ele alınıyor.

Port şablonlarının dayandığı L2 global satırlar da standarda dahildir: STP modu tüm kampüste aynı seçilir, VTP ile VLAN veritabanının istemeden ezilmesi engellenir. Yüksek revizyon numaralı bir VTP sunucusunun ağa takılıp tüm VLAN’ları silmesi, eski ama hâlâ yaşanan bir arızadır.

spanning-tree mode rapid-pvst
spanning-tree extend system-id
vtp mode transparent
!
interface range TenGigabitEthernet1/1/1 - 2
 description UPL | IST-HQ-B1-DS01
 switchport mode trunk
 switchport trunk native vlan 999
 switchport trunk allowed vlan 20,100,120
 switchport nonegotiate
 channel-group 1 mode active
!
interface Port-channel1
 description UPL | IST-HQ-B1-DS01 Po11
 switchport mode trunk
 switchport trunk native vlan 999
 switchport trunk allowed vlan 20,100,120
 switchport nonegotiate

Trunk üzerinde izinli VLAN listesi açıkça yazılır; “tüm VLAN’lar” varsayılanı kullanılmaz. Native VLAN, kullanıcı trafiği taşımayan ve hiçbir erişim portuna atanmayan bir VLAN’dır (örnekte 999). İki uplink LACP ile tek mantıksal bağlantı olarak çalışır. Üye port tutarlılığı ve hash davranışı için LACP ve EtherChannel yapılandırması yazısına bakın.

Kullanılmayan portlar ve native VLAN

vlan 998
 name UNUSED-PARK
vlan 999
 name NATIVE-UNUSED
!
interface range GigabitEthernet1/0/45 - 48
 description UNUSED
 switchport mode access
 switchport access vlan 998
 switchport nonegotiate
 shutdown

Kullanılmayan portlar kapalı tutulur ve hiçbir yere yönlendirilmeyen bir “park” VLAN’ına atanır. Port yanlışlıkla açılsa bile kullanıcı ağına erişim vermez. VLAN 1 hiçbir porta erişim VLAN’ı veya native VLAN olarak atanmaz; yönetim trafiği de VLAN 1 üzerinden taşınmaz. Native VLAN’ın kullanılmayan bir VLAN olması, çift etiketleme (double tagging) ile VLAN atlama tekniğinin etkisini ortadan kaldırır. Boş port, açık kapıdır. VLAN numaralandırma düzeninin tamamı için kurumsal ağda VLAN tasarımı yazısı referans alınabilir.

Standarda uyum denetim kontrol listesi

Standardı yazmak işin kolay kısmıdır. Asıl iş, cihazların ona uyduğunu düzenli olarak doğrulamaktır; aksi halde altı ay içinde her switch yeniden kendi yoluna gider. Aşağıdaki kontroller her cihazda show running-config çıktısı üzerinden manuel veya otomatik yapılabilir:

  • Hostname isimlendirme şemasına uyuyor ve DNS kaydıyla aynı mı?
  • transport input ssh tüm VTY hatlarında var mı, telnet kapalı mı?
  • VTY hatlarında yönetim ACL’i uygulanmış mı?
  • no ip http server ve no ip http secure-server satırları var mı?
  • AAA yapılandırması ve komut kaydı (accounting) etkin mi?
  • İki NTP sunucusu tanımlı ve show ntp associations senkron gösteriyor mu?
  • Syslog sunucusu tanımlı ve sunucuda bu cihazdan güncel kayıt var mı?
  • SNMP v1/v2c community tanımı yok, yalnız SNMPv3 authPriv mı?
  • Tüm erişim portlarında bpduguard ve portfast var mı; STP modu ve VTP modu standarttaki değerde mi?
  • Tüm trunk’larda izinli VLAN listesi açıkça yazılmış ve native VLAN 999 mu?
  • Kullanılmayan portlar kapalı ve park VLAN’ında mı?
  • Açıklaması olmayan veya standart kod listesine uymayan aktif port var mı?

Hızlı manuel kontrol için şu filtreler işe yarar:

show running-config | include ^hostname|^ntp server|^logging host|^snmp-server community
show running-config | section line vty
show interfaces status | include connected
show interfaces description | include UNUSED

Cihaz sayısı arttığında bu kontrolleri bir betik veya yapılandırma yönetim aracıyla (örneğin Ansible’ın cisco.ios koleksiyonu ya da yedekleme aracının fark raporları) otomatikleştirin. Elle denetim ölçeklenmez. Güvenlik sıkılaştırması için ek referans olarak CIS Benchmarks içindeki Cisco IOS kontrolleri incelenebilir. Standardın hazırlanması ve mevcut switch’lere sapma olmadan uygulanması switch, router ve ağ cihazları kurulumu hizmetinin, VLAN ve trunk düzeninin gözden geçirilmesi ise VLAN ve ağ segmentasyonu çalışmasının parçasıdır.

Sık sorulan sorular

Golden config ile şablon arasındaki fark nedir?

Golden config, tüm cihazlarda bulunması gereken onaylı yapılandırmanın referans halidir. Şablon ise bu referansın cihaza özgü değişkenlerle (hostname, yönetim IP’si, VLAN numaraları) doldurulabilen biçimidir. Pratikte golden config belge ve denetim ölçütü, şablon uygulama aracıdır.

Native VLAN neden kullanılmayan bir VLAN olmalı?

Trunk üzerinde native VLAN etiketsiz taşınır. Native VLAN kullanıcı VLAN’ıyla aynıysa çift etiketleme tekniğiyle başka bir VLAN’a trafik gönderme girişimleri mümkün hale gelir. Native VLAN’ın hiçbir erişim portuna atanmamış ayrı bir VLAN olması bu riski ortadan kaldırır.

TACACS+ sunucusu çökerse switch’e nasıl girilir?

AAA yöntem listesinin sonuna local eklenirse TACACS+ sunucusuna ulaşılamadığında yerel hesaplar kullanılabilir. Bunun için güçlü parolalı tek bir acil durum hesabı tanımlayın, parolayı kasada saklayın ve hesabın her kullanımında izleme sisteminin alarm üretmesini sağlayın.

Standarda uyum ne sıklıkla denetlenmeli?

Yapılandırma yedekleri günlük alınıyorsa sapma kontrolü de her yedekle birlikte otomatik yapılabilir. Otomasyon yoksa en azından her değişiklik penceresinden sonra ilgili cihazları, dönemsel olarak da tüm cihazları kontrol listesiyle gözden geçirin.

Teknik özet
Teknoloji
Cisco IOS XE, SSH, TACACS+/AAA, NTP, syslog, SNMPv3, STP BPDU Guard, LACP
Konu
Switch’ler için standart temel yapılandırma ve port şablonları
Seviye
Başlangıç–orta
Ön koşullar
  • Cisco IOS temel CLI bilgisi
  • VLAN ve trunk kavramları
  • Yönetim ağı ve AAA sunucusu
Eretek uzman desteği

Bu konuyu kendi altyapınızda birlikte ele alalım.

Önce mevcut yapıyı inceliyoruz; ardından riskleri ve uygulanabilir adımları içeren yazılı bir plan çıkarıyoruz.