Object grouping ile Policy Dynamic PAT

Object-grouping özelliğini dynamic nat senaryolarındaki policy’lerimizi oluşturan access-list’lerimiz içerisinde kullanırsak listelere dinamiklik ve kolaylık kazandırabilmemiz mümkündür.Ağımızda bulunan 10 adet makinenin 10 adet farklı ip adresine giderken farklı bir ip adresine (mesela 192.168.1.111) “many-to-one nat” yani operasyonel olarak “PAT (port adress translation) yapmak istiyorsanız, 10×10=100 adet ACE (access list entry) oluşturmanız gerekmektedir.Fakat object-grouping ile nesnelerimizi gruplandırdıktan sonra kolay bir şekilde yapılandırmamızı tamamlayarak group içerisindeki nesnelerin kombinasyonlarını yapmak için ASA bize yardımcı olacaktır.Protokol,kaynak adres,hedef adres ve port bilgileri yerine object group nesneleri kullanılabilmektedir.

object-group network rbb_interfaces
network-object host 192.168.1.1
network-object host 172.26.26.1
object-group service management_servisleri tcp
port-object eq ssh
port-object eq telnet
port-object eq www
port-object eq https

access-list management_nat_to_rbb extended permit tcp host 10.0.1.11 object-group rbb_interfaces object-group management_servisleri

global (outside) 2 192.168.1.111 netmask 255.255.255.0
nat (inside) 2 access-list management_nat_to_rbb

show nat
tüm nat kurallarinin kombinasyonlarini gösterir (mesela object group ile yaptiysak her object için tüm kombinasyonları yaparak tek tek gösterir)

show nat inside outside
inside tan outside a olan nat kurallarini gösterir.

Share
Cisco Security kategorisine gönderildi | , , , ile etiketlendi | Yorum yapın

ASDM packet tracer aracının CLI üzerinden kullanımı

Asa cihazların cli ekranı üzerinden source’lu ping atılamamaktadır ve çoğu zaman işimizi zorlaştırabilmektedir.Bu durumu çözebilmek için ASDM üzerinde packet tracer isimli tool sayesinde, paketlerimizin ilgili source’tan ilgili kaynağa ulaşana kadar başına başına gelebilecek durumları ve uygulanacak action’u görebilmekteyiz.

Eğer cihazımıza ASDM erişim yetkimiz yok ise sıkıtıya gerek yok, çünkü aynı detayları cli üzerinden de detaylı bir şekilde alabilmemiz mümkündür.Aşağıdaki komutu kullanarak paketinizi kolay bir şekilde simule edebilirsiniz.

packet-tracer input inside icmp 10.0.1.11 0 8 192.168.1.1 detailed
komut sayesinde “inside” isimli interface üzerinde bulunan “10.0.1.11” ip adresli pc’nin “192.168.1.1” ip adresli backbone router’a “echo” paketi yolladığında oluşacak durumu görüntüleyebiliriz.

Share
Cisco Security kategorisine gönderildi | ile etiketlendi | Yorum yapın

IPS eğitimi gns3 lab topolojisi

IPS eğitimlerinde kullanmak üzere tasarlamış olduğum, tüm eğitim lab guide içerisindeki uygulamaların sorunsuz yapılabildiği ve lab guide ile uyumlu topolojiyi sizlerle paylaşmak istiyorum.Eğer student pc üzerine iev (ips event viewer) yerine IME (ips manager express) kuracak olursanız IPS 7.0 müfredatına uygun olarak birçok konu işlenebilmektedir.GNS üzerinde hali hazırda 6.0 ios’u koşturulabilmektedir fakat ips sensor yazılımının advanced mod ile açılarak yeniden derlenmesi gerekmektedir.

IPS başlangıç ekranı ise aşağıdaki gibidir.

Share
Cisco Security kategorisine gönderildi | ile etiketlendi | Yorum yapın

Asa Object Grouping kullanımı

Kalabalık networkler üzerinde access-list veya access-list kullanan bir yapılandırma sağladığımızda (örn policy nat), her ip adresi için ayrı rule tanımlamaları (ACE) yapmalıyız.Böyle bir yapılandırma çoğu zaman zamanımızdan ciddi bir dilim çalabilmektedir.Sık kullandığımız veya aynı access-list’e maruz kalacak kaynaklar için gruplama işlemi yapılarak dinamik ve tek satırlık konfigurasyonlar yapılabilmektedir.Dinamik bir şekilde access-list’lerimizi belirtirken protokol, kaynak ip, hedef ip ve port numaraları kısımlarında bu gruplar kullanılabilir.

