diff --git a/app/bot.php b/app/bot.php
index 6279ee9..d7392c1 100644
--- a/app/bot.php
+++ b/app/bot.php
@@ -336,6 +336,9 @@ class Bot
case preg_match('~^/changeFakeDomain$~', $this->input['callback'], $m):
$this->changeFakeDomain();
break;
+ case preg_match('~^/selfFakeDomain$~', $this->input['callback'], $m):
+ $this->selfFakeDomain();
+ break;
case preg_match('~^/changeTGDomain$~', $this->input['callback'], $m):
$this->changeTGDomain();
break;
@@ -3389,6 +3392,10 @@ DNS-over-HTTPS with IP:
'text' => $this->i18n('changeFakeDomain'),
'callback_data' => "/changeFakeDomain",
],
+ [
+ 'text' => $this->i18n('selfFakeDomain'),
+ 'callback_data' => "/selfFakeDomain",
+ ],
];
if ($c['inbounds'][0]['settings']['clients'][0]['id']) {
$data[] = [
@@ -3912,16 +3919,26 @@ DNS-over-HTTPS with IP:
];
}
- public function setFakeDomain($domain)
+ public function setFakeDomain($domain, $self = false)
{
$c = $this->getXray();
$c['inbounds'][0]['streamSettings']['realitySettings']['serverNames'][0] = $domain;
- $c['inbounds'][0]['streamSettings']['realitySettings']['dest'] = "$domain:443";
+ $c['inbounds'][0]['streamSettings']['realitySettings']['dest'] = $self ? "10.10.1.2:443" : "$domain:443";
$this->restartXray($c);
$this->setUpstreamDomain($domain);
$this->xray();
}
+ public function selfFakeDomain()
+ {
+ $c = $this->getPacConf();
+ if (!empty($c['domain'])) {
+ $this->setFakeDomain($c['domain'], 1);
+ } else{
+ $this->answer($this->input['callback_id'], 'empty domain', true);
+ }
+ }
+
public function setBackup($text)
{
$text = trim($text);
diff --git a/app/i18n.php b/app/i18n.php
index e87656e..d415299 100644
--- a/app/i18n.php
+++ b/app/i18n.php
@@ -263,7 +263,11 @@ $i = [
],
'changeFakeDomain' => [
'en' => 'changeFakeDomain',
- 'ru' => 'установить фейковый домен',
+ 'ru' => 'фейковый домен',
+ ],
+ 'selfFakeDomain' => [
+ 'en' => 'selfFakeDomain',
+ 'ru' => 'домен бота',
],
'page' => [
'en' => 'pagination',
@@ -310,11 +314,11 @@ $i = [
'ru' => 'сторонний браузер',
],
'browser_notify_on' => [
- 'en' => 'the web panel can now be opened in any browser',
- 'ru' => 'веб панель теперь может быть открыта в любом браузере',
+ 'en' => 'the web panel can be opened in any browser',
+ 'ru' => 'веб панель может быть открыта в любом браузере',
],
'browser_notify_off' => [
- 'en' => 'the web panel can no longer be opened in any browser',
- 'ru' => 'веб панель теперь не может быть открыта в любом браузере',
+ 'en' => 'web panel is only available from telegram',
+ 'ru' => 'веб панель доступна только из телеграмма',
],
];
diff --git a/app/login.html b/app/login.html
new file mode 100644
index 0000000..8852f2f
--- /dev/null
+++ b/app/login.html
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+ Login
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/config/nginx.conf b/config/nginx.conf
index bd85193..31d5303 100644
--- a/config/nginx.conf
+++ b/config/nginx.conf
@@ -22,15 +22,17 @@ http {
set_real_ip_from 10.10.0.10;
server {
- listen 80 default_server;
- listen 443 ssl http2 default_server proxy_protocol;
+ listen 10.10.0.2:80 default_server;
+ listen 10.10.0.2:443 ssl http2 default_server proxy_protocol;
ssl_certificate /certs/self_public;
ssl_certificate_key /certs/self_private;
access_log /logs/nginx_default_access;
location / {
- return 444;
+ root /app;
+ index login.html;
+ try_files $uri $uri/ =404;
}
location /adguard/ {
access_log /logs/nginx_adguard_access;
@@ -73,11 +75,12 @@ http {
#-domain
# server {
- # listen 80;
+ # listen 10.10.0.2:80;
# server_name ;
#-domain
#-ssl
- # listen 443 ssl http2 proxy_protocol;
+ # listen 10.10.0.2:443 ssl http2 proxy_protocol;
+ # listen 10.10.1.2:443 ssl http2;
# ssl_certificate /certs/cert_public;
# ssl_certificate_key /certs/cert_private;
#-ssl
@@ -86,7 +89,9 @@ http {
# access_log /logs/nginx_domain_access;
# location / {
- # return 444;
+ # root /app;
+ # index login.html;
+ # try_files $uri $uri/ =404;
# }
# location /adguard/ {
# access_log /logs/nginx_adguard_access;
diff --git a/config/nginx_default.conf b/config/nginx_default.conf
index bd85193..31d5303 100644
--- a/config/nginx_default.conf
+++ b/config/nginx_default.conf
@@ -22,15 +22,17 @@ http {
set_real_ip_from 10.10.0.10;
server {
- listen 80 default_server;
- listen 443 ssl http2 default_server proxy_protocol;
+ listen 10.10.0.2:80 default_server;
+ listen 10.10.0.2:443 ssl http2 default_server proxy_protocol;
ssl_certificate /certs/self_public;
ssl_certificate_key /certs/self_private;
access_log /logs/nginx_default_access;
location / {
- return 444;
+ root /app;
+ index login.html;
+ try_files $uri $uri/ =404;
}
location /adguard/ {
access_log /logs/nginx_adguard_access;
@@ -73,11 +75,12 @@ http {
#-domain
# server {
- # listen 80;
+ # listen 10.10.0.2:80;
# server_name ;
#-domain
#-ssl
- # listen 443 ssl http2 proxy_protocol;
+ # listen 10.10.0.2:443 ssl http2 proxy_protocol;
+ # listen 10.10.1.2:443 ssl http2;
# ssl_certificate /certs/cert_public;
# ssl_certificate_key /certs/cert_private;
#-ssl
@@ -86,7 +89,9 @@ http {
# access_log /logs/nginx_domain_access;
# location / {
- # return 444;
+ # root /app;
+ # index login.html;
+ # try_files $uri $uri/ =404;
# }
# location /adguard/ {
# access_log /logs/nginx_adguard_access;
diff --git a/docker-compose.yml b/docker-compose.yml
index e4dc2a2..2ec6524 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -12,6 +12,10 @@ networks:
ipam:
config:
- subnet: 10.10.0.0/24
+ xray:
+ ipam:
+ config:
+ - subnet: 10.10.1.0/24
volumes:
adguard:
@@ -70,6 +74,7 @@ services:
- ./config/sshd_config:/etc/ssh/sshd_config
- ./logs/:/logs/
- ./app/webapp:/app
+ - ./app/login.html:/app/login.html
ports:
- 80:80
hostname: nginx
@@ -87,6 +92,8 @@ services:
networks:
default:
ipv4_address: 10.10.0.2
+ xray:
+ ipv4_address: 10.10.1.2
logging: *default-logging
php:
image: mercurykd/vpnbot-php:1.2
@@ -417,6 +424,8 @@ services:
networks:
default:
ipv4_address: 10.10.0.9
+ xray:
+ ipv4_address: 10.10.1.9
logging: *default-logging
oc:
image: mercurykd/vpnbot-oc:1.2
diff --git a/version b/version
index 14c1ea8..19183e1 100644
--- a/version
+++ b/version
@@ -1,3 +1,5 @@
+20.03.2024 v1.11
+- XTLS-Reality steal from yourself
18.03.2024 v1.10
- MTProto Fake-TLS
17.03.2024 v1.9