Ana bağlantı
Önceden plan yaparsanız en kolay olanıdır.
İlk defa bir ana bağlantı açın. Daha sonraki bağlantılar için, bağımlı bağlantıları mevcut ana bağlantı üzerinden yönlendirin. Gözlerinde farklı ~/.ssh/config, otomatik olarak gerçekleşmesi bağlantı paylaşımını kurmak:
ControlMaster auto
ControlPath ~/.ssh/control:%h:%p:%r
Mevcut bir bağlantıyla aynı (kullanıcı, port, makine) ssh oturumu başlatırsanız, ikinci oturum ilkine tünellenir. İkinci bağlantının kurulması yeni bir kimlik doğrulama gerektirmez ve çok hızlıdır.
Böylece etkin bağlantınız varken, çabucak:
nakliye
Mevcut bir bağlantıda, ters ssh tüneli kurabilirsiniz. Ssh komut satırında, -R 22042:localhost:2222042'nin uzak makinedeki diğer herhangi bir bağlantı noktası numarasından farklı olarak rastgele seçilen bir sayı olduğu bir yere geçerek bir uzaktan iletme oluşturun . Ardından ssh -p 22042 localhostuzaktaki makinede sizi tekrar kaynak makineye bağlar; scp -P 22042 foo localhost:dosyaları kopyalamak için kullanabilirsiniz .
Bunu daha da otomatikleştirebilirsiniz RemoteForward 22042 localhost:22. Bununla ilgili sorun, aynı bilgisayara birden fazla ssh örneği bağlarsanız veya bağlantı noktasını başka biri kullanıyorsa, iletimi alamamanızdır.
Baştan itibaren uzaktan yönlendirmeyi etkinleştirmediyseniz, mevcut bir ssh oturumunda yapabilirsiniz. Yazın Enter ~C Enter -R 22042:localhost:22 Enter. Daha fazla bilgi için kılavuzdaki “Escape karakterleri” bölümüne bakın.
Bu Sunucu Hatası iş parçacığında bazı ilginç bilgiler de var .
Kopyala yapıştır
Dosya küçükse, yazabilir ve terminal çıkışından kopyala-yapıştır yapabilirsiniz. Dosya yazdırılamayan karakterler içeriyorsa, base64 gibi bir kodlama kullanın .
remote.example.net $ base64 <dosyam
(çıktıyı kopyala)
local.example.net $ base64 -d> dosyam
(panodaki içeriği yapıştır)
Ctrl +D
Daha kolay, eğer X yönlendirme etkinse, dosyayı uzak makineye kopyalayın ve yerel olarak yapıştırın. Verileri içeri xclipveya dışarı aktarabilirsiniz xsel. Dosya adını ve meta verileri korumak istiyorsanız, bir arşivi kopyalayıp yapıştırın.
remote.example.net$ tar -czf - myfile | xsel
local.example.net$ xsel | tar -xzf -
scp file.foo user@myclient.com:file.foo: P