使用ssh隧道做三层流量代理( 二 )
文章插图
-w any:any时 , 系统自动选择下一个可用tun序号 , 当然也可以收到指定可用的tun序号 , 比如-w 0:0 。
乍一看 , 可能会觉得在目标使用root登录我们的vps有点危险 , 不过让他不返回shell之后 , 目标进入我们的当前的会话应该也无法从已有的隧道spawn一个shell出来 , 并且在命令行参数中也无法看到密码 , 不考虑泄露ip的风险的话 , 实际上的风险是可控的 。
然后是配置网卡 , 在我们的vps执行如下命令 , 设置本地网卡地址为1.1.1.1 , 掩码32位 , 因为是要建立一个点对点的连接 , 所以设置对端地址为1.1.1.2:
文章插图
在目标执行执行如下命令 , 设置本地ip为1.1.1.2 , 32位掩码 , 同样是点对点连接 , 设置对面ip为1.1.1.1 。
文章插图
随后分别把目标和vps的网卡启动 。
文章插图
文章插图
因为我们要将流量代理进目标内网 , 所以我们要在目标上开启内核流量转发功能 , 并且通过iptables把来自1.1.1.2的流量转发到eth0网卡上去 。
文章插图
然后在vps设置一个路由 , 把网关设置成对端的ip(也就是目标上的tun0的本地ip) , 把发向目标内网网段的流量通过点对点连接 , 也就是tun0转发进去 。
文章插图
至此 , 整个配置过程就结束了 , 理论上讲对端ip可以是任意的(任意一个用不到的ip) , 但本地ip一定是正确 , 因为会影响你接收ICMP error的数据包 。
我在本地打开另一台win10机器 。
文章插图
在vps上ping一下它 , 成功ping通 。
文章插图
使用nc监听一个端口并传输数据 , 确定是本地机器 。
文章插图
文章插图
目前看来使用是没有问题了 , 但是稳定性和隐蔽性有待进一步测试 。
测试过程使用的命令文字版 , 为了方便复制:
VPS:
ip addr add 1.1.1.1/32 peer 1.1.1.2 dev tun0
ip link set tun0 up
route add -net 192.168.64.0/24 gw 1.1.1.2
目标:
ip addr add 1.1.1.2/32 peer 1.1.1.1 dev tun0
ip link set tun0 up
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 1.1.1.1 -o eth0 -j MASQUERADE
No.8 参考链接
▼稿件合作 15558192959
小E微信号:Eanquan0914
- 会员|美容院使用会员管理软件给顾客更好的消费体验!
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面
- QuestMobile|QuestMobile:百度智能小程序月人均使用个数达9.6个
- 轻松|使用 GIMP 轻松地设置图片透明度
- 电池容量|Windows 自带功能查看笔记本电脑电池使用情况,你的容量还好吗?
- 撕破脸|使用华为设备就罚款87万,英政府果真要和中国“撕破脸”?
- 冲突|智能互联汽车:通过数据托管模式解决数据使用方面的冲突
- 鼓励|(经济)商务部:鼓励引导商务领域减少使用塑料袋等一次性塑料制品
- 机身|轻松使用一整天,OPPO K7x给你不断电体验
- 屏幕|一台realmeq2的两天使用体验