No MLAT and no View Live Data

Hello. I just plugged in myNooelec NESDR Mini 2+ to my Linux Mint machine. I see on the FlightAware stat page I’m receiving data from specific aircraft and that I’ve reported thousands of positions. But I note that when I attempt to look at http://192.168.xxx.xxx:8080/ I get the error message “Unable to connect.” I also note that when I hit the gear in the upper right corner of the stat page, the “Site Configuration” pop up doesn’t allow me to fill in the spaces for “Receiver Location” and “Nearest Airport,” although I checked the box to enable MLAT. Several days ago, I loaded piaware-web with piaware-builder, so I believe they are up to date. Does anyone have an ideas what I might need to do? I can give any additional data you might need. Thank you.

1 Like

Hi @waynetconti Welcome to the forums. Someone far more capable than me will, I’m sure, be along shortly with help. Meanwhile have you tried hitting the gear and using the ‘Edit Location’ option to set your location? A map should pop up and let you manually drag the location symbol to your preferred location.
Does the site bar (left of cog) have any Anomalies listed?

1 Like

when you click on the link for the local web interface ( top left screen on the stats page) do get the radar screen ?
If that is working are you trying to get to the same IP address when typing it in the browser address bar ?

Hello, TimBAC60,
Since I wrote this last note, I was able to get part of the way through. In relation to “Edit Location,” I was only, apparently, able to edit location info after I had consulted ChatGPT which instructed me to alter my config file. It only contained my “Unique Identifier.” When I entered:
receiver-location=40.7xxxxx,-74.0xxxxx
nearest-airport=KJRB
I was able to established, on the “Edit Location” page, my latitude and longitude, nearest airport and both the ground level of my building above sea level and the corresponding antenna height above sea level. After the passing of time and a few screen refreshes, I was able to get the MLAT button in the green. So, that part of the problem was solved, but, still, when I hit “View live data” at my assigned http://192.168.xxx.xxx:8080/ , I still get the error “Unable to connect.”
As to your final question, I didn’t see any left of cog Anomalies.
I thank you for your input,
Sincerely,
WC

I don’t see what I just wrote in reply to TimBAC60, so, to repeat in short, with the assistance of ChatGPT, I altered piaware.conf for receiver-location and nearest-airport. Then the “Edit Location” pop-up allowed me to reenter that info plus info on antenna altitude. After the passing of some time and a few page refreshes, the MLAT button was in the green, but when I try to view http://192.168.xxx.xxx:8080/ , I still get the “Unable to contect” error message.
Thank you again,
WC

To tomvdhorst,
When I click on the “View live data” link, I get the error message “Unable to connect.”
Thank you,
WC

Step 1:
login to your device.
Step 2 retrieve the IP address of the raspberry pi
Step 3 try to connect to the webpage of your rapspberry pi on http://192.168.xxx.xxx:8080/ ( insert the IP address retrieved in step 2 on the xxx.xxx part).

Additional question, are you running this in a docker environment that has a different gateway then your own network ?

It sounds like you have not allowed port 8080 through your firewall.

Unless it’s an industrial grade router fitrwalls won’t come into it.

A proper configured pi opens ports and only responds to those as part of the server/service setup.

Taffic from in-lan gets flagged as local and gets passed. Doesn’t need to be routed cross wan or touch firewall.

Firewalls block the outside world coming in. And in extreme cases ACLs out unless explicitly changed.

People going down a pinhole route can be dangerous. And actually needs webserver/ports tested on the host (pi) before going that far.

OP - check for existence of lighttpd and piaware configuration.

Thank you all. To tomvdhorst:
I’m actually using a Linux Mint machine. When I execute ip addr I find : inet 192.168.xxx.xxx/24 brd 192.168.1.255 scope global dynamic noprefixroute enp0s31f6
which is the same ip except with “/24” appended. Also, I never installed docker.
Again, thank you,
WC

IP address should be fine then.

the /24 is the netmask given to the IP and that’s supposed to be there.

You should look if the software for this issue then, look at the post Oblivian referred to. Is al the software present?

Thank you, Oblivian,
Are you suggestion that I do what I see on the page you seem to be directing me too?
sudo lighty-enable-mod piaware
sudo systemctl restart lighttpd
Then, are you suggestion when I go to my http://192.168.xxx.xxx:8080/
I should not receive an error?
WC

The OP is not using pi. He is running Linux Mint.

And believe it is off by default, else you need to be clued to make specific rules - more likely off if it’s feeding out.

sudo ufw status

To answer the OP query to me, there are a number of tests.

Did you only install piaware or is there the chance there are other web servers present from another package. (Eg pihole, ngnix) This will stop the url being added and would need to be integrated into your existing webserver.

sudo netstat -tulpn | grep LISTEN

Will show open ports. Right column will show which process opens them.

Again, thank you to everyone.

Here below I am sending what I get back, when I run oblivian’s suggestions:

sudo ufw status
sudo netstat -tulpn | grep LISTEN

Please note that I have not, yet, run in terminal:

sudo lighty-enable-mod piaware
sudo systemctl restart lighttpd

(base) wayne@OPlex-7050:~$ sudo ufw status
[sudo] password for wayne:
Status: inactive
(base) wayne@OPlex-7050:~$

