小編給大家分享一下iox是什么工具,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
iox是一款功能強大的端口轉發&內網代理工具,該工具的功能類似于lcx和ew,但是iox的功能和性能都更加強大。
實際上,lcx和ew都是非常優秀的工具,但還是有地方可以提升的。在一開始使用這些工具的一段時間里,那些復雜的命令行參數是很難記憶的,比如說tran、slave、rcsocks和sssocks等等。這些工具的工作機制非常清晰,明明可以用簡單的參數來表示的,為什么要用這么復雜的參數來代替呢?除此之外,這些工具的網絡編程邏輯也是可以優化的。比如說,在運行“lcx -listen 8888 9999”命令時,客戶端必須先連接“:8888”,再連接“:9999”,實際上這兩個端口的連接是沒有順序限制的,但是在iox里則沒有這樣的限制。再比如說,運行“lcx -slave 1.1.1.1 8888 1.1.1.1 9999”命令時,lcx會以串行的方式連接兩個主機,但是并發連接兩個主機會更高效,畢竟是純I/O操作,而iox就是以這種更高效的方式實現的。
當然了,iox還提供了流量加密功能,你甚至還可以直接將iox當做一個簡易的ShadowSocks來使用。除此之外,iox還提供了UDP流量轉發的功能。
因為iox是采用Go編寫的,所以靜態連接的程序有一點大,原程序有2.2MB,而UPX壓縮后只有800KB。
1、流量加密(可選)
2、友好的命令行參數
3、邏輯優化
4、UDP流量轉發
廣大研究人員可以使用下列命令將該項目源碼克隆至本地:
git clone https://github.com/EddieIvan01/iox.git
大家可以看到,iox所有的參數都是統一格式的,-l/--local代表監聽本地端口;-r/--remote代表連接遠端主機。
fwd模式:
同時監聽 0.0.0.0:8888 和0.0.0.0:9999,將兩個連接間的流量進行轉發。
./iox fwd -l 8888 -l 9999 for lcx: ./lcx -listen 8888 9999
監聽0.0.0.0:8888,把流量轉發到1.1.1.1:9999。
./iox fwd -l 8888 -r 1.1.1.1:9999 for lcx: ./lcx -tran 8888 1.1.1.1 9999
連接1.1.1.1:8888和1.1.1.1:9999, 在兩個連接間轉發流量。
./iox fwd -r 1.1.1.1:8888 -r 1.1.1.1:9999 for lcx: ./lcx -slave 1.1.1.1 8888 1.1.1.1 9999
proxy模式:
在本地 0.0.0.0:1080啟動Socks5服務
./iox proxy -l 1080 for ew: ./ew -s ssocksd -l 1080
在目標主機上開啟Socks5服務,將通信流量轉發至公網VPS,VPS上將流量從0.0.0.0:9999轉發到0.0.0.0:1080。此時,你必須將兩條命令成對使用,因為它內部包含了一個簡單的協議來控制回連。
./iox proxy -r 1.1.1.1:9999 ./iox proxy -l 9999 -l 1080 // 注意,這兩個端口是有順序的 for ew: ./ew -s rcsocks -l 1080 -e 9999 ./ew -s rssocks -d 1.1.1.1 -e 9999
接下來,連接內網主機:
# proxychains.conf # socks5://1.1.1.1:1080 $ proxychains rdesktop 192.168.0.100:3389
比如說,我們想要將內網3389端口的數據轉發至VPS:
// 目標主機 ./iox fwd -r 192.168.0.100:3389 -r *1.1.1.1:8888 -k 656565 // 我們的VPS ./iox fwd -l *8888 -l 33890 -k 656565
此時,目標主機和VPS:8888之間的流量將會被加密,預共享的密鑰是'AAA',iox會用這個密鑰生成種子密鑰和nonce(正常來講,不應該復用nonce。但是考慮到iox的加密功能僅僅為了繞過IDS等設備,為了不額外分配空間,TCP流加密會復用nonce),并用Xchacha20流加密 (在v0.3版本中用Xchacha20替換掉了AES-CTR)。
因此,“*”符號應該成對使用:
./iox fwd -l 1000 -r *127.0.0.1:1001 -k 000102 ./iox fwd -l *1001 -r *127.0.0.1:1002 -k 000102 ./iox fwd -l *1002 -r *127.0.0.1:1003 -k 000102 ./iox proxy -l *1003 -k 000102 $ curl google.com -x socks5://127.0.0.1:1000
除此之外,你還可以把iox當作一個簡單的ShadowSocks來使用:
// ssserver ./iox proxy -l *9999 -k 000102 // sslocal ./iox fwd -l 1080 -r *VPS:9999 -k 000102
此時,我們只需要在命令行參數中添加一個“-u”即可:
./iox fwd -l 53 -r *127.0.0.1:8888 -k 000102 -u ./iox fwd -l *8888 -l *9999 -k 000102 -u ./iox fwd -r *127.0.0.1:9999 -r 8.8.8.8:53 -k 000102 -u
注意:當你做多級連接的轉發時,Remote2Remote-UDP-mode必須最后一個被啟動,也就是上面示例中的第三條命令。其次,UDP轉發可能會有一些不合預期的行為。
以上是“iox是什么工具”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。