Ssh -L ile -D arasındaki farklar


52

Ssh -L - -D arasındaki farkları anlamaya çalışıyorum. Bunun dışında başka bir şey var mı -D sadece ÇORAP mı?

Teşekkürler!

Yanıtlar:


53

ssh -Lyerel bir port açar. Bu bağlantı noktasına gönderdiğiniz her şey ssh bağlantısı üzerinden geçirilir ve sunucudan çıkar. Örneğin, tarayıcınızı ssh -L 4444:google.com:80açarsanız http://localhost:4444, aslında google sayfasını göreceksiniz.

ssh -Dyerel bir bağlantı noktası açar, ancak ile olduğu gibi belirli bir bitiş noktası yoktur -L. Bunun yerine, bir SOCKS proxy'si gibi görünüyor. Örneğin, ssh -D 7777tarayıcınıza localhost:7777SOCKS vekiliniz olarak kullanmasını söylediğinizde, tarayıcınızın istediği her şey ssh tünelinden geçer. Genel internete, sanki bilgisayarınız yerine ssh sunucunuzdan göz atıyormuşsunuz gibi.


6
-L ile ilgili önemli bir ayrıntı, yalnızca yerel kullanım için yerel bir bağlantı noktasını bağlayabilmenizdir; örneğin, localhost: 80: remotehost: 8080, ancak bu bağlantı noktasını başkaları için de bağlayabilirsiniz. Böylece, yerel ağınızdaki bir makineyi bir tünel vasıtasıyla uzaktaki bir makineye erişim olanağı sunabilirsiniz, herhangi bir yerel makine bunu bilmiyor.
dividebyzero

@dividebyzero Ne tarif ettiğinizi hayal etmekte zorlanıyorum
Michael Dorst

@MichaelDorst Manpage'den bu cümleyi kastediyorum:The bind_address of “localhost” indicates that the listening port be bound for local use only, while an empty address or ‘*’ indicates that the port should be available from all interfaces.
dividebyzero

ssh -L 4444:google.com:80benim için çalışmıyor, user@example.com gibi giriş yapmak için başka bir parametre gerektiriyor
Saman Mohamadi

6

SSH'de, -Dyerel bir "dinamik" uygulama düzeyinde bağlantı noktası iletmeyi belirtir.

SSH -D [bind_address:]port

Yerel bir "dinamik" uygulama düzeyinde bağlantı noktası iletme belirtir. Bu, isteğe bağlı olarak belirtilen bind_adresine bağlı olarak, yerel taraftaki bağlantı noktasını dinlemek için bir soket tahsis ederek çalışır. Bu bağlantı noktasına bir bağlantı yapıldığında, bağlantı güvenli kanal üzerinden iletilir ve daha sonra uzak makineden nereye bağlanılacağını belirlemek için uygulama protokolü kullanılır. Şu anda SOCKS4 ve SOCKS5 protokolleri desteklenmektedir ve ssh SOCKS sunucusu olarak görev yapacak. Sadece root ayrıcalıklı portları iletebilir. Dinamik port yönlendirme konfigürasyon dosyasında da belirtilebilir.

IPv6 adresleri alternatif bir sözdizimi ile belirtilebilir: [bind_address /] portu veya adresi köşeli parantez içine alarak.

Sadece süper kullanıcı ayrıcalıklı portları iletebilir. Varsayılan olarak, yerel bağlantı noktası GatewayPorts ayarına göre bağlanır. Ancak, belirli bir adrese bağlantıyı bağlamak için açık bir ciltleme adresi kullanılabilir. “Localhost” ifadesinin bind_adresi, dinleme portunun sadece yerel kullanım için bağlı olduğunu belirtirken, boş bir adres veya '*' portun tüm arayüzlerden erişilebilir olması gerektiğini belirtir.

Ek olarak, ssh -Lyerel (istemci) ana bilgisayarda verilen bağlantı noktasının uzaktaki belirli ana bilgisayara ve bağlantı noktasına iletileceğini belirtir.

SSH -L [bind_address:]port:host:hostport

Yerel (istemci) ana bilgisayarda verilen bağlantı noktasının, uzaktaki belirli ana bilgisayara ve bağlantı noktasına iletileceğini belirtir. Bu, isteğe bağlı olarak belirtilen bind_adresine bağlı, yerel taraftaki bağlantı noktasını dinlemek için bir soket tahsis ederek çalışır. Bu bağlantı noktasına bir bağlantı yapıldığında, bağlantı güvenli kanal üzerinden iletilir ve ana makine bağlantı noktası ana bilgisayarına uzak makineden bağlantı yapılır. Bağlantı noktası iletme yapılandırma dosyasında da belirtilebilir. IPv6 adresleri alternatif bir sözdizimi ile belirtilebilir: [bind_address /] port / host / hostport veya adresi köşeli parantez içine alarak.

Sadece süper kullanıcı ayrıcalıklı portları iletebilir. Varsayılan olarak, yerel bağlantı noktası GatewayPorts ayarına göre bağlanır. Ancak, belirli bir adrese bağlantıyı bağlamak için açık bir ciltleme adresi kullanılabilir. “Localhost” ifadesinin bind_adresi, dinleme portunun sadece yerel kullanım için bağlı olduğunu belirtirken, boş bir adres veya '*' portun tüm arayüzlerden erişilebilir olması gerektiğini belirtir.

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.