Re: [打屁] 有人對ssh tunnel有興趣的嗎?
那我就以HZYSoft下面這篇教學為基礎,接下去寫吧
======================================================================
防火牆內|
A: localhost(本機) | S: ssh server C: 另一台機器
IP: 192.168.1.1 | IP: 10.1.1.1 IP: 10.1.1.2
|
B: 另一台機器 |
IP: 192.168.1.2 |
======================================================================
從A來直說明Reverse Tunnel
以這個指令 "ssh name:10.1.1.1 -R 8080:127.0.0.1:80" 連線後
這個連線會讓ssh server多listen一個port
A: 127.0.0.1:80
|<------------------------------------|
S: listen 8080 port
特別的是,這個listen port,只限定ssh server本機來連入
所以S可以用(127.0.0.1:8080) 連到 (A的192.168.1.1:80)
======================================================================
再來舉第二個例子
從A來建立Reverse Tunnel,再導到B機
以指令 "ssh name:10.1.1.1 -R 2121:192.168.1.2:21" 來連線後
B:192.168.1.2
^
|
A:192.168.1.1 S: listen 2121 port
|<------------------------------------|
同樣的結果,這個Reverse tunnel只限定ssh server本機來連入
所以S可以用(127.0.0.1:2121) 連到 (B的192.168.1.2:21)
======================================================================
第三個例子,承二個例子,我們接下來要解決如何從C連到A的問題
雖然我們可以從防火牆內部對外建立reverse tunnel,
但這個reverse tunnel只限定ssh server本機連入,
而C並無法直接以 (10.1.1.1:2121) 來連到 (B的10.1.1.2:21)
解決方法就是: 從C建立一個local tunnel 到ssh server!!
指令為: ssh name@10.1.1.1 -L 21:127.0.0.1:2121
如下圖:
B: 192.168.1.2:21
^
|
A: 192.168.1.1 S: listen 2121 port
|<------------------------------------|
(reverse tunnel) ^
| (local tunnel)
|<----------------|
127.0.0.1:2121 C: listen port 21
此時,C可以用 (127.0.0.1:21) 連入 (B的192.168.1.2:21)
======================================================================
第四個例子
假設A機器上有ssh server的功能
1.先建立A --> S 的reverse tunnel (指令 ssh name:10.1.1.1 -R 22222:127.0.0.1:22)
2.再建立C --> S 的local tunnel (指令 ssh name:10.1.1.1 -L 22:127.0.0.1:22222)
3.此時在C要連到 A 的連線上,建立dynamic tunnel
(指令 ssh name:127.0.0.1 -D 8080)
圖示:
A: 192.168.1.1:22 S: listen 22222 port
|<------------------------------------|
(reverse tunnel) |
| (local tunnel)
|<----------------|
127.0.0.1:22222 C: listen port 22
(dynamic tunnel)
|<------------------------------------------------------|
C: listen port 8080
此時C可以利用sockcap或tsocks,將軟體的連線導到從A出去
猶如就是從A出去的
===================
後記:
謝謝那些推文的人,我想網路上的確有更好的教學可以參考,
非常感謝你們的鼓勵,讓我有野人獻曝的勇氣,
那些噓我的人,你們有噓我的權利,但請不要澆息別人寫教學的熱忱
我很認同HZYSoft的作法,至少從網路上找到很好的教學給大家
而不是只是單純地噓人,所以下次要噓我,請噓的有點建設性,謝謝~
最後的最後:
以上僅為ssh tunnel教學,使用者請勿用於非法用途之上。
任何使用者行為,並不在此教學文的責任上。
※ 引述《HZYSoft (PCMan 知識+)》之銘言:
: ※ 引述《qsort (Cos)》之銘言:
: : 有人對:
: : Dynamic tunnel
: : local tunnel
: : Remote tunnel
: : 這三種的差別,和使用時機有興趣的嗎?
: : 最近玩得很有心得~
: : 但不知有沒有人有興趣
: : 以下推破50人,我就po出教學XD
: : 第一個推文的人,要幫我寫google doc喔XD
: 其實已經有人寫過教學了,還滿詳細的:
: http://blog.t-times.net/ada/space/start/2007-11-20/1
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.192.151
※ 編輯: qsort 來自: 114.43.192.151 (03/09 01:18)
→
03/09 01:20, , 1F
03/09 01:20, 1F
推
03/09 01:49, , 2F
03/09 01:49, 2F
推
03/09 01:50, , 3F
03/09 01:50, 3F
→
03/09 01:58, , 4F
03/09 01:58, 4F
推
03/09 04:19, , 5F
03/09 04:19, 5F
推
03/09 20:39, , 6F
03/09 20:39, 6F
推
03/09 21:24, , 7F
03/09 21:24, 7F
→
03/10 01:59, , 8F
03/10 01:59, 8F
推
03/10 11:11, , 9F
03/10 11:11, 9F
→
03/10 22:41, , 10F
03/10 22:41, 10F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
EZsoft 近期熱門文章
PTT數位生活區 即時熱門文章