EC2 örneğindeki siteye herkese açık ip üzerinden erişilemiyor


10

Pencere 2008 sunucusu ile Amazon EC2 mikro örneği var ve orada java kullanan ve tomcat 7 sunucusuna dağıtılan bir örnek web uygulaması dağıttım. Örneğin yerel olarak erişebiliyorum, ancak AWS örneği dışında erişmeye çalıştığımda ev bilgisayarımdan AWS genel DNS / genel IP adresi / örneğin Elastik IP adresini kullanarak diyelim ki "Web sayfası müsait değil".

Ben bu forumda çok benzer sorulardan geçti ve ben yapmak istedikleri tüm ayarı yaptık düşünüyorum, ama yine de başarı.

İşte yaptığım / onayladığım.

1. localhost çalışır, bu yüzden uygulama 80 numaralı bağlantı noktasını dinler.

2. örneğimin kullandığı güvenlik grubu altındaki herkes için 80 numaralı bağlantı noktasına HTTP için gelen kuralı ekledi.

3. 80 numaralı bağlantı noktasında engellenmediğinden emin olarak Windows örneğindeki güvenlik duvarı ayarını kontrol edin.

4. hatta güvenlik duvarını kapatmak ile çalıştı, ama başarı.

Bazıları bana bu konuda yardımcı olabilir eğer gerçekten takdir ediyorum.

Teşekkürler, NS


1
Telnet size ne anlatıyor ve iz kullanıyor?
Pratap

Yanıtlar:


5

Windows Server 2012 ec2 örneğine JetBrains YouTrack yüklediğimde benzer bir sinir bozucu sorun yaşadım. Benim için işe yarayan, java'nın özel olarak kullandığı Windows güvenlik duvarı bağlantı noktalarını açmak ve World Wide Publishing hizmet bağlantı noktasını devre dışı bırakmaktı. Ayrıca YouTrack hizmetini, varsayılan hesap yerine LocalSystem hesabı altında çalıştırmak zorunda kaldım.

Bunu dene:

  • Kullanımdaysa IIS'de varsayılan web sitesini kapatın

  • Java.exe'nin bağlanmaya çalıştığı bağlantı noktalarını keşfetmek için bir netstat -a -b komutunu çalıştırın :

    TCP 0.0.0.0:80 WIN-9NFIG6IEPT6: 0 DİNLEME [java.exe]

    TCP 127.0.0.1:49306 WIN-9NFIG6IEPT6: 49307 KURULDU [java.exe]

  • Hizmet denetim yöneticisini açın ve hizmetinize sağ tıklayın ve özellikler iletişim kutusunu açın. Farklı Oturum Aç sekmesinde , hizmetin çalıştığı hesap olarak Yerel Sistem Hesabı'nı seçin . Bu kullanıcının Yönetici olması önemlidir

  • Güvenlik duvarını tekrar açmanızı şiddetle tavsiye ederim.
  • Güvenlik duvarı Gelen kuralları sekmesini açın ve World Wide Web Hizmetleri (HTTP-In) Kuralını devre dışı bırakın
  • Tomcat için TCP Port 80 ve ihtiyaç duyabileceği diğer herhangi bir port ile yeni bir kural oluşturun.

  • Kuralı kaydedin ve URL'nizi sunucunun dışından test edin.


4

Güvenlik duvarı ayarını tamamen kapatmamalısınız. Bu, uygulamanızın güvenliğini tehlikeye atar. Bunun yerine, belirli bağlantı noktalarında gelen trafiğe izin vermek için Windows sunucusu gelen güvenlik duvarı kurallarını değiştirin.

Windows 2012 sunucusunda TomS 8 üzerinde AWS EC2 aracılığıyla sağlanan bir uygulamayı dağıttığımda da benzer bir sorun yaşadım. Http: // localhost: 8080'de dağıtılan uygulamaya VM içinden erişebilirim, ancak URL'deki string localhost'u VM'nin genel IP adresiyle değiştirdikten sonra genel internetten erişemedim .

Güvenlik duvarı kurallarını, bağlantı noktası 80 (http için), bağlantı noktası 443 (https için) ve bağlantı noktası 8080'de (bu, web uygulamamın tomcat sunucusunda varsayılan olarak dağıtıldığı bağlantı noktası) değiştirmek için değiştirdikten sonra iyi çalıştı.

Güvenlik duvarı ve güvenlik grubu yapılandırmalarını aşağıdaki bağlantıda belgeledim:

http://abhirampal.com/2015/08/04/firewall-config-for-java-web-app-hosted-on-aws-ec2-windows-2012-server/


1
Harika, günümü kurtardın <3
Thamaraiselvam

1

Muhtemelen web sunucusunu yanlış yapılandırdınız. Bunu sunucuya şu yolla bağlanarak test edebilirsiniz:

telnet $IP 80

hata almıyorsanız bağlanabilirsiniz. Bu durumda, web sunucusunu doğru şekilde ayarlamadınız.


Haklısın, yerel bilgisayarımdan aws örneğine telnet üzerinden bağlanamıyorum. Lütfen bana nasıl düzeltebilirim? IIS'yi aws örneğinde aramayı denedim ve çalışıyor.
user242725

Teşekkürler. Etki alanı, özel ve genel güvenlik duvarını kapattıktan sonra çalıştı. Ancak emin değilim, örneği nasıl güvenceye alabilirim ve aynı zamanda web uygulamama örnek dışında erişebilirim.
user242725 18:30

