Yaklaşık 7 yıldır bazı dönemler az bazı dönemlerde aşırı yoğun şekilde Cisco ASA (Adaptive Security Appliance) firewall ailesi ile çalışıyorum. Cisco’da firewall tarafı PIX ile başlayıp, 5500 serisi, 5500-X serisi, IPS modüllü, CX modüllü, sourcefire modüllü şeklinde gitmektedir. Bu süreç içerisinde ortak olan bir konu var o da iş firmware upgrade’i yapmaya geldiğinde upgrade path’ini (sorunsuz geçiş için takip edilmesi gereken yol) gerçekten anlamış ve uygulamış olmanın gerekmesidir.
Peki bu upgrade path’i neden bu kadar önemli ?
Öncelikle upgrade’lerden beklentimiz bu geçişin sorunsuz yapılmasıdır. Sorunsuzluktan kastımız da tabiki 1000+ kural olan bir firewall’da geçiş sonrası konfigürasyonda kayıplar, eksikler veya hatalar oluşmaması ve cihazın performans olarak yeni sürüme uyumsuz olmamasıdır.
Şu anda çalışan ASA’lara baktığımızda üzerlerindeki code (versiyon) genellikle 7.x , 8.x ve 9.x ‘tir. Tabiki bütün ASA aileleri bu sürümlerin hepsini çalıştıramaz. Örneğin 5500-X olarak çıkan yeni nesil firewall’lar sadece 8.6 veya 9.x ile çalışabilirler (Daha eski sürümlerle çalışabilen 5585-X hariç). Ya da ilk ASA ailesi olan 5500 serisi modeline göre 7.x, 8.0, 8.1, 8.2, 8.3, 8.4 ve 9.x çalıştırabildiği gibi 8.5 , 8.6 veya 8.7 çalıştıramaz. Son olarak ASA 1000V olarak adlandırılan data center seviyesi cloud firewall sadece 8.7 versiyonu ile çalışır.
Upgrade yapacak ise bütün bu durumları bilmemiz gerekiyor. Aksi taktirde elimizdeki 5510 serisi firewall’umuzu 8.3’ten 8.7 ‘ye çıkarmak için saçımızı başımızı yolmamız an meselesi haline gelebilir 🙂
Peki bütün bu bilgileri nereden edineceğiz sorusuna cisco’nun hangi platform’da hangi code’u çalıştırmalıyız şeklinde verdiği matrix ile cevap verebiliriz.
Tablo1 – Code Uyumluluğu
ASA OS |
ASDM |
ASA Model |
|||||||
ASA 5505 |
ASA 5510, 5520, 5540 |
ASA 5550 |
ASA 5580 |
ASA 5512-X, 5515-X, 5525-X, 5545-X, 5555-X |
ASA 5585-X |
ASASM |
ASA 1000V |
||
ASA 7.0 |
ASDM 5.0.Recommended: 5.0(8). |
No |
YES |
No |
No |
No |
No |
No |
No |
ASA 7.1(1) |
ASDM 5.1.Recommended: 5.1(2). |
No |
YES |
No |
No |
No |
No |
No |
No |
ASA 7.1(2) |
ASDM 5.1(2) |
No |
YES |
YES |
No |
No |
No |
No |
No |
ASA 7.2 |
ASDM 5.2.Recommended: 5.2(4). |
YES |
YES |
YES |
No |
No |
No |
No |
No |
ASA 8.0(2) |
ASDM 6.0(2) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
No |
No |
No |
No |
No |
ASA 8.0(3) |
ASDM 6.0(3) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
No |
No |
No |
No |
No |
ASA 8.0(4) |
ASDM 6.1(3) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
No |
No |
No |
No |
No |
ASA 8.0(5) |
ASDM 6.2(3) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
No |
No |
No |
No |
No |
ASA 8.1(1) |
ASDM 6.1(1) and later.Recommended: 7.1(3). |
No |
No |
No |
YES |
No |
No |
No |
No |
ASA 8.1(2) |
ASDM 6.1(5) and later.Recommended: 7.1(3). |
No |
No |
No |
YES |
No |
No |
No |
No |
ASA 8.2(1) |
ASDM 6.2(1) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
No |
No |
No |
ASA 8.2(2) |
ASDM 6.2(5) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
No |
No |
No |
ASA 8.2(3) |
ASDM 6.3(4) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.2(4) |
ASDM 6.3(5) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.2(5) |
ASDM 6.4(3) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.3(1) |
ASDM 6.3(1) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
No |
No |
No |
ASA 8.3(2) |
ASDM 6.3(2) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
No |
No |
No |
ASA 8.4(1) |
ASDM 6.4(1) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.4(2) |
ASDM 6.4(5) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.4(3) |
ASDM 6.4(7) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.4(4.1)1 |
ASDM 6.4(9) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.4(5) |
ASDM 7.0(2) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.4(6) |
ASDM 7.1(2.102) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
No |
YES |
No |
No |
ASA 8.5(1) |
ASDM 6.5(1). |
No |
No |
No |
No |
No |
No |
YES |
No |
ASA 8.6(1) |
ASDM 6.6(1). |
No |
No |
No |
No |
YES |
No |
No |
No |
ASA 8.7(1.1)2 |
ASDM 6.7(1). |
No |
No |
No |
No |
No |
No |
No |
YES |
ASA 9.0(1) |
ASDM 7.0(1) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
YES |
YES |
YES |
No |
ASA 9.0(2) |
ASDM 7.1(2) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
YES |
YES |
YES |
No |
ASA 9.0(3) |
ASDM 7.1(3). |
YES |
YES |
YES |
YES |
YES |
YES |
YES |
No |
ASA 9.1(1) |
ASDM 7.1(1) and later.Recommended: 7.1(3). |
YES |
YES |
YES |
YES |
YES |
YES |
YES |
No |
ASA 9.1(2) |
ASDM 7.1(3). |
YES |
YES |
YES |
YES |
YES |
YES |
YES |
No |
Bu tabloya göre hareket ederek upgrade’i yapmamız sizce yeterli midir? Malesef hayır. Dikkat etmemiz gereken bir diğer konu daha var, o da cihazların üzerindeki memory (RAM) ile yeni code’un gereksinimi olan memory’i karşılamamız.
Tablo2 – Ram İhtiyacı
ASA Model | Internal Flash Memory (Default Shipping) | DRAM (Default Shipping) | |
Before Feb. 2010 | After Feb. 2010 (Required for 8.3 and Higher) | ||
5505 | 128 MB | 256 MB | 512 MB |
5510 | 256 MB | 256 MB | 1 GB |
5520 | 256 MB | 512 MB | 2 GB |
5540 | 256 MB | 1 GB | 2 GB |
5550 | 256 MB | 4 GB | 4GB |
5512-X | 4 GB | N/A | 4 GB |
5515-X | 8 GB | N/A | 8 GB |
5525-X | 8 GB | N/A | 8 GB |
5545-X | 8 GB | N/A | 12 GB |
5555-X | 8 GB | N/A | 16 GB |
5580-20 | 1 GB | 8 GB | 8GB |
5580-40 | 1 GB | 12 GB | 12 GB |
5585-X with SSP-10 | 2 GB | N/A | 6 GB |
5585-X with SSP-20 | 2 GB | N/A | 12 GB |
5585-X with SSP-40 | 2 GB | N/A | 12 GB |
5585-X with SSP-60 | 2 GB | N/A | 24 GB |
ASASM | 8 GB | N/A | 24 GB |
Her iki tablodaki bilgileri kullanarak elimizde şubat 2010 öncesi alınmış bir ASA varsa ve biz bunu 8.4’e upgrade etmek ister isek öncelikle Tablo1’e bakıp code için uyumluluğunu göreceğiz. Ardından da RAM ‘ini kontrol etmemiz gerekecektir.
ASAtest# show ver | i RAM
Hardware: ASA5510, 256 MB RAM, CPU Pentium 4 Celeron 1599 MHz
Görünüşe göre Tablo2 verileri bize bu cihazın RAM ‘inin 1GB’ya çıkarılması gerektiğini söylüyor. Buna göre mevcut donanım ile firmware upgrade ‘ini gerçekleştiremeyiz.
Upgrade path’inin neden önemli olduğunun tekrar altını çizdikten sonra nasıl olacağını konuşalım. Öncelikle bu konuda cisco’nun resmi olarak önerdiği yolu, yani üst seviyelere çıkmak için gereken versiyon geçişlerini izlemeliyiz. Bu yol bize tabiki code 7.0’dan 9.1’e sorunsuz geçeceğimizi söylemeyecek.
Bu noktada cisco’nun ASA’ların image’larını nasıl isimlendirdiği ile devam edelim. Image isimlerini şu şekilde göreceksiniz:
asaXYZ.bin
X: major release number
Y: minor number
Z: maintenance release number
Örneğin: asa841.bin
Şimdi kurallara geçelim:
- ASA’lar için 8.3 versiyonu bir nevi milat. ASA’ların çalışma prensipleri 8.3 öncesi ve sonrası diye ikiye ayrılıyor. Bu sürümde NAT ve ACL yapısı değişiyor.
- 8.3 veya sonrasına geçeceksek önerilen şekilde 8.2’ye geçiş yapmamız gerekiyor, diğer sürümlerden geçişi desteklemiyor.
- Tavsiyem öncelikle üstteki tablolara göz atıp sonrasında gerekirse cisco tarafındaki dökümanlara bakmanız yönünde olacaktır.Aynı major ve minor versiyonlara sahip versiyonlar arasında sorunsuz geçiş yapabiliriz. Örneğin: 8.4.1 ‘den 8.4.7’ye geçebiliriz.
- Bir minor release’den diğerine geçmek için arada minor release atlayamayız. Örneğin 8.0’dan 8.2’ye direk atlayamayız, arada 8.1’e geçmeliyiz.
- Bir major release’den diğerine geçmek için ilgili major release içerisinde en son minor release’de olmamız gerekiyor. Örneğin 7.x’ten 8.x’e geçmek için en son sürüm olan 7.2’de olmamız gerekiyor. 7.1’den 8.0’a geçemeyiz.
- 9.x’e geçmek için 8.3 veya 8.4 olmalıyız (5500 serisi için) ; 8.6 olmalıyız(5500-X serisi için)
Okuduğunuz için teşekkürler. Bir sonraki yazımızda görüşmek üzere.
One comment
Fortunately, just like upgrading IOS on a Cisco router , it s an easy, straightforward process that you can knock out in a few minutes.