have problem with install on vm
-
@dark-shy try
curl http://localhost:80
Also please use code blocks when appropriate
-
A couple simple diagnostics confirm your server is answering incoming connection requests on both ports 80 and 443:
telnet cp.slainscraft.com 80 Trying 172.67.131.203... Connected to cp.slainscraft.com. Escape character is '^]'. ^] telnet> quit Connection closed. telnet cp.slainscraft.com 443 Trying 172.67.131.203... Connected to cp.slainscraft.com. Escape character is '^]'. ^] telnet> quit Connection closed.
So your firewall rules are fine.
But it is not serving up html on either. No port 443 makes sense because I don't see nginx config blocks for tls. Port 80 is another matter and leads me to suspect either a misconfigured nginx or misconfigured nodebb config.json
Maybe I missed it but I did not see your config.json posted, only that single line. Please ensure you don't have any typos, error, missing commas, brackets, braces, etc. I realize that bits of that file are likely sensitive so obfuscate those bits, leaving the remainder as is and post it up here. Maybe we'll catch some glitch there?
As for nginx, I presume nginx -t is not whinging about any errors? Try driving this command whilst hitting your box via web browser and post up results:
tail -f /var/log/nginx/access.log
Then maybe also:
tail -f /var/log/nginx/error.log
I have not used Ubuntu nor Debian since forever so adapt above as necessary to point at 'buntu's nginx logfiles.
P.S.; Curl (or wget) should work too, as mentioned above. Good luck o/
-
@dark-shy We are not mind readers. And my crystal ball is in need of repairs. Please report the logs and/or info back from my and @PitaJ requests. Else otherwise we are groping about in the dark, spinning our wheels, throwing darts blindfolded, etc., in the hopes of getting lucky.
Shooting from the hip, my guess based on above is that your issue is cloudflare related. Else why would I be hitting cloudflare but not your server? Or maybe I am? Need logs.
Have fun!
-
@gotwf said in have problem with install on vm:
We are not mind readers. And my crystal ball is in need of repairs. Please report the logs and/or info back from my and @PitaJ requests. Else otherwise we are groping about in the dark, spinning our wheels, throwing darts blindfolded, etc., in the hopes of getting lucky.
Shooting from the hip, my guess based on above is that your issue is cloudflare related. Else why would I be hitting cloudflare but not your server? Or maybe I am? Need logs.
Have fun!I can give u or @PitaJ access to virtual machine at pm
-
@dark-shy I don't plan on fixing it for you. You haven't even tried all of the things I suggested yet.
-
NodeBB Log:
https://pastebin.com/SyaKevjp
Nginx part of log:root@darkshy:/etc/nginx# root@darkshy:/etc/nginx# nginx nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] still could not bind()
Full error/access log not created, i dont know why.
Programs on ports
https://pastebin.com/wH50ua8h -
@pitaj said in have problem with install on vm:
curl http://localhost:80
curl http://localhost:80 - Pastebin.com
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Pastebin (pastebin.com)
-
@dark-shy said in have problem with install on vm:
Nginx part of log:
root@darkshy:/etc/nginx# root@darkshy:/etc/nginx# nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()You are trying to start nginx when it is already running. Hence port 80 is already in use. Please drive the following commands:
systemctl restart nginx systemctl status nginx nginx -t
Those should confirm that nginx is running fine.
nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
From your paste below, seems like maybe NodeBB is not configured 100% correctly? I did not notice anything amiss in your nginx conf posted above. Is that your entire conf file? And/or something amiss with your nodebb config/installation? Warnings are survivable. Errors may not be. You have a couple where modules are not found:
2021-03-06T11:24:03.851Z [4567/1511] - error: Error: Cannot find module '/var/www/html/node_modules/nodebb-plugin-soundpack-default' ........ 2021-03-06T11:24:03.929Z [4567/1511] - error: Error: Cannot find module './categories' ............ 2021-03-06T11:24:03.936Z [4567/1511] - error: Error: Cannot find module './user' ............. 2021-03-06T11:24:03.997Z [4567/1511] - error: [plugins/spam-be-gone] Honeypot API Key not set! ............ 2021-03-06T11:24:04.151Z [4567/1511] - error: [plugins/spam-be-gone] Unable to verify Akismet API key.
If you don't have those API keys then those bits should be disabled. In ACP/plugins/spam-be-gone:
Uncheck Akismet and Project Honeypot boxes.
I'll leave pitaj to comment on the modules errors.
Howesomever: That you receive a response to a curl on the localhost indicates your server is indeed serving up some html - at least locally. So the issue is something amiss with access from your external IP address. Your lsof output indicates your server is listening on port 80 on all network interfaces. So maybe a firewall issue - or maybe cloudflare. We still do not have any nginx log files.
If you tail your nginx access log and then attempt to access your site from an external source (i.e. not local LAN) then you should see that in your nginx logs. If not, then you have an issue upstream from somewhere.
If so, then mayhaps you have something wrong with your DNS records:
drill cp.slainscraft.com ;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 23888 ;; flags: qr rd ra ; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;; cp.slainscraft.com. IN A ;; ANSWER SECTION: cp.slainscraft.com. 300 IN A 104.21.4.78 cp.slainscraft.com. 300 IN A 172.67.131.203 ;; AUTHORITY SECTION: ;; ADDITIONAL SECTION: ;; Query time: 67 msec ;; SERVER: 192.168.27.1 ;; WHEN: Sat Mar 6 07:18:54 2021 ;; MSG SIZE rcvd: 68
Are you/cloudflare really serving up your stuff on both of those A record addresses above? I don't use Cloudflare but IF nginx logs indicate you are able to access your box from non local lan addresses, then there is something wrong w/your fw, upstream Cloudflare, and/or DNS configuration.
Hope this helps you get it sorted. Good luck! o/
-
@dark-shy okay so it looks like nginx is binding on port 80, and you're getting a response from NodeBB there, so it must be something like a firewall preventing access from the outside. You mentioned cloudflare, could you try disabling that?
-
@dark-shy as for the startup logs, you have a few plugins that aren't compatible with your version of NodeBB. Try disabling them for now
-
@pitaj disable CloudFlare-it will not work, since I have all the dns running through it. In it, I have all the settings for this domain.
@gotwf said in have problem with install on vm:
2021-03-06T11:24:03.929Z [4567/1511] - error: Error: Cannot find module './categories'
............
2021-03-06T11:24:03.936Z [4567/1511] - error: Error: Cannot find module './user'
i dont know how fix it.
-
@dark-shy the fix is to update those plugins so they use
require.main.require('./src/user')
instead ofmodule.parent.require('./user')
. But if you aren't the developer of those plugins, there's nothing you can do, so just disable them or ignore the errors for now. They aren't causing the issue.Since you can access NodeBB on
http://localhost:4567
, this means NodeBB is running.Since you can access NodeBB on
http://localhost:80
, this means that nginx is (at least partially) working.Since you cannot access NodeBB on
http://your.ip:80
, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup? -
@pitaj said in have problem with install on vm:
Since you cannot access NodeBB on http://your.ip:80, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup?
by external address-works from the external network, and from the internal network does not work at the external address.
from the device 192.168.1.101, it is not possible to connect to 93.95.167.101:80/4567, although it is safe to connect to 192.168.1.103:80/4567. Localhost also works -
@pitaj said in have problem with install on vm:
@dark-shy the fix is to update those plugins so they use
require.main.require('./src/user')
instead of
Since you cannot access NodeBB onhttp://your.ip:80
, this means that there's something blocking requests into your server. It may be a firewall on your server, or it may be something upstream from that. Do you mind sharing more information about your setup?Ah, wait, have we established this? Nginx tail I missed?
Freakin' snap! Eyes missed this bit from the opening post. Sigh...
there is no response - 93.95.167.101.
And I was even looking for it too, earlier when I did those other telnet test. Ho, man!!!
telnet 93.95.167.101 80 Trying 93.95.167.101... ^C
Above confirms that your external IP address is not accessible, at least not by general public. Perchance do you have a firewall rule restricting access to only Cloudflare servers?? If not and all incoming requests to port 80 are blocked then we have just pinpointed the problem because if I nor Cloudflare cannot get there... then the proof is pretty much in the pudding that you have a fw rule issue.
Mind you, you could still additionally have a Cloudflare issue on top of that, but you got to work your way back upstream one link at a time.
Pitaj very efficiently cut to the chase. I was trying to also teach you how to fish. Hope that helps somebody on down the line.
Good luck and have fun. Methinks you are almost there. o/
-
@dark-shy if it's working on
http://localhost:80
then it's likely not an nginx problem given your config. You can runlsof -n -i:80
to make sure, you should see nginx there. -
@pitaj said in have problem with install on vm:
if it's working on http://localhost:80 then it's likely not an nginx problem given your config. You can run lsof -n -i:80 to make sure, you should see nginx there.
I was write this command. And take nothing.
server { listen 80; server_name forum.slainscraft.com; root /var/www/html; index index.php index.html index.htm; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://localhost:4567; proxy_redirect off; # Socket.IO Support proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } }