rsync 使用 ssh 傳到private IP (應該是不可行) [論壇 - Ubuntu 與工具程式及軟體推薦]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊



rsync 使用 ssh 傳到private IP (應該是不可行)
會員一級
註冊日期:
2015/4/24 12:01
所屬群組:
已註冊使用者
等級: 1
HP : 0 / 8
MP : 1 / 202
EXP: 34
離線
假設有兩台電腦 ,A電腦有 public IP ,B電腦有private IP .

目前要在B電腦 使用 ssh -t user@ip 'sudo -i *.sh'

,來執行script 裡面有使用 rsync 來備份檔案,

只是現在問題是 在這script 中的 rsync 要傳送檔案的目的地是 B電腦

也就是在 NAT 底下 擁有 private IP ,

所以rsync要填入IP的地方就沒辦法填了.

只是想說有沒有這種方法 , 前面B電腦已經用 ssh的方式和A電腦建立連線了,

那有沒有辦法 , 讓rsync 也使用這條通道來傳送資料? 這樣就算B電腦在

private IP也是可以傳的,只是相關的內容找不太到,有大大知道嗎?

雖然也可以讓備份的檔案直接在A電腦,但是想探討要傳回B電腦是否可行?

ps. B電腦只執行連線進到A電腦,讓A電腦去執行script,也就是rsync是要

在A電腦執行 , 不是在B電腦上執行.

謝謝大家

*********************
剛剛想了一下 這應該是不可行 rsync 要傳送前 一定會建立一條新的ssh通道

所以還是不要異想天開好了 XD

2015/4/24 12:18
應用擴展 工具箱
回覆: rsync 使用 ssh 傳到private IP (應該是不可行)
會員四級
註冊日期:
2010/8/12 15:54
所屬群組:
已註冊使用者
等級: 18
HP : 0 / 443
MP : 135 / 16582
EXP: 72
離線
方法1:
假設沒有權限問題
在B電腦下rsync -av $USER@A:$SRCPATH $BACKPATH
會把A的$SRCPATH 備到B的$BACKPATH
PS: 現在的rsync,沒開rsyncd的話它走的就是ssh

方法2:
ssh tunnel 可以做反向
B ssh --> A
建立反向 tunnel,讓 A可以連到B

2015/4/24 16:08
應用擴展 工具箱
回覆: rsync 使用 ssh 傳到private IP (應該是不可行)
會員五級
註冊日期:
2008/10/7 21:19
所屬群組:
已註冊使用者
等級: 36
HP : 0 / 896
MP : 661 / 38366
EXP: 85
離線
可以先用ssh建好tunnel,再指定rsync走tunnel開好的port

參考這:
http://stackoverflow.com/questions/16654751/rsync-through-ssh-tunnel

2015/4/24 17:10
I′m UGP
應用擴展 工具箱
回覆: rsync 使用 ssh 傳到private IP (應該是不可行)
會員四級
註冊日期:
2010/8/12 15:54
所屬群組:
已註冊使用者
等級: 18
HP : 0 / 443
MP : 135 / 16582
EXP: 72
離線
UGP 寫到:
可以先用ssh建好tunnel,再指定rsync走tunnel開好的port

參考這:
http://stackoverflow.com/questions/16654751/rsync-through-ssh-tunnel


rsync 的source 可以是遠端,而且 rsync 本身可以走ssh (以前是用 rsync -e ssh ,現在貌似不用下參數了)
所以只要ssh可以通,不管是哪一邊在nat底下都是可以同步的!

2015/4/24 18:35
應用擴展 工具箱


 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.