tips server ssh 正向 反向 代理,tipsssh
1. ssh userxxxxname@115.28.87.102
(直接使用ssh的串連方式串連到遠程主機,而不是使用http,ftp等方式串連到具體遠程主機)
退出並登出關閉串連 exit
2.left-connection(左串連 正向串連)
1 ssh -L client_ip(可省略,省略則為預設值127.0.0.1):client_port2 :server_ip(伺服器那端能訪問的ip地址a):server_port(a的連接埠)3 登入伺服器的使用者名稱@伺服器ip -p server_port(伺服器ssh的連接埠 預設:22)4 5 有預設值所以可以不加-p 另外伺服器ip也可以像http協議那樣用網域名稱替代
具體解釋:
我的ip是在某路由器的區域網路內 192.168.1.104 在本地開啟一個連接埠7900 然後左串連伺服器http://test.conglinnet.com/ (此網站在伺服器ip 115.28.87.102上)
此時和我同一區域網路內的比如192.168.1.106 在本地瀏覽器鍵入 192.168.1.104:7900 將開啟 http://test.conglinnet.com/的網頁
ssh -L 192.168.1.104:7900:test.conglinnet.com:80 username@115.28.87.102
此時所有 發往192.168.104:7900連接埠的請求將通過192.168.1.104的7900連接埠通過發向和它串連的ssh遠程主機(115.18.87.102)上的指定連接埠,
同時請求的響應也會返回給我的7900連接埠 別人訪問我的7900連接埠就可以看到目前7900連接埠上的資料
所以很明顯 會發生這樣的情況 遠程主機並不知道我的7900連接埠背後發送的請求實際上是哪一台裝置
而支援通過7900連接埠ssh傳送過去的請求支援ftp ,ssh,http等但是好像不支援vpn,因為不支援gre協議
一句話重點:把server能訪問的機器地址和連接埠(當然也包括server自己)鏡像到client的連接埠上
right-connection-右串連 反向串連
1 ssh -R server_ip(可省略,省略則為預設值127.0.0.1):server_port:2 client_ip(用戶端這邊能訪問的ip地址d):client_port(d能訪問的連接埠) 3 登陸伺服器的使用者名稱@伺服器IP -p [伺服器ssh服務連接埠(預設22)]4
具體解釋:
我有一台個人pc 或者自己買了效能比較強大的電腦 想做一台web上的伺服器 不幸的是全球互連網上的固定ip,這種任何人都可以訪問的ip地址是有限的,目前市場還比較緊俏
但是我弄到了一個,然後我想自己這台pc映射到那台可以訪問的地址上去,這樣資源在我本地, 任何人可以通過訪問internet上的它,由它跑到我這兒來請求
(或者說把請求轉寄給我的pc),由我返迴響應給它,它將響應的資料給請求的任何人.
ssh -R test.conglinnet.com:8999:192.168.1.104:9000 username@115.28.87.102
這個時候的情況是 任何人訪問http://test.conglinnet.com:8999 都會實際上將請求轉到某區域網路內的我本機(192.168.1.104)上的9000連接埠,而我在9000連接埠上開了個web伺服器
note:
當然具體執行起來會有一些其它的不同,這裡只是說明ssh的原理.通常實際上大概會再做一次連接埠轉寄
將伺服器上的80連接埠轉寄給8999,然後任何人就可以直接存取http://test.conglinnet.com了
還有實際上的固定ip與網域名稱,最明顯的一個差別就是 一個固定ip上通常會有n個網域名稱,否則多浪費ipv4下有限的固定ip
一句話重點:把用戶端能訪問的機器地址和連接埠(當然也包括用戶端自己)鏡像到伺服器的連接埠上
這樣看起來,似乎應用程式之間的通訊即是連接埠之間的通訊.
其它常用ssh片段
ssh -D client_port 登入伺服器使用者名稱@server_ip
此時firefox 或者ie裡socks代理監聽 本機那個client_port 就ok了
ssh -v -R 0.0.0.0:8999:0.0.0.0:9000 username@115.28.87.102 //也常用0.0.0.0來監聽所有地址,省心.
ssh的其它常用參數
-q 靜默運行,就算出錯也啥都不提示
-f 後台運行
-C 壓縮,頻寬很差的時候壓縮會快一些,否則會更慢
-i xxx.file 提供公開金鑰檔案直接驗證
-l 指定使用者名稱,其實就是@前面寫的那個。