NAT ve Bastion Host Kavramı

Bastion Hosts

  • Bastion Host kullanarak özel EC2 instance'larımıza SSH ile bağlanabiliriz

  • Bastion, genel (public) subnet içinde bulunur ve diğer tüm özel (private) subnet'lere bağlıdır

  • Bastion Host'un güvenlik grubu, internetten gelen trafiğe 22 numaralı porttan (SSH) izin vermelidir (sınırlı bir CIDR aralığından, örneğin şirketinizin public CIDR bloğundan)

  • EC2 instance'larının güvenlik grubu, Bastion Host’un güvenlik grubuna veya Bastion Host’un özel IP’sine (private IP) erişime izin vermelidir.

Bastion Host Erişim Grafiği

Sonuç: EC2' sunucularının Kaynağını Bastion Host'un Security Groupu yaparak işlemi kolaylaştırabiliriz.

NAT (Eski Teknoloji):

  • NAT = Ağ Adresi Çevirisi (Network Address Translation)

  • Özel subnet’lerdeki EC2 instance’larının internete bağlanmasını sağlar

  • Genel (public) bir subnet’te başlatılmalıdır

  • EC2 ayarı olan "Source / destination check" devre dışı bırakılmalıdır

  • Elastic IP ile ilişkilendirilmiş olmalıdır

  • Yönlendirme tabloları, trafiğin özel subnet’lerden NAT instance’ına yönlendirilmesi için yapılandırılmalıdır

Bir NAT Trafik Grafiği

NAT Sunucusu

  • Önceden yapılandırılmış Amazon Linux AMI mevcuttur

    • Standart destek süresi 31 Aralık 2020 tarihinde sona ermiştir

  • Kutudan çıktığı haliyle yüksek erişilebilirlik / dayanıklılık sunmaz

    • Çoklu AZ'de (Availability Zone) bir ASG (Auto Scaling Group) + dayanıklı bir user-data betiği oluşturmanız gerekir

  • İnternet trafiği bant genişliği kullanılan EC2 instance tipine bağlıdır

  • Güvenlik gruplarını ve kuralları sizin yönetmeniz gerekir:

    • Gelen trafik (Inbound):

      • Özel subnet’lerden gelen HTTP / HTTPS trafiğine izin verin

      • Kendi ağınızdan SSH erişimine izin verin (erişim Internet Gateway üzerinden sağlanır)

    • Giden trafik (Outbound):

      • İnternete HTTP / HTTPS trafiğine izin verin

NAT Gateway (NATGW)

  • AWS tarafından yönetilen NAT, daha yüksek bant genişliği, yüksek erişilebilirlik ve yönetim gerektirmez

  • Kullanım ve bant genişliği başına saatlik ödeme yapılır

  • NAT Gateway belirli bir Erişilebilirlik Bölgesinde (Availability Zone) oluşturulur, bir Elastic IP kullanır

  • Aynı subnet’teki EC2 instance'ları tarafından kullanılamaz (sadece diğer subnet’lerden erişilebilir)

  • Bir IGW (Internet Gateway) gerektirir (Özel Subnet => NAT Gateway => Internet Gateway)

  • 5 Gbps başlangıç bant genişliği ile otomatik olarak 100 Gbps’ye kadar ölçeklenebilir

  • Yönetilecek veya tanımlanacak bir güvenlik grubuna gerek yoktur

NATGW İşlemini tasfir eden bir Diyagram

Yüksek Erişilebilir NATGW

  • NAT Gateway, tek bir Availability Zone (AZ) içinde dayanıklıdır

  • Hata toleransı (fault-tolerance) için birden fazla AZ'de birden fazla NAT Gateway oluşturmanız gerekir

  • AZ'ler arası (cross-AZ) failover gerekmez, çünkü bir AZ devre dışı kalırsa NAT’a ihtiyaç kalmaz

NATGW vs NAT Instance

Özellik
NAT Gateway
NAT Instance

Erişilebilirlik

AZ içinde yüksek erişilebilirlik (başka bir AZ’de yeniden oluşturulmalı)

Instancelar arasında failover için script gerekir

Bant Genişliği

100 Gbps’ye kadar

EC2 instance türüne bağlı

Bakım

AWS tarafından yönetilir

Siz yönetirsiniz (örn: yazılım, işletim sistemi yamaları vb.)

Maliyet

Saatlik + aktarılan veri miktarına göre

Saatlik, EC2 türü + boyutu + ağ maliyeti

Genel IPv4

Özel IPv4

Security Groups

❌ (Gerekmez)

Bastion Host Olarak Kullanılabilir mi?

Last updated