准备:
买一台公网主机。
一个域名。阿里云买。
配置域名:
创建两个dns服务器:比如ns1 ns2
修改dns服务器,填刚刚创建的两个dns服务器名:
添加两条A记录。主记录填ns1 ns2,就是刚刚创建的dns服务器,记录值填公网ip:
xray服务端配置:
下载最新xray。https://github.com/chaitin/xray
./xray config
根据下图配置config文件:
reverse:
db_file_path: "./xxx.db" # 反连平台数据库文件位置, 这是一个 KV 数据库
token: "xxxxx" # 和客户端一致。反连平台认证的 Token, 独立部署时不能为空
http:
enabled: true
listen_ip: 0.0.0.0
listen_port: "4444" #和客户端一致
ip_header: "" # 在哪个 http header 中取 ip,为空代表从 REMOTE_ADDR 中取
dns:
enabled: true
listen_ip: 0.0.0.0
domain: "xxxx.cn" # 自己购买域名,最好是阿里云,因为可以自定义dnshost。DNS 域名配置。
is_domain_name_server: false # 是否修改了域名的 ns 为反连平台,如果是,那 nslookup 等就不需要指定 dns 了
resolve: # DNS 静态解析规则
- type: A # A, AAAA, TXT 三种
record: ns2
value: xx.xx.xx.xx #自己公网主机ip
ttl: 60
- type: A
record: ns1
value: 8
xx.xx.xx.xx #自己公网主机ip
ttl: 60
client:
remote_server: false # 是否是独立的远程 server,如果是要在下面配置好远程的服务端地址
http_base_url: "http://xx.xx.xx.xx:4444" # 自己公网ip+端口。默认将根据 ListenIP 和 ListenPort 生成,该地址是存在漏洞的目标反连回来的地址, 当反连平台前面有反代、绑定域名、端口映射时需要自行配置
dns_server_ip: "xx.xx.xx.xx" #自己公网ip。 和 http_base_url 类似,实际用来访问 dns 服务器的地址
xray客户端配置:
xray根目录配置config文件
reverse:
db_file_path: "./xxxx.db" # 反连平台数据库文件位置, 这是一个 KV 数据库
token: "xxxxx" # 随便填,自己记住,用于登录可视化界面校验 。反连平台认证的 Token, 独立部署时不能为空。
http:
enabled: false
listen_ip: 0.0.0.0
listen_port: ""
ip_header: "" # 在哪个 http header 中取 ip,为空代表从 REMOTE_ADDR 中取
dns:
enabled: false
listen_ip: 0.0.0.0
domain: "" # DNS 域名配置
is_domain_name_server: false # 是否修改了域名的 ns 为反连平台,如果是,那 nslookup 等就不需要指定 dns 了
resolve: # DNS 静态解析规则
- type: A # A, AAAA, TXT 三种
record: localhost
value: 127.0.0.1
ttl: 60
client:
remote_server: true # 是否是独立的远程 server,如果是要在下面配置好远程的服务端地址
http_base_url: "http://xx.xx.xx.xx:4444" # 自己公网ip+端口。默认将根据 ListenIP 和 ListenPort 生成,该地址是存在漏洞的目标反连回来的地址, 当反连平台前面有反代、绑定域名、端口映射时需要自行配置
dns_server_ip: "xx.xx.xx.xx" # 自己公网ip。和 http_base_url 类似,实际用来访问 dns 服务器的地址
服务端开启:
./xray reverse
访问web,输入token:
测试dns
右边的DNS,点击生成一个域名
直接ping,在dns一栏有记录就没问题。
测试http
右边的http,点击生成一个域名
curl -v xxxx.xx.cn
左边http一栏有记录就代表没问题。