推荐的域名申请网站
*https://www.namecheap.com/
域名便宜.com 最低只需要0.88刀一年
*https://my.freenom.com
有一些域名后缀是免费的 .ga .cf 等等
需要注册的是任何域名启用以后切记要去邮箱点击确认邮件来激活 国外购买的域名是需要在ICANN备案
不知道该如果从专业的角度说这个事情,作用就是让域名和IP进行一个映射从而让我们在访问服务器的时候不需要使用IP
推荐网站:https://dns.he.net
所有的操作都只可以在aws的服务器上进行
https://lightsail.aws.amazon.com
因为只知道AWS上面服务器控制机的API 而且AWS lightsail 重启变更换IP
完美科学上网 需要至少建立3台实例才可以完美的运行
一台用作为服务器控制机 一台用为转发机 一台机搭建科学上网服务
1:服务器控制机的作用是 每天定时重启 作用是重启更换IP
2:转发机 作用是我们只连接转发机 然后转发机和目标机(搭载了科学上网服务)在墙外进行数据传输
3: 科学上网机 顾名思义 就是搭建了科学上网的服务器
TIP: 至于为什么需要一台转发机?作用是中转!是因为我们在国内只连接转发机而目的机始终在国外,但因为我们从国内连接转发机,所以转发机会有被BAN的风险。
BAN一般都是在固定时间进行 比如每天上午10点,但BAN的是服务器IP,我们只要更换了IP以后就可以继续使用了。所以就需要控制机来控制转发机每天定时更换IP,这样就起到了永远不会被BAN的可能。BAN不BAN无所谓 反正我们每天都在换IP
系统debian8
这里可以使用秋水或者逗比的一键脚本
秋水(多版本合一)
wget --no-check-certificate -O s-all.sh https://raw.githubusercontent.com/teddysun/s_install/master/s-all.sh
chmod +x s-all.sh
./s-all.sh 2>&1 | tee s-all.log
逗比(多用户)
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/ssrmu.sh && chmod +x ssrmu.sh && bash ssrmu.sh
推荐使用 Ubuntu 系统
https://lightsail.aws.amazon.com/ls/webapp/account/advanced
会获得一个 AWSAccessKeyId 和 AWSSecretKey
apt update -y
apt install python-pip -y
pip install awscli --upgrade
或者
yum update -y
yum install python-pip -y
pip install awscli --upgrade
然后获得脚本
apt install wget -y
wget https://blog.wxlost.com/lightsailm/aws.bash && chmod +x aws.bash && ./aws.bash
配置其主要是让其使用到 AWSAccessKeyId 和 AWSSecretKey 如果提示让你填入 并且填入就基本OK
服务器控制机配置到这里先结束 接下来搭建 科学上网机器
系统debian8
使用逗比的一键脚本
原地址:https://doub.io/wlzy-20/
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/iptables-pf.sh && chmod +x iptables-pf.sh && bash iptables-pf.sh
两台服务器如果跨大区(比如一个日本一个新加坡)则目标服务器需要填外网IP 如果不跨大区 可使用内外IP 转发机选择内网IP
让我们的转发机 每天定是重启 从而起到自动更换IP的目的
在root@xxx
输入nano renewip.sh
以下代码以个人实际实例名称为准
我的这代码的意思是 关闭名字为Debian-512MB-Tokyo3-TO-Tokyo1的服务器30秒后 再开启
aws lightsail stop-instance --instance-name Debian-512MB-Tokyo3-TO-Tokyo1
sleep 30
aws lightsail start-instance --instance-name Debian-512MB-Tokyo3-TO-Tokyo1
如果有多台的话 请最好中间也加上 sleep 30 以免出现未重启
贴上以上代码 然后 ctrl + x 再按Y 保存 然后回车退出
然后再输入
crontab -e
选 /bin/nano 复制一下代码到最后
0 3 * * * /root/renewip.sh
这行代码的意思是每天凌晨3点重启服务
把以上代码加在最后一行前方注意前面不能有#
然后改一下时区
timedatectl set-timezone Asia/Hong_Kong
最后可以马上进行一下测试运行一下
bash /root/renewip.sh
看实例是否停止 30秒后 再开启
如果是 就成功了
至此3台机器就配置完毕了
域名映射的作用是让我们在客户端上服务器IP填写域名 而服务器每次重启以后IP会变动 从而我们不需要每次在服务器重启以后都需要在客户端内更改IP地址
先去域名网站 在购买的域名下更改dns (一般选择 custom dns或者namesevers) 一共会有多项
至少填入2项
ns1.he.net
ns2.he.net
ns3.he.net
ns4.he.net
ns5.he.net
然后打开 https://dns.he.net
选择add a new domain
填入购买的域名
然后点击 check delegaion
如果映射成功会没有那么多红字提醒
接下看操作看视频
继续配置 转发机 设置IP和域名的映射
首先安装curl
apt update && apt install curl
然后
curl -4 "xxxxxxxxxxxxxxxxxxxxxxx:[email protected]/nic/update?hostname=xxxxxxxxxxxxxxxxxxxxxxx"
xxxxx是你获得 ddns code yyyyy为你的域名
然后设置开启自动运行
crontab -e
选1 /bin/nano
最后一行添加
*/2 * * * * bash /root/update.sh
依旧前面不能有#
然後運行
nano /root/update.sh
把
curl -4 "http://yyyyyyyyyyyyyyyyyyy:[email protected]/nic/update?hostname=yyyyyyyyyyyyyyyyyyyyyy"
复制进去
贴上以后按 ctrl + x 再按Y 保存 然后回车退出
至此全部完成