Yönlendiricideki bağlantı noktası yönlendirmeyi ayarlamadan yerel bir web sunucusunu internetten * nasıl görünür hale getirebilirim?


12

(İleri teknoloji) dizüstü bilgisayarımda web siteleri geliştiriyorum ve çeşitli fiziksel konumlardan çalışıyorum.

Müşterilerin sitenin ilerlemesini test etmeleri için (veya ilgili amaçlar için) harici olarak görünür bir web sunucusuyla sürekli senkronizasyon zorluğunu kaydetmek istiyorum.Bu nedenle, dizüstü bilgisayarımın otomatik olarak herkese açık olmasını sağlamak için bir yol bulmaya çalışıyorum İnternetten, herhangi bir yerden görünür, bağlantı noktası yönlendirmeyi ayarlamak için yönlendiriciye erişimim olmasa bile (kahve dükkanlarından veya diğer genel kablosuz bağlantılardan).

DynDNS'i , kurmuş olduğum bir yönlendirici aracılığıyla alan adı seçimimi bir masaüstü sunucuya iletmek için zaten kullanıyorum ... ama dediğim gibi, bu masaüstü sunucusunu kullanma adımını not etmek istiyorum.

Ücretli ters proxy hizmetleri (bir hesap için aylık ücret talep) bu amaçla kullanılabilecek tescilli soket düzeyinde istemci / sunucu "ters proxy" yazılımı sağlayacağını umuyordum. Bir tane bulamıyorum. TeamViewer ve LogMeIn'i zaten benzer tescilli hizmetler sunuyorum. Aslında, bunu mümkün kılmak için LogMeIn Hamachi VPN'i kullanmaya çalıştım - masaüstümü (zaten internette görünür durumda) IP trafiğini VPN üzerinden birlikte 80 üzerinden dizüstü bilgisayarıma yönlendirerek. Ancak, Hamachi / Windows'u bu şekilde ayarlamak mümkün görünmüyor (ancak yanlış olabilirim).

Umarım bunu başarmanın basit ve sağlam bir yolu vardır.


Aslında Opera web tarayıcısını (Opera unite) kullanarak temel bir web sunucusu kurabilirsiniz, ancak bu sadece ihtiyaçlarınızı karşılamadığına inandığım HTML + JavaScript uygulaması durumunda bir çözümdür.
jakub.g

Şu anda işlevsel bir web sunucum var - Apache (Windows kurulumu için XAMPP'nin bir parçası olarak ayarlanmıştır). Bu web sunucusu iyi çalışıyor ve kalıcı bir yönlendiricinin arkasında masaüstümde çalışırken internetten görünür olmakta sorun yok, çünkü yönlendiricimde bağlantı noktası iletmeyi ayarladım. Bağlantı noktası yönlendirmeyi ayarlamak için yönlendiriciye erişimim olmadığında yerel web sunucumu internetten herkesin görebileceği bir yol bulmakla ilgileniyorum .
Dan Nissenbaum

Yanıtlar:


8

SSH'ye bağlanabileceğiniz bir sunucunuz varsa ve bu sunucu ilgili bağlantı noktalarında genel IP adreslerini dinlemenize izin verirse (ki onu kontrol ederseniz, SSHd'yi cygwin aracılığıyla yüklerseniz tanımladığınız masaüstü makinesi bile olabilir) veya benzeri) yerel sunucunuza trafik çekmek için SSH'nin tünel açma seçeneğini kullanabilirsiniz.

ssh root@your.server.tld -g -R 11.22.33.44:80:127.0.0.1:80Şuna benzer: 11.22.33.44'te (sunucunun genel bir adresi olduğu varsayılarak) bağlandıktan ve kimliği doğrulandıktan sonra 80 numaralı bağlantı noktasını yapar ve daha sonra yerel bağlantı noktanıza 80 yönlendirilen bağlantıları alır. Sunucuda GatewayPorts seçeneğinin etkinleştirilmesi gerekir localhost olmayan bir adresi bu şekilde dinlemek ve 1024'in altındaki bağlantı noktalarını dinlemek için kök olarak oturum açmanız gerekir ve bağlantı noktası 80'de zaten dinleyen bir hizmet varsa, yine de başka bir şey seçmeniz gerekir. -CSSH üzerinden akışların sıkıştırılmasını etkinleştirme seçeneğini eklemek , özellikle dizüstü bilgisayarı yavaş bir ağ üzerinden bağlarsanız (belki de yalnızca GPRS mobil bağlantısı ile hiçbir yerin ortasında sıkışmışsanız) önerilir.

