# -N # 不開啟 tty 終端。 # -f # 背景執行。 # -D 8080 # 開啟 SOCKET proxy。將本地端 8080 埠連線轉發到 alumni.cs.nctu.edu.tw。 # -p port # 繞過防火牆對 ssh 連線的阻檔。 $ ssh -Nf -D 8080 -p port username@alumni.cs.nctu.edu.tw # # -M 12345 # autossh 於 12345 埠監控 ssh 連線。也可透過指定 echo port 方式進行監控。 # $ autossh -M 12345 -Nf -D 8080 -p port username@alumni.cs.nctu.edu.tw
Computer networks use a tunneling protocol when one network protocol (the delivery protocol) encapsulates a different payload protocol.
To set up an SSH tunnel, one configures an SSH client to forward a specified local port to a port on the remote machine. Once the SSH tunnel has been established, the user can connect to the specified local port to access the network service. The local port need not have the same port number as the remote port.
# # -L 8190:llvm.org:80 # 將本地端 (localhost) 8190 埠連線,透過與 alumni 的 ssh 連線,轉發至 llvm.org 80 埠。 # 根據 svn 欲連線的協定,選擇對應的遠端主機埠。 # $ ssh -L 8190:llvm.org:80 -p port username@alumni.cs.nctu.edu.tw # # 對 http://localhost:8190/svn/llvm-project/llvm/trunk 的連線,會被轉發至 # http://llvm.org:80/svn/llvm-project/llvm/trunk # $ svn co http://localhost:8190/svn/llvm-project/llvm/trunk llvm