(base) wayne@OPlex-7050:~$ sudo netstat -tulpn | grep LISTEN
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1452/smbd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 1452/smbd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 6821/cupsd
tcp 0 0 0.0.0.0:30005 0.0.0.0:* LISTEN 790/dump1090-fa
tcp 0 0 0.0.0.0:30004 0.0.0.0:* LISTEN 790/dump1090-fa
tcp 0 0 0.0.0.0:30003 0.0.0.0:* LISTEN 790/dump1090-fa
tcp 0 0 0.0.0.0:30002 0.0.0.0:* LISTEN 790/dump1090-fa
tcp 0 0 0.0.0.0:30104 0.0.0.0:* LISTEN 790/dump1090-fa
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 636/systemd-resolve
tcp6 0 0 :::445 :::* LISTEN 1452/smbd
tcp6 0 0 :::80 :::* LISTEN 874/apache2
tcp6 0 0 :::139 :::* LISTEN 1452/smbd
tcp6 0 0 :::1716 :::* LISTEN 1505/kdeconnectd
tcp6 0 0 ::1:631 :::* LISTEN 6821/cupsd
tcp6 0 0 :::30005 :::* LISTEN 790/dump1090-fa
tcp6 0 0 :::30004 :::* LISTEN 790/dump1090-fa
tcp6 0 0 :::30003 :::* LISTEN 790/dump1090-fa
tcp6 0 0 :::30002 :::* LISTEN 790/dump1090-fa
tcp6 0 0 :::30106 :::* LISTEN 1780/fa-mlat-client
tcp6 0 0 :::30105 :::* LISTEN 1780/fa-mlat-client
tcp6 0 0 :::30104 :::* LISTEN 790/dump1090-fa
(base) wayne@OPlex-7050:~$

Firewalls off. So it aint that (didn’t think it would be)

tcp6 0 0 :::80 :::* LISTEN 874/apache2

You have Apache running. Likely spawned from something else.

Lighttpd likely detected that and didn’t actually install during the setup of FA. So it won’t be opening 8080 or redirecting traffic to the right place.

So in short. The preferred web server included with piaware probably wasn’t installed and is therefore not listening. If you dont need apache or run anything that needs it you would need to kill that off before doing lighttpd manually if you want the local web interface.

The alternative is reconfiguration of apache. Which is quite a bit harder.

2 Likes

So an uninstall of Apache is what you suggest to start, correct?

Thanh you, oblivian; Apache had no dependencies, and is out of the way.

Now, in /etc/lighttpd.conf I have (and I didn’t chose the large fonts):
server.modules = (
“mod_indexfile”,
“mod_access”,
“mod_alias”,
“mod_redirect”,
)

server.document-root = “/var/www/html”
server.upload-dirs = ( “/var/cache/lighttpd/uploads” )
server.errorlog = “/var/log/lighttpd/error.log”
server.pid-file = “/run/lighttpd.pid”
server.username = “www-data”
server.groupname = “www-data”
server.port = 80

features

#Server feature-flagsDetails - Lighttpd - lighty labs
server.feature-flags += (“server.h2proto” => “enable”)
server.feature-flags += (“server.h2c” => “enable”)
server.feature-flags += (“server.graceful-shutdown-timeout” => 5)
#server.feature-flags += (“server.graceful-restart-bg” => “enable”)

strict parsing and normalization of URL for consistency and security

Server http-parseoptsDetails - Lighttpd - lighty labs

(might need to explicitly set “url-path-2f-decode” = “disable”

if a specific application is encoding URLs inside url-path)

server.http-parseopts = (
“header-strict” => “enable”,# default
“host-strict” => “enable”,# default
“host-normalize” => “enable”,# default
“url-normalize-unreserved”=> “enable”,# recommended highly
“url-normalize-required” => “enable”,# recommended
“url-ctrls-reject” => “enable”,# recommended
“url-path-2f-decode” => “enable”,# recommended highly (unless breaks app)
#“url-path-2f-reject” => “enable”,
“url-path-dotseg-remove” => “enable”,# recommended highly (unless breaks app)
#“url-path-dotseg-reject” => “enable”,
#“url-query-20-plus” => “enable”,# consistency in query string
)

index-file.names = ( “index.php”, “index.html” )
url.access-deny = ( “~”, “.inc” )
static-file.exclude-extensions = ( “.php”, “.pl”, “.fcgi” )

default listening port for IPv6 falls back to the IPv4 port

include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
include_shell “/usr/share/lighttpd/create-mime.conf.pl”
include “/etc/lighttpd/conf-enabled/*.conf”

#server.compat-module-load = “disable”
server.modules += (
“mod_dirlisting”,
“mod_staticfile”,
)

I figured it out by starting ligjhttpd after having changed lighttpd.conf so that the line server.port = 80 read server.port = 8080. Now, everything works. I’ve sort of put together the documentation to reproduce what I have done, mostly syntax and specifics, which were not necessarily apparent from FlightAware, etc. Over the years, I have noticed that documentation for smaller volume hardware can be thin. I wonder. if I organize my notes a bit, if it might be worth posting somewhere. Anyway, thank you, everyone, especially oblivion for pointing me in the best direction. (Chat GPT was was very good for providing the synatax.)

1 Like