İçeriğe geç
Eren Gaygusuz
Geri dön

AWS EC2 ile Sanal Makine Oluşturma ve Kullanma

Amazon EC2, bulut üzerinde sanal makine oluşturmak ve yönetmek için en sık kullanılan AWS servislerinden biridir. Bu yazıda Linux tabanlı bir EC2 instance oluşturmayı, EC2 Instance Connect ile tarayıcıdan bağlanmayı, Windows Command Prompt üzerinden SSH bağlantısı kurmayı ve Windows’ta karşılaşılabilen PEM dosyası izin hatasını düzeltmeyi ele alıyorum.

Örnekte ücretsiz katmana uygun bir Amazon Linux instance kullanılıyor. AWS arayüzü zaman içinde değişebilir, fakat temel akış aynı kalır: işletim sistemi imajı seçilir, key pair oluşturulur veya seçilir, instance başlatılır ve güvenli şekilde bağlanılır.

AWS EC2 sanal makine genel görünümü

İçindekiler

İçindekileri aç

EC2 Instance Oluşturma

Tarayıcıdan AWS Console’u açın. AWS hesabınızla giriş yaptıktan sonra arama çubuğunu kullanarak EC2 servisini bulun.

AWS Management Console ana ekranı

Bu ekranda AWS Console giriş ekranı adımını görüyoruz.

AWS Console giriş ekranı

Bu ekranda AWS Console içinde EC2 arama adımını görüyoruz.

AWS Console içinde EC2 arama

EC2 Dashboard ekranında instance oluşturma akışını başlatmak için Launch instance düğmesine tıklayın.

EC2 Dashboard Launch instance düğmesi

Instance için anlaşılır bir ad girin. Ardından Amazon Machine Image seçimini yapın. Bu örnekte ücretsiz katmana uygun olduğu için Amazon Linux seçiliyor.

EC2 instance adı ve Amazon Linux imajı seçimi

Temel bir deneme instance’ı için t2.micro gibi ücretsiz katmana uygun bir instance type seçebilirsiniz. Mimariyi 64-bit olarak bırakın. Daha sonra instance’a bağlanabilmek için yeni bir key pair oluşturun.

EC2 instance type ve key pair seçimi

Key pair için bir ad girin ve oluşturun. AWS, bilgisayarınıza bir .pem dosyası indirir. SSH bağlantısı için bu dosyaya ihtiyaç duyacağınız için güvenli şekilde saklayın.

Yeni EC2 key pair oluşturma

Bu ekranda İndirilen EC2 PEM key dosyası adımını görüyoruz.

İndirilen EC2 PEM key dosyası

Network settings bölümünde SSH erişiminin açık olduğundan emin olun. Öğrenme amaçlı bir kurulumda varsayılan ayarlar yeterli olabilir; gerçek ortamlarda inbound erişimi mümkün olduğunca daraltmak gerekir.

EC2 network settings ayarları

Storage ayarlarını kontrol edin ve instance’ı başlatın.

EC2 storage ayarları ve Launch instance düğmesi

AWS instance oluşturma işlemini tamamladığında başarı mesajı görünür.

EC2 instance oluşturma başarı mesajı

Tarayıcıdan Bağlanma

Instance listesine geri dönün. Yeni oluşturulan instance tabloda görünür. Instance state sütunundan durumunu takip edebilirsiniz.

EC2 instances listesinde yeni instance

Bu ekranda EC2 instance state sütunu adımını görüyoruz.

EC2 instance state sütunu

Instance detay sayfasını açın ve Connect düğmesine tıklayın.

EC2 instance detaylarında Connect düğmesi

Bağlantı penceresinde EC2 Instance Connect sekmesini seçin ve Connect ile devam edin.

EC2 Instance Connect sekmesi

Bağlantı başarılı olursa AWS tarayıcı içinde bir terminal oturumu açar. Instance’ın çalıştığını ve erişilebilir olduğunu hızlıca test etmek için bu yöntem oldukça pratiktir.

Tarayıcı terminali ile EC2 instance bağlantısı

Windows Üzerinden SSH ile Bağlanma

