“Yerel port yönlendirme” ve “dinamik port yönlendirme” arasındaki fark nedir?


14

"Yerel bağlantı noktası yönlendirme" ve "dinamik bağlantı noktası yönlendirme" arasındaki farkı anlamaya çalışıyorum.

"Yerel bağlantı noktası yönlendirme" için ssh komutunda, her zaman hedef ana bilgisayarı belirtmek gerekir mi?

"Dinamik bağlantı noktası yönlendirme" içindeki "dinamik", "dinamik bağlantı noktası yönlendirme" için ssh komutunda hedef ana bilgisayarı belirtmeye gerek olmadığı anlamına mı geliyor? evet ise, varış yeri ne zaman belirtilir?


Yanıtlar:


15

Evet, yerel yönlendirmeyi kullanırken bir hedef IP ve bağlantı noktası belirtmeniz gerekir. Gönderen man ssh:

 -L [bind_address:]port:host:hostport
         Specifies that the given port on the local (client) host is to be
         forwarded to the given host and port on the remote side.

Açıkçası, sadece bağlama adresi isteğe bağlıdır.

Hayır, dinamik yönlendirme kullanırken bir hedef ana bilgisayar veya bağlantı noktası belirtemezsiniz. Dinamik iletmede SSH, bir SOCKS proxy'si gibi davranır. Yine manpage'den (vurgu mayın):


 -D [bind_address:]port
         Specifies a local “dynamic” application-level port forwarding.
         This works by allocating a socket to listen to port on the local
         side, optionally bound to the specified bind_address.  Whenever a
         connection is made to this port, the connection is forwarded over
         the secure channel, and the application protocol is then used to
         determine where to connect to from the remote machine.  Currently
         the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
         as a SOCKS server.

-LSSH ile trafiği anlama girişiminde bulunmaz. Sadece yerel bağlantı noktasında aldığı her şeyi hedef bağlantı noktasına gönderir - bağlantının yapıldığı sırada hedef bağlantı noktasını siz belirlersiniz. İle -D, SSH bir proxy sunucusu gibi davranır ve bu nedenle birden çok bağlantı noktasından bağlantıları işleyebilir (örneğin, SOCKS proxy'si olarak kullanmak üzere yapılandırılmış bir tarayıcı daha sonra aynı bağlantı üzerinden HTTP, HTTPS, FTP vb. Erişebilir). Ve diğer proxy sunucularda olduğu gibi, hedefi belirlemek için trafiği kullanır.


1
Teşekkürler muru! Yerel yönlendirme olmasa da dinamik yönlendirmeye neden proxy adı verildiğini merak ediyorum. Tanımı gereği, ssh sunucusu, ssh istemcisi veya her ikisi de yerel olarak bir proxy (sunucu) iletirken mi? unix.stackexchange.com/a/234184/674
Tim

1
@Proxy sunucusu proxy'nin hangi protokolü kullandığını anlar. Port yönlendirme ile SSH hangi protokolün geldiğini anlama girişiminde bulunmaz, ancak verinin nereye gönderileceğini anlamak için -Dbunu yapmak zorundadır .
muru

Teşekkürler. Bilgisayar ağlarının bazı ders kitaplarında (örneğin Tanenbaum'un) sizinki kadar net bir proxy (sunucu) tanımı için arama yaptım, ancak memnun kalmadım. Kavramları öğrenmek için önerebileceğiniz kitaplarınız var mı?
Tim

Dinamik bağlantı noktası iletmede proxy sunucu, ssh istemcisi, ssh sunucusu veya her ikisi de hangisidir?
Tim

@Tim Tanenbaum'un okuduğum tek kitaptı. Gerisi bir şeyler kullanmaktan geliyor.
muru

0

Bu kavramı öğrenmenin başka bir yolu, bir müşterinin Amazon'un elastik harita azaltma (EMR) kümesine nasıl bağlandığına bakmaktır. EMR, maruz kaldığı bir grup yerel uygulamaya sahiptir ve bunlara normalde SSH tünelleri üzerinden erişilir.

Bir istemci için 2 seçenek vardır: A) Yerel bağlantı noktası ileri SSH komutu: ssh -i key.pem -L 8157: abcd: 8088 hadoop @ abcd

Burada istemci, örneğin, localhost üzerindeki 8157'nin abcd: 8088'e yönlendirildiğini söyler: İstemci localhost'a bir istekte bulunmalıdır: http: // localhost: 8157 8089.8090 gibi bağlantı noktalarını diğer uygulamalar dinliyor olabilir ve istemci bunların her biri için ssh bağlantıları yapmak zorundadır.

B) Dinamik bağlantı noktası ileri Burada tek bir SSH komutu kullanılır: ssh -i key.pem -D 8157 hadoop @ abcd

8157 numaralı bağlantı noktasına giren trafik ssh tüneli üzerinden yönlendirilecektir. Trafiğin hedefi URL'nin hedefi olacaktır. Örneğin, web sunucunuzda bir proxy istemcisi kullanabilir ve proxy'yi kullanmak için bazı http URI'leri yönlendirebilirsiniz. Tüm uygulamalarınıza tek komutla 8089.8090'dan erişebilirsiniz.

Referans için şu dokümana bakın: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-web-interfaces.html

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.