ağ arabirimi bağlantılarını değiştirirken ssh bağlantısını canlı ve kalıcı tutun


13

Senaryo:

  1. Dizüstü bilgisayarımla masamda ethernet'e takılı ve SSH üzerinden uzak sunucuya bağlı
  2. Dizüstü bilgisayarla ofisin diğer tarafına geçmek ve SSH bağlantısını kesmeden WiFi'ye geçmek istiyorum

Denedim: önce WiFi'ye bağlandıktan sonra ethernet bağlantısını keserek; ve ayrıca önce ethernet bağlantısını kestikten sonra WiFi'ye bağlayabilirsiniz. Her iki yaklaşım da işe yaramıyor. Ayrıca, Ubuntu ve OS X sunucularının yanı sıra istemci için her iki işletim sistemi seçeneğiyle birlikte kullanıldığında da denendi. Şanssız.

Görünüşe göre SSH bağlantımı eski bağlantısız arayüz yerine yeni bağlı ağ arayüzünü kullanmaya başlaması gerektiğini söylemem gerekiyor. Herhangi bir fikir?

Bütün gün WiFi'da kalabileceğimin farkındayım, ama bunu yapmak istemiyorum. Ayrıca, uzak sunucudaki bir ekran oturumundan çalışabileceğimi ve sonra arayüzleri değiştirdikten sonra bu ekran oturumuna yeniden bağlanabileceğimin farkındayım, ancak bunu da yapmak istemiyorum. Örneğin, SSH üzerinden veritabanı dökümü gibi bazı büyük komutları iletiyor olabilirim veya SSHFS aracılığıyla dosyaları açmış olabilirim veya yeniden bağlamanın sıkıntısından kaçınmak isteyebilirim


3
Aynı IP adresini her iki şekilde alırsanız, bu sadece Çalışmalıdır. Değilse, bu neredeyse imkansız.
Alan Curry

@AlanCurry Hem istemci hem de sunucu MPTCP'yi destekliyorsa, bu mümkündür. Ancak MPTCP desteği hala çok sınırlıdır, bu yüzden durum böyle değildir.
kasperd

Yanıtlar:


4

Ben bu çözüm vb sshfs, için çalışmaz, ancak bir göz sürebilir şüpheli Mosh en azından kabuk kendisi için destek dolaşım anlaşması bulunmaktadır.


Bu çok iyi bir çözüm gibi görünüyor, ancak maalesef sunucuya da yüklenmesi gerekiyor, bu da izinler nedeniyle her zaman mümkün değil.
user000001

4

Korkarım bunu tanım olarak yapamazsın. SSH oturumu, dört demet (kaynak adresi, kaynak bağlantı noktası, hedef adres, hedef bağlantı noktası) tarafından tanımlanan bir TCP bağlantısı üzerinden çalışır. Varolan bağlantıyı istemcideki farklı bir adrese kaydıramazsınız (arabirim kapandığında işletim sisteminin bağlantıyı keseceği gerçeği dışında).

NAT bu resmi karmaşıklaştırabilir, ancak size yardımcı olacak herhangi bir şekilde değil.


Evet, ancak soketin kapandığını bildikten sonra uygulama yeniden bağlanabilir. SSH protokolünün eski bir oturuma devam etme hükmü var mı?
Ajay Brahmakshatriya

@AjayBrahmakshatriya SSH'nin oturumları sürdürmek için hiçbir aracı yok
Ferrybig

2

Eski iplik, biliyorum, ama aynı şeyi aradığımdan beri tamlık uğruna ...

Windows 7 veya daha yeni sürümlerde hem wifi bağdaştırıcınızı hem de Ethernet bağdaştırıcınızı seçip "Köprü Bağlantısı" nı seçebilmeniz gerekir. Bu size her ikisi için tek bir IP adresi verecektir ve artık istediğiniz zaman Ethernet bağlantısını kesip yeniden bağlayabileceksiniz (sürekli wifi kapsama alanı verildiğinde).


İyi fikir, bunu denemek zorunda kalacağım.
Doug

Bunu yapıyorsanız, kuruluma bağlı olarak her iki ağa da aynı anda yapmayın, ağ alanındaki herkesi tekmeliyor (kaynak: bu bana oldu)
Ferrybig

2

