46
46
CREATED_USER=1
47
47
fi
48
48
49
+ # Set permissions on nodeyez home folder so others can read
50
+ sudo chmod 755 /home/nodeyez
51
+
49
52
# Add user to tor group
50
53
sudo adduser nodeyez debian-tor
51
54
@@ -119,12 +122,17 @@ sudo -u nodeyez -s source /home/nodeyez/.pyenv/nodeyez/bin/activate && /home/nod
119
122
# Website dashboard
120
123
if [ $( which nginx | wc -l) -gt 0 ]; then
121
124
# nginx is already installed
125
+ echo " NGINX already installed"
122
126
if [ -d " /mnt/hdd/mynode" ]; then
123
127
# we are installing on a mynode environment
124
- echo " Configuring Nodeyez Dashboard in NGINX"
128
+ echo " Configuring Nodeyez Dashboard in NGINX for MyNode "
125
129
# enable xslt module
126
- sudo cp /home/nodeyez/nodeyez/scripts/nginx/a_xslt.conf /etc/nginx/modules-enabled/a_xslt.conf
127
- sudo chown root:root /etc/nginx/modules-enabled/a_xslt.conf
130
+ if [ $( sudo cat /etc/nginx/modules-enabled/* | grep xslt | wc -l) -gt 0 ]; then
131
+ echo " XSLT module is loaded for NGINX"
132
+ else
133
+ sudo cp /home/nodeyez/nodeyez/scripts/nginx/a_xslt.conf /etc/nginx/modules-enabled/a_xslt.conf
134
+ sudo chown root:root /etc/nginx/modules-enabled/a_xslt.conf
135
+ fi
128
136
# copy xslt templates
129
137
sudo cp /home/nodeyez/nodeyez/scripts/nginx/nodeyez* .xslt /etc/nginx/
130
138
sudo chown root:root /etc/nginx/nodeyez* .xslt
@@ -135,12 +143,13 @@ if [ $(which nginx | wc -l) -gt 0 ]; then
135
143
CREATED_WEBSITE=1
136
144
else
137
145
# Generic NGINX
146
+ echo " Configuring Nodeyez Dashboard in NGINX for Generic"
138
147
# get some ssl cert info
139
148
line_ssl_certificate=$( sudo nginx -T 2>&1 | grep " ssl_certificate " | sed -n 1p)
140
- line_ssl_certificate_private =$( sudo nginx -T 2>&1 | grep " ssl_certificate_private " | sed -n 1p)
149
+ line_ssl_certificate_key =$( sudo nginx -T 2>&1 | grep " ssl_certificate_key " | sed -n 1p)
141
150
# drop in our base config
142
151
# determine if xslt module is loaded
143
- if [ $( nginx -V 2>&1 | tr ' ' ' \n ' | egrep -i ' xslt' | wc -l) -gt 0 ]; then
152
+ if [ $( sudo cat /etc/nginx/modules-enabled/ * | grep xslt | wc -l) -gt 0 ]; then
144
153
echo " XSLT module is loaded for NGINX"
145
154
else
146
155
echo " Configuring NGINX to load XSLT module"
@@ -155,32 +164,45 @@ if [ $(which nginx | wc -l) -gt 0 ]; then
155
164
sudo chown root:root /etc/nginx/sites-enabled/https_nodeyez.conf
156
165
# ssl config
157
166
sudo mkdir -p /etc/nginx/nodeyez
158
- sudo cp /home/nodeyez/scripts/nginx/nodeyez_ssl* .conf /etc/nginx/nodeyez
167
+ sudo cp /home/nodeyez/nodeyez/ scripts/nginx/nodeyez_ssl* .conf /etc/nginx/nodeyez
159
168
# assign back first cert and key if detected from earlier
160
169
if [ ${# line_ssl_certificate} -gt 0 ]; then
161
170
sudo rm /etc/nginx/nodeyez/nodeyez_ssl_cert_key.conf
162
171
sudo echo $line_ssl_certificate >> /etc/nginx/nodeyez/nodeyez_ssl_cert_key.conf
163
- sudo echo $line_ssl_certificate_private >> /etc/nginx/nodeyez/nodeyez_ssl_cert_key.conf
172
+ sudo echo $line_ssl_certificate_key >> /etc/nginx/nodeyez/nodeyez_ssl_cert_key.conf
164
173
else
165
174
sudo openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/nodeyez-nginx-selfsigned.key -out /etc/ssl/certs/nodeyez-nginx-selfsigned.crt -subj " /CN=localhost" -days 3650
166
175
fi
176
+ # create diffie-hellman if we dont have any yet
177
+ if [ ! -f " /etc/ssl/certs/dhparam.pem" ]; then
178
+ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
179
+ fi
167
180
sudo chown root:root -R /etc/nginx/nodeyez
168
181
CREATED_WEBSITE=1
169
182
fi
170
183
else
171
184
# nginx is not yet installed
172
- sudo apt install -y nginx
185
+ echo " Installing NGINX"
186
+ sudo apt install -y nginx nginx-common
173
187
# make a self signed cert
174
188
sudo openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/nodeyez-nginx-selfsigned.key -out /etc/ssl/certs/nodeyez-nginx-selfsigned.crt -subj " /CN=localhost" -days 3650
189
+ if [ ! -f " /etc/ssl/certs/dhparam.pem" ]; then
190
+ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
191
+ fi
175
192
# enable xslt module
176
- sudo cp /home/nodeyez/nodeyez/scripts/nginx/a_xslt.conf /etc/nginx/modules-enabled/a_xslt.conf
177
- sudo chown root:root /etc/nginx/modules-enabled/a_xslt.conf
193
+ if [ $( sudo cat /etc/nginx/modules-enabled/* | grep xslt | wc -l) -gt 0 ]; then
194
+ echo " XSLT module is loaded for NGINX"
195
+ else
196
+ echo " Configuring NGINX to load XSLT module"
197
+ sudo cp /home/nodeyez/nodeyez/scripts/nginx/a_xslt.conf /etc/nginx/modules-enabled/a_xslt.conf
198
+ sudo chown root:root /etc/nginx/modules-enabled/a_xslt.conf
199
+ fi
178
200
# templates
179
201
sudo cp /home/nodeyez/nodeyez/scripts/nginx/nodeyez* .xslt /etc/nginx/
180
202
sudo chown root:root /etc/nginx/nodeyez* .xslt
181
203
# nodeyez config referencing our freshly minted self signed certs
182
204
sudo mkdir -p /etc/nginx/nodeyez
183
- sudo cp /home/nodeyez/scripts/nginx/nodeyez_ssl* .conf /etc/nginx/nodeyez
205
+ sudo cp /home/nodeyez/nodeyez/ scripts/nginx/nodeyez_ssl* .conf /etc/nginx/nodeyez
184
206
# site config
185
207
sudo cp /home/nodeyez/nodeyez/scripts/nginx/https_nodeyez.conf /etc/nginx/sites-enabled/https_nodeyez.conf
186
208
sudo chown root:root /etc/nginx/sites-enabled/https_nodeyez.conf
@@ -202,6 +224,7 @@ sudo cp /home/nodeyez/nodeyez/scripts/systemd/nodeyez.conf /etc/nodeyez.conf
202
224
203
225
# Initial services to enable and start
204
226
# - fearandgreed, fiatprice, ipaddress, satsperusd, sysinfo, utcclock
227
+ if [ 1 -eq 1 ]; then
205
228
sudo systemctl enable nodeyez-fearandgreed.service
206
229
sudo systemctl start nodeyez-fearandgreed.service
207
230
sudo systemctl enable nodeyez-fiatprice.service
@@ -216,6 +239,7 @@ sudo systemctl enable nodeyez-utcclock.service
216
239
sudo systemctl start nodeyez-utcclock.service
217
240
sudo systemctl enable nodeyez-daily-data-retrieval.service
218
241
sudo systemctl start nodeyez-daily-data-retrieval.service
242
+ fi
219
243
# - bitcoin: arthash, arthashdungeon, blockheight, blockstats, difficultyepoch, halving, mempoolblocks
220
244
if [ $GRANTED_BITCOIN -ge 1 ]; then
221
245
sudo systemctl enable nodeyez-arthash.service
@@ -277,3 +301,7 @@ sudo systemctl list-units --type=service --state=active | grep nodeyez | awk '{p
277
301
sudo systemctl list-units --type=service --state=failed | grep nodeyez | awk ' {print "(failed) " $2}'
278
302
279
303
304
+ # usermod -a -G www-data nodeyez
305
+ # chgrp www-data /home/nodeyez/nodeyez/imageoutput
306
+ # chmod g+rwxs /home/nodeyez/nodeyez/imageoutput
307
+ # chmod 755 /home/nodeyez
0 commit comments