Skip to content

Commit 3e79c31

Browse files
committed
fix
1 parent 32b6ac7 commit 3e79c31

3 files changed

Lines changed: 74 additions & 97 deletions

File tree

install_remnawave.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/bash
22

3-
SCRIPT_VERSION="3.0.3"
3+
SCRIPT_VERSION="3.0.3a"
44
UPDATE_AVAILABLE=false
55
DIR_REMNAWAVE="/usr/local/remnawave_reverse/"
66
LANG_FILE="${DIR_REMNAWAVE}selected_language"

src/caddy/install_node.sh

Lines changed: 72 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/bin/bash
2-
# Module: Install Node Only
2+
# Module: Install Node
33

4-
install_node_nginx() {
4+
install_node_caddy() {
55
# Load selfsteal templates module
66
load_selfsteal_templates_module
77

@@ -49,11 +49,7 @@ install_node_nginx() {
4949
exit 1
5050
fi
5151

52-
SELFSTEAL_BASE_DOMAIN=$(extract_domain "$SELFSTEAL_DOMAIN")
53-
54-
unique_domains["$SELFSTEAL_BASE_DOMAIN"]=1
55-
56-
cat > docker-compose.yml <<EOL
52+
cat > docker-compose.yml <<EOL
5753
x-common: &common
5854
ulimits:
5955
nofile:
@@ -69,104 +65,85 @@ x-logging: &logging
6965
max-file: 5
7066
7167
services:
72-
remnawave-nginx:
73-
image: nginx:1.28
74-
container_name: remnawave-nginx
75-
hostname: remnawave-nginx
76-
<<: [*common, *logging]
77-
network_mode: host
78-
volumes:
79-
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
80-
EOL
81-
}
82-
83-
installation_node() {
84-
echo -e "${COLOR_YELLOW}${LANG[INSTALLING_NODE]}${COLOR_RESET}"
85-
sleep 1
86-
87-
declare -A unique_domains
88-
install_node_nginx
89-
90-
declare -A domains_to_check
91-
domains_to_check["$SELFSTEAL_DOMAIN"]=1
92-
93-
handle_certificates domains_to_check "$CERT_METHOD" "$LETSENCRYPT_EMAIL"
94-
95-
if [ -z "$CERT_METHOD" ]; then
96-
local base_domain=$(extract_domain "$SELFSTEAL_DOMAIN")
97-
if [ -d "/etc/letsencrypt/live/$base_domain" ] && is_wildcard_cert "$base_domain"; then
98-
CERT_METHOD="1"
99-
else
100-
CERT_METHOD="2"
101-
fi
102-
fi
103-
104-
if [ "$CERT_METHOD" == "1" ]; then
105-
local base_domain=$(extract_domain "$SELFSTEAL_DOMAIN")
106-
NODE_CERT_DOMAIN="$base_domain"
107-
else
108-
NODE_CERT_DOMAIN="$SELFSTEAL_DOMAIN"
109-
fi
110-
111-
cat >> /opt/remnanode/docker-compose.yml <<EOL
112-
- /dev/shm:/dev/shm:rw
113-
- /var/www/html:/var/www/html:ro
114-
command: sh -c 'rm -f /dev/shm/nginx.sock && exec nginx -g "daemon off;"'
115-
116-
remnanode:
117-
image: remnawave/node:latest
118-
container_name: remnanode
119-
hostname: remnanode
120-
<<: [*common, *logging]
121-
network_mode: host
122-
cap_add:
123-
- NET_ADMIN
124-
environment:
125-
- NODE_PORT=2222
126-
- SECRET_KEY=$(echo -e "$CERTIFICATE")
127-
volumes:
128-
- /dev/shm:/dev/shm:rw
68+
caddy:
69+
image: caddy:2.11.2
70+
container_name: caddy-remnawave
71+
hostname: caddy-remnawave
72+
<<: [*common, *logging]
73+
network_mode: host
74+
volumes:
75+
- ./Caddyfile:/etc/caddy/Caddyfile
76+
- /var/www/html:/var/www/html:ro
77+
- /dev/shm:/dev/shm:rw
78+
- caddy_data:/data
79+
command: sh -c 'rm -f /dev/shm/nginx.sock && caddy run --config /etc/caddy/Caddyfile --adapter caddyfile'
80+
environment:
81+
- CADDY_SOCKET_PATH=/dev/shm/nginx.sock
82+
- SELF_STEAL_DOMAIN=${SELFSTEAL_DOMAIN}
83+
healthcheck:
84+
test: ["CMD", "test", "-S", "/dev/shm/nginx.sock"]
85+
interval: 2s
86+
timeout: 5s
87+
retries: 15
88+
start_period: 5s
89+
90+
remnanode:
91+
image: remnawave/node:latest
92+
container_name: remnanode
93+
hostname: remnanode
94+
<<: [*common, *logging]
95+
network_mode: host
96+
cap_add:
97+
- NET_ADMIN
98+
environment:
99+
- NODE_PORT=2222
100+
- SECRET_KEY=$(echo -e "$CERTIFICATE")
101+
volumes:
102+
- /dev/shm:/dev/shm:rw
103+
104+
volumes:
105+
caddy_data:
106+
name: caddy_data
107+
driver: local
108+
external: false
129109
EOL
130110

131-
cat > /opt/remnanode/nginx.conf <<EOL
132-
server_names_hash_bucket_size 64;
111+
cat > /opt/remnanode/Caddyfile <<EOL
112+
{
113+
admin off
114+
servers {
115+
listener_wrappers {
116+
proxy_protocol
117+
tls
118+
}
119+
}
120+
auto_https disable_redirects
121+
}
133122
134-
map \$http_upgrade \$connection_upgrade {
135-
default upgrade;
136-
"" close;
123+
http://{\$SELF_STEAL_DOMAIN} {
124+
bind 0.0.0.0
125+
redir https://{\$SELF_STEAL_DOMAIN}{uri} permanent
137126
}
138127
139-
ssl_protocols TLSv1.2 TLSv1.3;
140-
ssl_ecdh_curve X25519:prime256v1:secp384r1;
141-
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305;
142-
ssl_prefer_server_ciphers on;
143-
ssl_session_timeout 1d;
144-
ssl_session_cache shared:MozSSL:10m;
145-
ssl_session_tickets off;
146-
147-
server {
148-
server_name $SELFSTEAL_DOMAIN;
149-
listen unix:/dev/shm/nginx.sock ssl proxy_protocol;
150-
http2 on;
151-
152-
ssl_certificate "/etc/nginx/ssl/$NODE_CERT_DOMAIN/fullchain.pem";
153-
ssl_certificate_key "/etc/nginx/ssl/$NODE_CERT_DOMAIN/privkey.pem";
154-
ssl_trusted_certificate "/etc/nginx/ssl/$NODE_CERT_DOMAIN/fullchain.pem";
155-
156-
root /var/www/html;
157-
index index.html;
158-
add_header X-Robots-Tag "noindex, nofollow, noarchive, nosnippet, noimageindex" always;
128+
https://{\$SELF_STEAL_DOMAIN} {
129+
bind unix/{\$CADDY_SOCKET_PATH}
130+
root * /var/www/html
131+
try_files {path} /index.html
132+
file_server
159133
}
160134
161-
server {
162-
listen unix:/dev/shm/nginx.sock ssl proxy_protocol default_server;
163-
server_name _;
164-
add_header X-Robots-Tag "noindex, nofollow, noarchive, nosnippet, noimageindex" always;
165-
ssl_reject_handshake on;
166-
return 444;
135+
:80 {
136+
bind 0.0.0.0
137+
respond 204
167138
}
168139
EOL
140+
}
141+
142+
installation_node_caddy() {
143+
echo -e "${COLOR_YELLOW}${LANG[INSTALLING_NODE]}${COLOR_RESET}"
144+
install_node_caddy
169145

146+
ufw allow 80/tcp comment 'HTTP' > /dev/null 2>&1
170147
ufw allow from $PANEL_IP to any port 2222 > /dev/null 2>&1
171148
ufw reload > /dev/null 2>&1
172149

src/nginx/install_node.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,4 +200,4 @@ EOL
200200
fi
201201
((attempt++))
202202
done
203-
}
203+
}

0 commit comments

Comments
 (0)