Compare commits
39 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 21b7a4816f | |||
| 51ecb815ba | |||
| 66cee61d41 | |||
| 66225917fe | |||
| be227f6a33 | |||
| 37d392a240 | |||
| 565573cfc2 | |||
| 3813f43b92 | |||
| f34427c13c | |||
| c2219e3657 | |||
| 0d7426e785 | |||
| c56fe4ff78 | |||
| b0e6835ac9 | |||
| f29d366aef | |||
| 9eb15b9b45 | |||
| 954cfe0346 | |||
| 0d21eadcaa | |||
| f0b43e791d | |||
| 0297417a63 | |||
| 7449e8bba3 | |||
| ad7351dc9a | |||
| 5c5c537d62 | |||
| edc877f149 | |||
| ea07b0da42 | |||
| 3d53691106 | |||
| 5f38e73d6b | |||
| bb3a807869 | |||
| 3ed487cbce | |||
| 1d69729bf1 | |||
| 387f1618b1 | |||
| 9da11e2b35 | |||
| 0b95c75005 | |||
| 62c4314beb | |||
| 1dfb3da089 | |||
| 7358730864 | |||
| 57cd1019f5 | |||
| dfbcd67f83 | |||
| 5016c6bda3 | |||
| bc3914c3b9 |
+2
-1
@@ -21,4 +21,5 @@ update/*
|
||||
|
||||
override.env
|
||||
override.html
|
||||
override.php
|
||||
override.php
|
||||
docker-compose.override.yml
|
||||
+855
-57
File diff suppressed because it is too large
Load Diff
@@ -369,4 +369,8 @@ $i = [
|
||||
'en' => 'copy',
|
||||
'ru' => 'копировать',
|
||||
],
|
||||
'restart' => [
|
||||
'en' => 'restart',
|
||||
'ru' => 'перезагрузка',
|
||||
],
|
||||
];
|
||||
|
||||
+2
-1
@@ -18,6 +18,7 @@ if (!empty($bot->selfupdate)) {
|
||||
$bot->offWarp();
|
||||
}
|
||||
$bot->dontshowcron = 1;
|
||||
$bot->adguardSync();
|
||||
$bot->sslip();
|
||||
$bot->adguardSync();
|
||||
$bot->syncDeny();
|
||||
$bot->cleanDocker();
|
||||
|
||||
@@ -11,6 +11,11 @@ events {
|
||||
}
|
||||
|
||||
stream {
|
||||
include /etc/nginx/deny;
|
||||
log_format basic '$remote_addr [$time_local] '
|
||||
'$protocol $status $bytes_sent $bytes_received';
|
||||
access_log /logs/upstream_access basic;
|
||||
|
||||
upstream other {
|
||||
server ng:443;
|
||||
}
|
||||
|
||||
+2
-1
@@ -42,7 +42,8 @@
|
||||
}
|
||||
],
|
||||
"log": {
|
||||
"loglevel": "info"
|
||||
"loglevel": "info",
|
||||
"access": "/logs/xray"
|
||||
},
|
||||
"outbounds": [
|
||||
{
|
||||
|
||||
+7
-2
@@ -29,6 +29,7 @@ services:
|
||||
volumes:
|
||||
- ./config/.profile:/root/.ashrc:ro
|
||||
- ./config/upstream.conf:/etc/nginx/nginx.conf
|
||||
- ./config/deny:/etc/nginx/deny
|
||||
- ./scripts/start_upstream.sh:/start_upstream.sh
|
||||
- ./ssh:/ssh
|
||||
- ./config/sshd_config:/etc/ssh/sshd_config
|
||||
@@ -95,7 +96,7 @@ services:
|
||||
ipv4_address: 10.10.1.2
|
||||
logging: *default-logging
|
||||
php:
|
||||
image: mercurykd/vpnbot-php:1.5
|
||||
image: mercurykd/vpnbot-php:1.6
|
||||
build:
|
||||
dockerfile: dockerfile/php.dockerfile
|
||||
args:
|
||||
@@ -118,6 +119,7 @@ services:
|
||||
- ./update:/update
|
||||
- ./.git:/.git
|
||||
- ./singbox_windows:/singbox
|
||||
- ./docker-compose.override.yml:/docker/compose
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
environment:
|
||||
IP: ${IP}
|
||||
@@ -145,7 +147,7 @@ services:
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
service:
|
||||
image: mercurykd/vpnbot-php:1.5
|
||||
image: mercurykd/vpnbot-php:1.6
|
||||
build:
|
||||
dockerfile: dockerfile/php.dockerfile
|
||||
args:
|
||||
@@ -158,7 +160,9 @@ services:
|
||||
- ./ssh:/ssh
|
||||
- ./app:/app
|
||||
- ./logs/:/logs/
|
||||
- ./version:/version
|
||||
- ./update:/update
|
||||
- ./.git:/.git
|
||||
- ./scripts/start_service.sh:/start_service.sh
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
environment:
|
||||
@@ -412,6 +416,7 @@ services:
|
||||
- ./config/sshd_config:/etc/ssh/sshd_config
|
||||
- ./config/xray.json:/xray.json
|
||||
- ./scripts/start_xray.sh:/start_xray.sh
|
||||
- ./logs:/logs
|
||||
hostname: xray
|
||||
container_name: xray-${VER}
|
||||
depends_on:
|
||||
|
||||
@@ -32,4 +32,6 @@ RUN apk add --no-cache --update php81 \
|
||||
&& mv sing-box-1.8.11-linux-amd64/sing-box /usr/bin \
|
||||
&& rm sing-box-1.8.11-linux-amd64.tar.gz \
|
||||
&& rm -rf /sing-box-1.8.11-linux-amd64
|
||||
ENV ENV="/root/.ashrc"
|
||||
RUN apk add openssh \
|
||||
&& mkdir /root/.ssh
|
||||
ENV ENV="/root/.ashrc"
|
||||
|
||||
@@ -3,7 +3,7 @@ b:
|
||||
u: # запуск контейнеров
|
||||
$(eval IP := $(shell curl -s -t 1 2ip.io || curl -s -t 1 ipinfo.io/ip || curl -s -t 1 ifconfig.me))
|
||||
bash ./update/update.sh &
|
||||
touch ./override.env
|
||||
touch ./override.env ./docker-compose.override.yml
|
||||
IP=$(IP) VER=$(shell git describe --tags) docker compose --env-file ./.env --env-file ./override.env up -d --force-recreate
|
||||
d: # остановка контейнеров
|
||||
-kill -9 $(shell cat ./update/update_pid) > /dev/null
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
make d
|
||||
rm /etc/systemd/resolved.conf.d/adguardhome.conf
|
||||
mv /etc/resolv.conf.backup /etc/resolv.conf
|
||||
systemctl reload-or-restart systemd-resolved
|
||||
make u
|
||||
@@ -1,8 +0,0 @@
|
||||
mkdir /etc/systemd/resolved.conf.d
|
||||
echo "[Resolve]
|
||||
DNS=127.0.0.1
|
||||
DNSStubListener=no" > /etc/systemd/resolved.conf.d/adguardhome.conf
|
||||
mv /etc/resolv.conf /etc/resolv.conf.backup
|
||||
ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
|
||||
systemctl reload-or-restart systemd-resolved
|
||||
make d u
|
||||
+1
-11
@@ -10,17 +10,7 @@ apt install -y \
|
||||
iproute2 \
|
||||
xtables-addons-common \
|
||||
xtables-addons-dkms
|
||||
mkdir -p /etc/apt/keyrings
|
||||
curl -fsSL https://download.docker.com/linux/$(lsb_release -is | tr '[:upper:]' '[:lower:]')/gpg | gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg
|
||||
echo \
|
||||
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/$(lsb_release -is | tr '[:upper:]' '[:lower:]') \
|
||||
$(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
apt update
|
||||
apt install -y docker-ce docker-ce-cli containerd.io
|
||||
DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
|
||||
mkdir -p $DOCKER_CONFIG/cli-plugins
|
||||
curl -SL https://github.com/docker/compose/releases/download/v2.29.6/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
|
||||
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
|
||||
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
|
||||
git clone https://github.com/mercurykd/vpnbot.git
|
||||
cd ./vpnbot
|
||||
echo "<?php
|
||||
|
||||
@@ -3,7 +3,6 @@ ssh-keygen -m PEM -t rsa -f /ssh/key -N ''
|
||||
openssl req -newkey rsa:2048 -sha256 -nodes -x509 -days 365 -keyout /certs/self_private -out /certs/self_public -subj "/C=NN/ST=N/L=N/O=N/CN=$IP"
|
||||
php init.php
|
||||
if [[ -f "/start" && -f "/ssh/key.pub" && -s "/ssh/key.pub" ]]; then
|
||||
php cron.php &
|
||||
unitd --log /logs/unit_error
|
||||
curl -X PUT --data-binary @/config/unit.json --unix-socket /var/run/control.unit.sock http://localhost/config
|
||||
pkill unitd
|
||||
|
||||
@@ -1 +1,5 @@
|
||||
php service.php
|
||||
cat /ssh/key.pub > /root/.ssh/authorized_keys
|
||||
ssh-keygen -A
|
||||
exec /usr/sbin/sshd -D -e "$@" &
|
||||
php service.php
|
||||
php cron.php
|
||||
@@ -6,7 +6,7 @@ After=docker.service
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
WorkingDirectory=path
|
||||
ExecStartPre=/bin/sh -c "touch ./override.env"
|
||||
ExecStartPre=/bin/sh -c "touch ./override.env ./docker-compose.override.yml"
|
||||
ExecStart=/bin/sh -c "IP=$(curl https://ipinfo.io/ip) VER=$(git describe --tags) docker compose --env-file ./.env --env-file ./override.env up -d --force-recreate"
|
||||
ExecStartPost=/bin/sh -c "bash ./update/update.sh &"
|
||||
ExecStop=/bin/sh -c "docker compose down --remove-orphans"
|
||||
|
||||
+14
-11
@@ -10,20 +10,23 @@ do
|
||||
if [[ -n "$cmd" ]]
|
||||
then
|
||||
key=$(cat $pwd/update/key)
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "останавливаю бота"/')"
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "stopping the bot"/')"
|
||||
docker compose down --remove-orphans
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "очищаю директорию"/')"
|
||||
git reset --hard && git clean -fd
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "скачиваю обновление"/')"
|
||||
git fetch
|
||||
if [[ -n "$branch" ]]
|
||||
if [[ "$cmd" == "1" ]]
|
||||
then
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "меняю ветку"/')"
|
||||
git checkout -t origin/$branch || git checkout $branch
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "clearing the directory"/')"
|
||||
git reset --hard && git clean -fd
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "downloading the update"/')"
|
||||
git fetch
|
||||
if [[ -n "$branch" ]]
|
||||
then
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "changing branch"/')"
|
||||
git checkout -t origin/$branch || git checkout $branch
|
||||
fi
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "applying updates"/')"
|
||||
git pull > ./update/message
|
||||
fi
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "применяю обновления"/')"
|
||||
git pull > ./update/message
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "запускаю бота"/')"
|
||||
curl -H "Content-Type: application/json" -X POST https://api.telegram.org/bot$key/editMessageText -d "$(cat $pwd/update/curl | sed 's/"text":"~t~"/"text": "launching the bot"/')"
|
||||
IP=$(curl ipinfo.io/ip) VER=$(git describe --tags) docker compose --env-file ./.env --env-file ./override.env up -d --force-recreate
|
||||
bash $pwd/update/update.sh &
|
||||
> $pwd/update/key
|
||||
|
||||
@@ -1,3 +1,38 @@
|
||||
18.11.2024 v1.106
|
||||
- фикс отвала бота при пустых логах телеги
|
||||
17.11.2024 v1.105
|
||||
- фикс установки домена при первом запуске
|
||||
16.11.2024 v1.104
|
||||
- единая механика закрепления бэкапа
|
||||
- фикс текста уведомления о новой версии
|
||||
16.11.2024 v1.103
|
||||
- фикс уведомления о новой версии
|
||||
16.11.2024 v1.102
|
||||
- переделан раздел списка ip под управление кнопками
|
||||
- возможность добавить свои айпи в blocklist/whitelist
|
||||
15.11.2024 v1.101
|
||||
- кнопка добавления https://github.com/legiz-ru/sb-rule-sets/raw/main/ru-bundle.lst
|
||||
- переделан раздел списка ip для читаемости
|
||||
15.11.2024 v1.100
|
||||
- несколько режимов silence для сканера
|
||||
- анализ сканера скидывает файл всех найденных айпи
|
||||
- команда /searchLogs (пока только для айпи)
|
||||
- логи переехали в меню сканера
|
||||
- обновление текстов и подсказок
|
||||
14.11.2024 v1.99.1
|
||||
- анализ логов и бан айпишников, фиксы
|
||||
14.11.2024 v1.99
|
||||
- анализ логов и бан айпишников
|
||||
11.11.2024 v1.98
|
||||
- фикс заполнения clientId при наполнении белого списка клиентов adg
|
||||
09.11.2024 v1.97
|
||||
- новая ссылка на чат поддержки. пожалуйста не размещайте ее на форумах и чатах во избежание набега leafers https://www.youtube.com/watch?v=9tlNJmjuKD4
|
||||
06.11.2024 v1.96
|
||||
- фикс пароля adguard
|
||||
- таймаоут для проверки статуса adguard
|
||||
04.11.2024 v1.95
|
||||
- отключение портов контейнеров из меню
|
||||
- перезагрузка из меню
|
||||
04.11.2024 v1.94
|
||||
- xray: возможность перемещать и переименовывать outbound заполняемый ботом
|
||||
04.11.2024 v1.93
|
||||
|
||||
Reference in New Issue
Block a user