1

Örneğin için AWS Güvenlik Grubuna Gelen TCP bağlantı noktası 80 için bir kural girilmesi gerekebilir.


1

AWS konsolundan herkese açık aramaları dinlemek için bağlantı noktasını kullanılabilir hale getirmeniz gerekebilir.


AWS konsolunda birçok özellik var, belki daha spesifik olabilirsiniz.
kmarsh


1

Benim için iki şey:

  1. Trafiğe girip çıkmaya izin vermek için RDS örneğime eklenen Güvenlik grubunun değiştirilmesi

  2. Uygulama bağlantı noktası için RDS'de gelen ve giden kuralları ayarlama

Ayrıntılı adımlar:

  • AWS konsolunuzun üst çubuğunda Hizmetler'i tıklayın, EC2'yi seçin

  • Bir sonraki pencerenin sol menüsünde, örnekler altında, örneklerinizi görüntülemek için örnekleri tıklayın

  • Genelden erişmek istediğiniz örneği içeren tabloda, Güvenlik Grupları adlı bir sütuna sağa kaydırın. Bu güvenlik grubunu tıklayın.

  • Görüntülenen tabloda, güvenlik grubunun ve Gelen, Giden, Etiketler gibi diğer sekmelerin açıklamasını içeren en altına gidin
  • Gelen sekmesini tıklayın. Düzenle'yi tıklayın. Varsayılan olarak bir kural (RDP) vardır.
  • İki tane daha ekleyelim
  • Kural Ekle düğmesini tıklayın.
  • Tür için Tüm Trafik, Protokol İçin Tümü
  • Bağlantı noktası aralığını (0 - 65535) bırakın, kaynağı Özel olarak seçin.
  • Bütün bunlar her iki kural için de geçerlidir 2) İlk kural için, kaynaktan sonra görünen metin kutusuna 0.0.0.0/0 değerini koyun 3) İkinci kural için: :: / 0 4)
  • Kaydet'i tıklayın

    Yangın duvarından gelen ve giden kuralları ayarlamak için şimdi AWS RDS'nize giriş yapın

  • Kontrol panelini başlatın. Sistem ve Güvenlik'e (ilk olabilir) tıklayın ve Windows Yangın duvarına tıklayın. Ardından Gelişmiş Ayarlar'ı tıklayın

  • Soldaki Gelen Kuralları menüsünü tıklayın.

  • İşlemler sekmesinde (sağda) Yeni Kural'ı tıklayın

  • Port'u seçin ve İleri'ye tıklayın

  • TCP'yi (seçili değilse) seçin ve altında Belirli yerel bağlantı noktalarını seçin.

  • Alanınıza uygulamanızın bağlantı noktası numarasını girin ve ileri'yi tıklayın.

  • Bağlantıya izin ver'i seçin ve İleri'ye tıklayın.

  • Kural adını belirtin. Okunabilirlik amaçları ve tıklama sonlandırması için uygulamanızın adı gibi bir şey

Sonra devam eden trafiği yapılandıralım

  • Gelen Kuralları ile aynı menüde, Giden kuralları'nı seçin ve gelen kurallar için açıklanan prosedürün aynısını uygulayın.
  • Bu ayarlardan sonra uygulamanıza dışarıdan erişebilmeniz gerekir

0

Lütfen bağlantıya bakın .. Daha spesifik olurdu.

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html

Bu güvenlik grubuyla ilişkili tüm örnekler arasında veya başka bir güvenlik grubuyla ilişkili örnekler ile bu güvenlik grubuyla ilişkili örnekler arasında iletişime izin verebilirsiniz. Kural Ekle'yi tıklatın, Tüm ICMP'yi seçin, ardından Kaynak'ta güvenlik grubunun kimliğini yazmaya başlayın; bu size güvenlik gruplarının bir listesini sağlar. Listeden güvenlik grubunu seçin. TCP ve UDP protokolleri için aynı adımları tekrarlayın. İşiniz bittiğinde Kaydet'i tıklayın.


0

Bu çoğunlukla Windows Güvenlik Duvarı ile ilgili bir sorundur. Yaptığın aynı adımları denedim, başarılı olmadı. Güvenlik duvarını çevirdiğim an iyiydi. Gelen giden kuralları yapılandırdığımız için güvenliğin etkilenmemesi gerektiğini düşünüyorum.


-1

WINDOWS Örneği - EC-2 Örneği adını sağ tıklatın, Örnek oluşturma sırasında oluşturulan .pem dosyasına göz atın ve Şifrenin şifresini çöz'ü tıklatın. Bağlanmak için kullanıcı adını ve şifreyi Başlat -> Çalıştır -> mstsc -> Yönetici olarak Windows Kimlik Doğrulaması ile Windows IP ve şifresi ile alacaksınız.

LINUX Örneği için -> Puttygen'i indirin ve .pem dosyasını seçmek için LOAD düğmesine tıklayın ve sonra bir ppk dosyası oluşturmak için GENERATE düğmesine tıklayın. Macun aracılığıyla IP'yi girin ve .ppk dosyasını seçmek ve macun oturumlarını kaydetmek için Bağlantılar -> SSH -> YAZ -> Gözat öğelerine girin.


Soru "SSH anahtarımla nasıl giriş yaparım" olsaydı bu harika bir yanıt olurdu. Ancak soru "tarayıcımdan bir web sayfasına nasıl erişebilirim" idi.
Jenny D
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.