如何使用Cloudflare Argo隧道保护源站?

不要让别人绕过Cloudflare保护并滥用您的源服务器!

Cloudflare是一个受欢迎的CDN和安全平台,为从小型到企业级的数百万个网站提供支持。当您为您的网站实施Cloudflare时,所有流量都将得到安全和加速。但是这仅适用于使用域名访问站点的情况。如果有人找出实际的服务器IP(源)并滥用它呢?

查找Cloudflare背后站点的服务器IP并不难。您可以在explained herehere找到如何做到这一点。您看,仅仅实施CDN和基于云的WAF是不够的。您还应考虑保护来源。

那么,解决方案是什么?

Argo Tunnel – Cloudflare提供的一种智能解决方案,用于保护源服务器免受直接攻击。

这是一个您需要在服务器上安装的守护程序,它在服务器与Cloudflare网络之间创建了一个加密隧道。零复杂的ACL/IP表配置。

好消息是,您不需要在PRO或更高的套餐下。即使您在免费套餐下也可以开始使用。您只需支付Argo订阅费用,价格从每月5美元起。

让我们开始安装和设置。

安装Cloudflare守护程序

  • 使用root或sudo特权登录源服务器
  • 下载最新的稳定包。我使用的是Ubuntu,因此其他操作系统的.deb文件,请查看official download page
wget https://bin.equinox.io/c/VdrWdbjqyF/cloudflared-stable-linux-amd64.deb
  • 安装下载的包
dpkg -i cloudflared-stable-linux-amd64.deb
  • 让我们验证版本以确保已安装
root@gf-prod:~# cloudflared --version
cloudflared version 2020.2.0 (built 2020-02-07-1653 UTC)
root@gf-prod:~#

太棒了!

验证守护程序

下一步是使用守护程序对Cloudflare进行身份验证。运行以下命令

cloudflared tunnel login
  • 它会提示您使用以下URL登录到Cloudflare并授权该站点。
root@gf-prod:~# cloudflared tunnel login
Please open the following URL and log in with your Cloudflare account:

https://dash.cloudflare.com/argotunnel?callback=https%3A%2F%2Flogin.argotunnel.com%XXXXX-XXX-XXXXXX%3B

Leave cloudflared running to download the cert automatically.
INFO[0030] Waiting for login...                         
INFO[0060] Waiting for login...                         
INFO[0090] Waiting for login...                         
INFO[0120] Waiting for login...                         
You have successfully logged in.
If you wish to copy your credentials to a server, they have been saved to:
/root/.cloudflared/cert.pem
root@gf-prod:~#
  • 授权后,您应该看到类似于此的内容。

启动隧道

让我们开始下面的隧道。

cloudflared tunnel --hostname [HOSTNAME] http://localhost:80

例如:

类似文章