Host veya subnetlerimizi gruplamak için;
object-group network INSIDENETWORK
network-object 10.0.1.0 255.255.255.0
network-object host 10.0.1.10
network-object host 10.0.1.11

icmp paketlerimizi gruplamak için;
object-group icmp-type PING
icmp-object echo
icmp-object echo-reply

servislerimizi ve port aralıklarımızı bir arada gruplamak için;
object-group service SERVISLER
service-object icmp echo
service-object tcp eq www
service-object udp range 1002 1006
service-object tcp source range 2000 3000

belirli bir protokol üzerinden çalışan servisleri gruplamak için;
object-group service SERVER-SERVICES tcp
port-object eq https
port-object range 137 netbios-ssn
port-object eq http

komutları kullanılabilmektedir.

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

Asa domain-lookup komutu ve dns server olarak yapılandırılması

Asa cihazını hostlarımıza dns server olarak tanıtabilmemiz mümkündür.Eğer asa üzerinde yazılan URL adreslerine ping atmak ve diğer isim çözümlemelerini yaptırmak istiyorsak aşağıdaki komutu girmeliyiz.
dns domain-lookup inside
Asa’nın inside bacağı üzerinden domain sorgulama işlemini yapmasına izin verir.

dns server-group DefaultDNS
domain-name snaa.lab
name-server 8.8.8.8
retries 5
timeout 10

Dns server grubu oluşturarak içerisine server adresini,resolve deneme sayısını,timeout ve domain bilgisini tanımlayarak yapılandırmamızı bitirebiliriz.

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

Asa üzerinde Name komutu kullanımı

Name komutu sayesinde access-list ve ip yapılandırması içeren konfigurasyon çıktılarında ip yerine ilgili host ismi görüntülenerek kolay anlaşılması sağlanabilmektedir.

name 10.0.1.10 coserver
Routerlerdaki “ip host” komutu yerine asa’larda “name” komutu kullanılmaktadır.

ping coserver komutu ilede kolayca kullanılabilmektedir.

no names komutu sayesinde mevcut name tanımlamalarını silmeden running-config çıktılarında name tanımlamaları yerine ip adreslerinin gözükmesini sağlayabiliriz.Config mod içinde Names yazarak yeniden ip’lerin gizlenmesi sağlanabilir.

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

ASA üzerinde SSH v2 ve telnet yapılandırması

Asa firewall ailesinde outside interface üzerinden telnet atılamaz, sadece SSH bağlantıları kabul edilmektedir.Yapılandırma için “line vty” gibi komutlar mevcut değildir ve direkt olarak configure mod içerisinde yapılandırma sağlanabilir.Protokoller yapılandırdıktan sonra herhangi bir bağlantı isteğini kabul etmemektedir ve isteklerin geleceği kaynaklar özellikle belirtilmelidir.SSH,telnet,icmp ve http gibi protokoller için isteklerin geleceği ip ve interface belirtildikten sonra aksini iddia eden bir permit ACL yazmaya gerek yoktur.

passwd telnet123 (telnet şifresi tanımlanır)
telnet timeout 15 (telnet ile bağlanan kullanıcılar için exec-timeout değeri isteğe bağlı olarak tanımlanabilir.)
telnet 10.0.1.10 255.255.255.255 inside (telnet hizmeti ile hangi host veya subnetlerin bağlanacağını belirtebilirsiniz.)

crypto key generate rsa modulus 2048 (RSA key yaratmak için kullanılır ve SSH için minimum 768 bit bir key gereklidir.)
ssh timeout 30 (ssh ile bağlanan kullanıcılar için exec-timeout değeri isteğe bağlı olarak tanımlanabilir.)
ssh 192.168.1.1 255.255.255.255 outside (hangi interface’ler üzerinden hangi hostların veya subnetlerin bağlantı için izinli olacağını belirtiyoruz.)
ssh 10.0.1.10 255.255.255.255 inside

ssh version 2 (Sadece SSH v2 isteklerinin kabul edilmesi için girilmektedir.)
username koray password koray priviliege 15 (Admin yetkisine sahip bir kullanıcı hesabı oluşturuyoruz.)
aaa authentication ssh console LOCAL (Eğer authentication istekleri yetkilendirilmez ise kullanıcı şifresi istenecek fakat girmiş olduğumuz local username’leri kabul etmeyecektir.)

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

Asa ios upgrade

Yeni ioslarınızı asa üzerine birçok yöntemle transfer etmeniz mümkündür.Eğer diskinizde birden fazla ios versiyonu mevcut ve sistemin hangi ios versiyonu ile açılacağını elle belirtmek istiyorsanız aşağıdaki komutu kullanabilirsiniz.
boot system disk0:/asa821-k8.bin

