ssh 'ile belirtilen portu nasıl bağlarım?


56

Belli bir limana ssh'ing yaparken nasıl bağlanacağımı biliyorum.

ssh user@remotehostip -p XXX

fakat belirli bir limanı ssh ile kurmanın bir yolu var mı?

Yani, yerel bilgisayarımın kullanacağı portu belirtmenin bir yolu var mı?


Sunucu portunu veya istemciyi alan portu değiştirmek mi istediniz? Düzenleme: Tamam, önerimi sildim. Favori.
polim

Müşterinin limanını belirlemek istiyorum
kwagjj

3
@kwagjj kaynak portu mu demek istiyorsun? Eğer öyleyse, kaynak portunu kontrol edemezsiniz.
Patrick

Yanıtlar:


15

Bu kolay mümkün değil. Bunun nasıl yapılacağı kaynak limanının nerede görüleceğine bağlıdır: Yerel olarak da, ya da dış ağ perspektifinden doğru liman ise bu yeterli midir?

SSH istemcisini bir LXC kabında çalıştırabilirsiniz. Bunu hiç yapmadım, bu yüzden size ayrıntılı olarak açıklayamam. Ancak bir sanal ağ arayüzü oluşturup bu kabın içine eklersiniz, böylece sshbu arayüzü kullanır, çünkü gördüğü tek (harici) arayüzdür.

Ana sistemde bir paketin bu arayüzden geldiğini tespit etmek mümkün olmalıdır. Böylece kaynak adresini aşağıdaki gibi bir şeyle yeniden yazmak için Netfilter'ın NAT (SNAT) özelliğini kullanabilirsiniz:

iptables -t nat -A POSTROUTING -o vnet0 -p tcp --dport 22 -j SNAT --to-source :1234

Elbette, 22'den farklı bağlantı noktalarına bağlanırsanız, bu çalışmaz (veya daha karmaşık hale gelir).


1
teşekkürler ... ama sanırım bu bilgi benim ligimin dışında ... ama yine de teşekkürler :) Ama gerçekten ne yaptığımla çıkmaza girsem .. belki de kafamı buna çeviririm tekrar cevap :)
kwagjj

evet bu konuda bilgi bulmak gerçekten zor. Buldum sshfsve birisi bu komutla çalıştığını söyledi, ama inanmıyorum. Cevabı bulursanız, lütfen bize bildirin :)!
polim

@kwagjj Eksiksiz (metin modu) bir Linux'u gerçek bir VM olarak kurmak daha kolay (anlamak) olabilir. Bu VM'yi (veya içindeki belirli bir hesabı) SSH için kullanıyorsanız, bunu VM Netfilter ile yapabilirsiniz.
Hauke ​​Laging

6

Belki de aradığınız komut sözdizimi budur. ssh -p XXX user @ remotehostip Seçeneklerin sırasını değiştirmek zorundasınız. Şimdi dene, benim için çalışıyor. Saygılarımla.


2

Yönlendiriciniz üzerinden bağlantı noktası iletiyorsanız bunun için basit bir çözüm, gelen bağlantı noktasını ne istediğinizi ve yerel bağlantı noktasını 22 olarak ayarlamaktır. Makineniz normal olarak 22 gibi ssh bağlantısı yapacaktır ancak gerçekte ağınızın dışından bağlanacaktır. gelen limanını kullanırdın. Sadece botların makinanıza çarpmasını engellemeye çalışıyorsanız, 22 bunu yapmanız gerekir.

Bu sizin özel probleminiz için yardımcı olmayabilir, ancak bu nedenle birçok insanın buraya geldiğini hayal ediyorum.


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.