Windows'ta ssh kullanmak için birkaç seçeneğiniz vardır. Cygwin'in bağlantı noktasını [o zaman yukarıda verdiğim komutun JustWork (tm) olması gerekir) kurabilir veya başka bir istemci kullanabilirsiniz. PuTTY çok popüler bir seçenektir ve uzak port tünellemesini destekler.

Bu şekilde, nereden bağlandığınıza bakılmaksızın, makinenizin web sunucusu da bağlandığınızda aynı adreste her zaman kullanılabilir olacaktır, bu nedenle atamak isteyebileceğiniz insan dostu adlar için dinamik DNS kullanmaya gerek yoktur (bağlandığınız sunucuyu varsayarak) sabit bir genel adresi var tabii ki).

Bunun için bir ev veya ofis sunucusu kullanmak yerine, her iki yönde de güzel bir hızlı bağlantınız olmadığı sürece işleri daha da yavaşlatabilir, sadece bir yerde (tercihen aynı ülkede) küçük bir Linux VPS kiralayarak daha iyi sonuçlar alabilirsiniz. Bu amaç. Yeterli bant genişliği olduğu sürece yalnızca en küçük makineye ihtiyacınız vardır, bu yüzden bu sadece ayda bir çift veya birkaç dolara mal olacaktır.

SSH'nin yanı sıra OpenVPN gibi bir VPN aracını da düşünebilir ve bağlantı kurulduğunda makinenize bağlantıları iletmek için sunucudaki basit iptables kurallarını kullanabilirsiniz. Bu, kurulumdan sonra daha verimli ve daha az güç olabilir, ancak zaten aşina değilseniz ve genel olarak yönlendiriyorsanız yapılandırmak için biraz ekstra güçlük olabilir. Yine ucuz bir VPS veya kendi ofis / ev sunucunuz VPN'nin sunucu sonu olarak yapacaktır.


+1: Ben sadece ssh tünellemesini önermek üzereydim, ama beni dövüyordun ve önyüklemek için sahip olduğumdan daha açık bir şekilde açıkladın.
Dave Sherohman

Mükemmel cevap, teşekkürler. Zaten WinSSHD (Bitvise'den - ücretli bir program) var, bu yüzden bunu kullanabilmeliyim. Verileri yönlendirmek için iptables kullanmaya çalışabilirim (başlangıçta bunu düşünürken, kafam karıştı çünkü verilerin yönlendiriciyle paylaşılan yerel ağdaki bilgisayara geldiğini biliyordum, ancak VPN ile paylaşılan yerel ağda değil - bu beni karıştırmamalıdır). Bir yönlendirici ile çalışan ve bir VPN ağına veri ileten gerekli iptable girişinin bir örneğini göndermek isteyen herkes en çok hoş karşılanır ve takdir edilir!
Dan Nissenbaum

1

IPV6 6 vekil bir ipv4 ile kombine dizüstü tünel, - gogo6 bir parçası olarak otomatik olarak güncelleyecektir bir müşteri ile bir güzel, ücretsiz servis var freenet6 -. Bunu AAAA kaydı ve ipv6'dan 4'e çeviren bir proxy ile birleştirin ( sixxs herkese açık olanı çalıştırır) veya daha zarif bir çözüm için, aynı A adresinde çalışan çeviriyi yapan kendi proxy sunucunuz ( polipo işe yarayabilir)

Düzgün bir şekilde ayarlandığında, bu, çoğu zaman sıçramaktan kaynaklanan hafif gecikme dışında, çoğunlukla şeffaf olmalıdır.

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.