Yerel SSH bağlantısı için key pair oluştururken indirilen PEM dosyasına ihtiyacınız vardır. Bu örnekte dosyanın masaüstünde olduğu varsayılıyor. Command Prompt’u yönetici olarak açın.

Windows Command Prompt'u yönetici olarak açma

PEM dosyasının bulunduğu klasöre geçin. Dosya masaüstündeyse komut şu şekilde olur:

cd C:\Users\USERNAME\Desktop

Bu ekranda Command Prompt içinde Desktop klasörüne geçme adımını görüyoruz.

Command Prompt içinde Desktop klasörüne geçme

EC2 instance detay sayfasına geri dönün ve Public IPv4 DNS değerini kopyalayın.

EC2 Public IPv4 DNS adresini kopyalama

SSH komutu dört parçadan oluşur:

Örnek komut şu şekildedir:

ssh -i ExampleInstance.pem ec2-user@ec2-XX-XX-XXX-XXX.eu-central-1.compute.amazonaws.com

Komutu çalıştırdıktan sonra terminal EC2 instance’a bağlanır.

Command Prompt üzerinden EC2 instance SSH bağlantısı

Windows’ta PEM Dosyası İzin Hatasını Düzeltme

PEM dosyası farklı bir klasörde duruyorsa veya dosya üzerinde geniş devralınmış izinler varsa SSH bağlantısı UNPROTECTED PRIVATE KEY FILE uyarısıyla reddedilebilir. Bu durumda Windows dosya izinlerini daraltıp key dosyasını yalnızca kendi kullanıcınızın okuyabileceği hale getirmeniz gerekir.

SSH unprotected private key file uyarısı

PEM dosyasına sağ tıklayın ve Properties seçeneğini açın.

PEM dosyası Properties seçeneğini açma

Security sekmesine gidin ve Advanced düğmesine tıklayın.

PEM dosyası Security sekmesi ve Advanced düğmesi

Inheritance ayarını kapatın ve dosyadan devralınan izinleri kaldırma seçeneğini seçin.

PEM dosyasında inherited permissions kapatma

Windows kullanıcınız için yeni bir permission entry ekleyin.

Yeni permission entry ekleme

Select a principal bağlantısına tıklayın.

Select a principal bağlantısı

Windows kullanıcı adınızı girin ve Check Names ile doğrulayın. Windows kullanıcıyı bulduğunda OK ile devam edin.

PEM dosyası izinleri için Windows kullanıcısı seçme

Yalnızca gerekli okuma izinlerini bırakın. Bu örnekte Read & execute ve Read izinleri seçiliyor.

PEM dosyası için Read izinleri

İzin değişikliklerini uygulayın ve pencereleri kapatın.

PEM dosyası izin değişikliklerini uygulama

Son durumda PEM dosyasında yalnızca ihtiyaç duyulan sınırlı izinler görünmelidir.

PEM dosyası izinlerinin son hali

PEM dosyasının bulunduğu klasörden SSH komutunu tekrar çalıştırın. Bu kez bağlantı başarılı olmalıdır.

PEM izinleri düzeltildikten sonra başarılı SSH bağlantısı

Özet

Bu akışta EC2 üzerinde Amazon Linux instance oluşturduk, PEM key pair ürettik, instance’a tarayıcı üzerinden bağlandık ve Windows üzerinden SSH bağlantısı kurduk. Ayrıca Windows’ta sık görülen PEM izin uyarısını, devralınmış izinleri kaldırıp dosyayı yalnızca mevcut kullanıcının okuyabileceği şekilde düzenleyerek çözdük.

Denemeleriniz bittiğinde instance’ı daha sonra kullanacaksanız durdurmayı, artık ihtiyacınız yoksa tamamen silmeyi unutmayın. EC2 instance’larını açık bırakmak beklenmeyen maliyet oluşturabilir.


Bu yazıyı paylaş:

Yorumlar


Önceki Yazı
Unity Asset Store Paketlerini Başka Bir Klasöre İndirme
Sonraki Yazı
ASP.NET Core Web API'yi AWS EC2 Üzerinde Yayınlama