当前位置:首页技术教程使用VPS的GRE隧道过滤DDoS
使用VPS的GRE隧道过滤DDoS
°
  • 素材类型: 资源-素材
  • 上传时间:

什么是GRE隧道?

类似于代理,GRE隧道使您可以将来自VPS的流量(包括DDoS过滤)传递到另一个远程目标。GRE隧道允许所有流量通过,而不仅仅是HTTP。借助GRE隧道,您可以提供服务,并从任何类型的服务器(音频,FTP,SSH,SCP,视频等)传递任何类型的内容。

可以使用GRE隧道做什么?

当您想使用我们的DDoS过滤服务来保护太大的服务(例如游戏服务器,Java应用程序,大型数据库驱动的应用程序等)时,GRE隧道非常方便。没有对目标服务器的root访问权,或者正在运行大型Windows部署?查看我们将流量重定向牵引到您的远程服务器的替代方法。
注意:如果您正在隧道连接到OVH服务器,则您的内核很可能没有GRE支持。您将需要使用IPIP隧道。

支持的操作系统

可以使用Windows创建和转发GRE隧道

在本文档中,我们仅介绍Linux的GRE隧道配置。

本指南在KVM或者OpenVZ的服务器上都可以起作用

前提

  • BuyVM VPS上安装的iptables(大多数情况下已包括在内)
  • iproute2(几乎所有最新的Linux发行版中都包含)
  • 具有GRE支持的内核(Linux默认包含该组件-ip_gre内核模块)
  • 您需要转发到目的地的端口列表

隧道设置

首先,我们需要建立隧道。

在BuyVM VPS上,请执行以下命令:

 echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf sysctl -p iptunnel add gre1 mode gre local YOUR_UNFILTERED_IP remote DESTINATION_SERVER_IP ttl 255 ip addr add 192.168.168.1/30 dev gre1 ip link set gre1 up

在要保护的远程服务器上,运行以下命令:

 iptunnel add gre1 mode gre local DESTINATION_SERVER_IP remote YOUR_UNFILTERED_IP ttl 255 ip addr add 192.168.168.2/30 dev gre1 ip link set gre1 up

您将始终希望使用所有GRE隧道的未过滤 IP地址来形成GRE,以确保您不会遇到任何类型的MTU问题或触发DDOS保护。

请注意每个更改的第一行,以标记要在本地和远程使用的IP。第二行记录每个端点。在/ 30中,可以使用2个IP:.1和.2。

使用Ping测试您的新GRE隧道

在VPS上,您现在应该可以ping了192.168.168.2

为了完整起见,请192.168.168.1从目标服务器测试ping 。

设置源路由表

需要源路由条目,以确保通过GRE隧道传入的数据被发回GRE隧道。

请在目标服务器上执行以下命令。

echo '100 BUYVM' >> /etc/iproute2/rt_tables ip rule add from 192.168.168.0/30 table BUYVM ip route add default via 192.168.168.1 table BUYVM

请注意,echo命令只需要运行一次。该条目将保存到/ etc / iproute2 / rt_tables中,直到您手动将其删除。

初始NAT条目以通过GRE隧道移动数据

NAT用于通过GRE将数据传递到另一端。

虽然可以使用已购买的/ 29分配的基于KVM的VPS,但本指南不涵盖此内容。

在VPS上,运行以下命令:

 iptables -t nat -A POSTROUTING -s 192.168.168.0/30 ! -o gre+ -j SNAT --to-source 源ip

测试出站连接

在目标服务器上,您可以运行以下命令之一,以查看隧道是否正确传递了流量:

 curl http://www.cpanel.net/showip.cgi --interface 192.168.168.2
wget http://www.cpanel.net/showip.cgi --bind-address = 192.168.168.2 -q -O-

IP应该是您的防御节点的IP。

通过GRE隧道转发端口

为了使事情变得容易,我们将所有端口转发到后端服务器。

在VPS上运行以下命令:

iptables -t nat -A PREROUTING -d YOUR_FILTERED_IP -j DNAT --to-destination 192.168.168.2 
iptables -A FORWARD -d 192.168.168.2 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

如果您想更具体一点,可以添加:

-p tcp --dport 25565

例如,如果您只是想保护Minecraft服务器。

第一条规则设置实际的端口转发,第二条规则确保连接获得NAT,并正确匹配。

在这一点上,您应该能够YOUR_FILTERED_IP使用您的应用程序连接到目标端口,并通过GRE隧道传递而不会出现问题。

重新启动后重新启动GRE隧道

可以/etc/rc.local使用自己喜欢的编辑器进行编辑(甚至使用WINSCP),并将刚运行的所有命令exit 0放在底部。

选择发行版(如Debian)可能/etc/network/interfaces在启动时加入了GRE隧道,但这超出了本指南的范围。

温馨提示:

文章标题:使用VPS的GRE隧道过滤DDoS

文章链接:https://www.xiciw.com/jsjc/2959.html

更新时间:2024年03月28日

本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:xiciw#qq.com我们将第一时间处理!

资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。

                               

所有资源仅限于参考和学习,版权归原作者所有,更多请阅读菜鸟资源服务协议

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
Linux教程技术教程

Linux下使用tcpdump监听DNS查询

2024-3-28 14:40:37

技术教程

Centos更换阿里YUM源

2024-3-29 20:27:20

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索