show bootvar
komutu ile sistemin hangi ios ile başladığını ve bir sonraki açılışta ne ile başlayacağını görüntüleyebiliriz.

show version ile mevcut çalışan ios versiyonu, çalışma süresi ve config-register değeri gözlemlenebilmektedir.

show inventory ise bize altyapı ile ilgili bilgi vermektedir.

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

ASA SNAF/SNAA Security eğitimi lab topolojisi

ASA Firewall eğitimlerinde kullanmak üzere GNS üzerinde çizimini yaptığım, cisco lab guide ve dökümanlarıyla uyumlu, ders içerisinde aynı topolojiyi gerçek cihazlarda sağlayarak uygulama yaptığımız diyagram aşağıdadır.Yine aynı şekilde cihazlar üzerinde uygulanmış halinide aşağıda bulabilirsiniz.GNS vb. uygulamalar kullanarak sizde kendi labınız üzerinde denemelerinizi ve testlerinizi yapabilirisiniz.

ASA’lar üzerinde görüntüsü ise aşağıdaki gibidir.En üstte duran yeşil kutu ASA5505, onun altındaki terminal server ise console bağlantısı ile cihazlara ulaşabilmek için kullanılmakta, terminal server’in altındaki 3560 L3 switch backbone’dur, en alttaki iki cihaz ise ASA5510 modelleridir.Bu topoloji ile VPN,Firewall,High availability,Virtual context,Transparent firewall gibi senaryoların hepsini uygulamanız mümkün fakat lisanslarda “security plus lisans” kullanmak zorundasınız.Hatta cihazlarda SSM modül var ise IPS ve Content security bile çalışabilmek mümkündür.

Share
Cisco Security kategorisine gönderildi | , ile etiketlendi | Yorum yapın

ASA üzerinde Regular static PAT ile port forwarding

IPv4 tabanlı networkümüzde private ip’ye sahip hostlarımızı internet tarafından belirli portlardan gelen istekler için erişilebilir hale getirmek istiyorsak nat ile port forwarding tekniğini kullanabiliriz.Mesela DMZ bölgesinde bulunan server’lerimizi (örn. webserver,ftp server vb.) gerçek dünyaya yayınlamak istiyorsak bu tekniği kullanabiliriz.Önce source interface ve destination interface belirttikten sonra ip adreslerimizi belirtirken, önce destination (global) ip adresini ve portunu daha sonra ise, source (private) ip ve port belirtilerek yapılandırma tamamlanmaktadır.

static (inside,ourside) tcp 192.168.1.100 80 10.0.1.10 80 netmask 255.255.255.255 tcp 0 0 udp 0 norandomseq

Satır sonunda bulunan “tcp 0” ve “udp 0” bu protokoller için bağlantı limitlerinin sınırsız olduğu anlamına gelmektedir ve opsiyonel olarak eklenebilir.Ortada tek olarak duran “0” ise “embryonic” (half-open) yani tcp için “3-way-handshake” işlemini tamamlamamış kaç adet bağlantıya izin vereceğimizi burada belirtebilmekteyiz.Syn flood ataklarını engellemek için, networkümüzde gerekli analizler yapıldıktan sonra bu sayı limitlendirimelidir.Komutun en son kısmındaki norandomseq ise ASA’nın üzerinde default’ta security amaçlı açık olan “tcp sequence number randomization” özellğini bu nat kuralı için pasif hale getirmektedir.Bu özelliği pasif yapmaktaki amacımız bazı uygulamaların iletişiminde sıkıntı yaşamamak içindir.

show xlate komutu ile nat translation table içerisindeki statik ve dinamik girdilerin gözükmesi sağlanabilir.

clear xlate komutu ise translation table’daki tüm dinamik ve yapılandırması kaldırılmış static natları temizlemeye yarar fakat bu çoğu zaman aktif networklerde sıkıntı çıkaracaktır.Eğer biz yalnızca istediğimiz girdiyi translation table içerisinden kaldırmak istiyorsak aşağıdaki komutu kullanabiliriz.

clear xlate interface inside global 192.168.1.100 netmask 255.255.255.255 gport 80

Son olarak “outside” interface üzerine “in” yönünde “any” ‘den 192.168.1.100 ip adresine tcp ile “80” portuna gelişine izin veren bir access rule yazmamız gerekecektir, aksi takdirde yayınladığımız porta kimse ulaşamaz.

Share
Cisco Security kategorisine gönderildi | , , ile etiketlendi | Yorum yapın