目录
前言
由于全球ipv4地址资源的紧张,大多数中国用户并不能得到一个(唯一的、静态的)ipv4的地址,而很多人(比如我)身为一个没有钱的人便更不可能拥有。因为在家中搭建了一台code-server服务器,但是在其他地方并不能访问,很是苦恼。为了解决当下的问题,满足当前的需求,内网穿透这一方法进入了视野。
目前市场上能够实现内网穿透的产品十分之多,例如花生壳等。不过他们都有一些共同特点:贵、慢(无法忍受)。所以,frp成为了一个选项。frp在GitHub上开源的一个项目,现在已经比较成熟了。更值得一提的是,市面上很多内网穿透的工具其实都是对frp的一个装封,如sakura frp。这里贴上frp的仓库地址:frp github
那么,如何搭建一个内网穿透服务器呢?国内的服务商有腾讯、雨云。本次,我们使用雨云。
创建服务器
创建用户
访问这个地址: https://www.rainyun.com/NDIyMDA4_
点击[登入/注册], 再点击[暂无账号? 点击注册], 输入用户名、密码、重复密码,点击[我已阅读并接受 服务条款],再点击[注册]。(此地址是有优惠的,如果用官网访问,请输入优惠码NDIyMDA4)
然后访问登入界面,输入刚才注册的用户名密码,登入进去。
购买服务器
访问购买云服务器 | 雨云, 购买一个你心仪的服务器(Ubuntu系统)(国内用户建议选择内地机房,因为延迟低,比如宿迁和十堰,其中推荐十堰,因为IP便宜,如果预算充足选择宿迁更好,选择2核2G)。
购买好后,点击管理,记住公网IP地址(xxx.xxx.xxx.xxx)、远程用户名(一般是root)、远程密码。
安装FRP
服务端
下载: frps-0.59.0
打开cmd
, 输入sftp 远程用户名@公网IP地址
+ 密码,输入以下内容:
lcd [下载的frps路径(目录), 如frps路径是e:\xx\frps, 输入e:\xx] cd /root/ put frps exit
再输入ssh 远程用户名@公网IP地址
+密码,连接上服务器。
输入:
sudo apt install vim sudo cd /root/ sudo vim frps.toml
摁下i
,输入:
bindPort = (随便一个端口)
摁下esc
, 输入:wq
(保存退出)。
之后,就可以使用/root/frps -c /root/frps.toml
进行启动了。
客户端
以上是服务端。那么客户端呢?
下载: frpc-0.59.0
只要将服务端安装代码中的frps
替换成frpc
就行了。
配置文件frpc.toml
:
serverAddr = (相对于客户端的雨云的远程IP地址) serverPort = (上文的'bindPort') [[proxies]] name = (随便起个英文名) type = (协议,如tcp、udp) localIP = (相对于客户端的项目IP) localPort = (项目端口) remotePort = (远程端口,如写入6000,启动后访问 '雨云IP:6000', 不能是上文的'serverPort')
白嫖积分
自动化
现在安装完了frp, 还能做点什么呢?
对了, 雨云有积分,2000积分=1元。我们可以赚取积分。
访问赚取积分 | 雨云
我们看到:
(我已经完成了一些)。
每天签到能获得300积分(0.15元)!
但如果忘了,就获取不了。我们可以在雨云服务器上设置自动化:
打开
cmd
, 输入ssh 远程用户名@公网IP地址
+ 密码,输入以下内容:
sudo apt install cron sudo service cron restart crontab -e
输入/usr/bin/vim.basic那行的编号。按下
i
,输入:
@daily curl --location --request POST 'https://api.v2.rainyun.com/user/reward/tasks' --header 'x-api-key: [你的API密钥]' --header 'User-Agent: Apifox/1.0.0 (https://apifox.com)' --header 'Content-Type: application/json' --data-raw '{"task_name": "每日签到"}'
其中,
[你的API密钥]
替换为下文获取的API密钥。输入:esc
+:wq
, 保存退出。
最后,输入sudo service cron restart
使它立即生效。
获取API密钥
访问账户设置 | 雨云。
如果API密钥为空,点击重新生成
。
然后点击复制
就可以了。
请务必妥善保管您的API密钥,拥有密钥等于拥有您的账号操作的一切权限, 如自行泄露密钥导致损失雨云将不承担任何责任。 (摘自官网)