Bunu iki şekilde yönetiyorum:

Oturumu veri merkezinizdeki bir terminal sunucusundan başlatın (RDP / Windows / vb.)

VEYA

GNU veya yükleyin ve giriş yaptıktan sonra bunları başlatın.

Oldukça eski bir okul tmuxolduğu screeniçin tercih ediyorum , ancak sadece desteklenen paketleri kurmanıza izin verilirse screen, RHEL deposundadır.

VEYA

İkisinide yap.


tmuxgerçekten kullanışlı. İçinde uzak şeyler çalıştırmak tmuxmükemmel bir alışkanlıktır.
civciv

Evet katılıyorum. Çoklu pencere işlevi harika.
Doug

1

Kolayca yapılamaz.

Sizi IP'ler veya AP'ler arasında hareket ederken veya hatta uzun süreli ağ bağlantısının kesilmesi için bir telnet veya SSH oturumu tutmanıza izin veren çok pahalı uygulamalara işaret edebilirim, ancak temelde bunu her zaman açık bir sunucu oluşturarak başarırlar - istemci bağlantının oturumu farklıdır, böylece sunucu bağlantının farklı veya düşmüş olduğunu bilmez.

Sanırım böyle bir şeyi kodlayabilirsiniz, ancak bunu yapmak kolay olsaydı, müşterilerimin terminal bağlantılarını kablosuz el tarayıcılarında açık tutmak için 5 rakam maliyeti ile tecavüze uğramayacağını hayal ediyorum.

Yine de, ekran boyunca rastladım , bu da işe yarayabilecek kalıcı SSH oturumları oluşturduğunu iddia ediyordu ... bir şans ver.


1

Sorun, muhtemelen kablolu ve wifi arasında geçiş yaptığınızda kaynak IP adresinizin değişmesidir. Bu, ssh oturumlarının geri gelmesini önleyecektir.

Ben bir vpn üzerinden bağlayarak ve vpn bağlantı her zaman hesabınıza aynı ip verdiğinden emin olarak linux bu ele (zorlamak zor değil, ama zaten zaten zaten varsayılan olarak vpn üzerinden aynı ip alacaksınız şansı yüksek kullanılabilir, ancak emin olmak için daha iyi uygula). Çoğunlukla vtun kullanıyorum, ancak openvpn de tamam. Bağlantılarınızın vpn üzerinden geçtiğinden emin olun (doğru yönlendirme, aktarılan önekler, ...)

Hatta 5 dakika kadar kablodan çevrimdışı olmak ve sonra wifi bağlanmak ve hala tüm ssh oturumları bağlı kalmak mümkün. Devam eden ping, mtr, htop, ... sadece vpn hiçbir şey olmamış gibi geri yüklendiğinde devam edin.


0

Ssh oturumunu ilk başlattığınızda sadece wifi üzerinde olmayı deneyin. Sonra ethernet'inizi takın. Bu, yeni bağlantıların ethernet üzerinden geçmesine izin vermelidir, ancak kurulan bağlantı wifi üzerinde kalacaktır. En azından OSX ile böyle çalıştığını gördüm, bu yüzden OS / donanım değişebilir.


0

Bunu VM'leri ve Tünelleri hack etmek için aptalca bir miktar yapabileceğinizden eminim.

Bu test edilmemiştir, ancak gerçekten işe yarayıp yaramadığını bana bildirin.

  1. 2 arabirimi, 1 köprülü bağdaştırıcısı (wifi'ye) ve yalnızca 1 ana bilgisayar ağına sahip bir konuk VM oluşturun
  2. VM'nin eşi için köprülü adaptör için 192.168.0.25 ve sadece ana bilgisayara 192.168.56.5 olduğunu söyleyelim.
  3. Vm içinde uzak taraftaki bağlantı noktasına 22 tünelle ssh bağlantısı oluşturun 22 ssh -L 10022:remote.server.example.com:22
  4. Şimdi tünelden bağlanın. ssh 192.168.56.3 -p 10022
  5. Wifi bağlantınızı kaybettiğinizde, VM'deki adaptörü eter ağ adaptörüne değiştirin.
  6. Umarım yönlendirme tablosunu kapatmaz veya vidalamaz

Eğer işe yararsa beni bilgilendir.

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.