Unable to access Syncthing GUI

First of all, thanks for making Syncthing available in the package manager. It seems like the more I discover the more surprised I am about what a humble consumer wireless router can do. At the moment I am having an issue accessing the web GUI for Syncthing on other computers but if I run Lynx on the router itself over SSH I can see the interface in text mode by using the localhost address. However if I try to access port 8384 on any of my computers I get an error saying the site can't be reached. They are all running Syncthing already and can utilize all ports without a problem this being on both Windows and Linux systems. I installed this using the default package but something is still not quite right. Is there anything else I need to do in order to get the web GUI to be accessible remotely besides changing the listen IP address to 0.0.0.0 port 8384?

Yes, but... It depends on what you mean by "remotely". Do you mean on the LAN or from anywhere out on the WAN? If LAN, then setting 0.0.0.0 should cause syncthing to listen on all ports, but the firewall still won't allow external (WAN) connections to be initiated directly. For WAN access (NOT RECOMMENDED) you need to add a traffic rule, something like this:

To diagnose things, both before and after changes, try this and see if it shows what you're expecting wrt syncthing listening on interfaces and such.

$ netstat -tunlp | grep syncthing

I agree it's not at all recommend to expose Syncthing's UI to the WAN. If you need to access the Syncthing GUI from over the WAN, I would suggest exposing SSH to the outside (after suitably comfiguring it with the correct keys and not to accept passwords) and using that to create a tunnel to the Syncthing gui. SSH is hardened for external access.

1 Like

My intention is for LAN access only for the GUI much like how it is on my other machines. This method has proven safe before and I briefly got the GUI working after running the netstat command which is really strange.

I restored my router and forgot where the OpenWRT package puts the Syncthing configuration files. The Wiki says nothing about it, just the same thing that the package manager does and searching is bringing up nothing.

/etc/config/syncthing.conf

Thanks, that helped a bit I forgot where the main configuration file was. Now I just need to look at the xml configuration file because the main configuration file is correct.

Great.

If your problem is solved, please consider marking this topic as [Solved]. See How to mark a topic as [Solved] for a short how-to.
Thanks! :slight_smile:

Well not quite, that was a step in the right direction though it just confirmed the configuration file was correct. The next thing to check is syncthing.xml and resolve a bizarre crash issue which my theory is being caused by a lack of RAM. The purpose for this install on my router is to serve as a central place for gigabytes worth of files.

Do you get any error messages in the system log or /etc/syncthing/syncthing.log?

What device do you have and how much RAM does it have?

I have a Netgear R8000 and it appears to have 244 MB of RAM. It is a decently powerful router but more middle of the line, not the best but very far from being the worst. No log file is being generated which is weird so /etc/syncthing/syncthing.log does not exist.

How much RAM is free?

With everything running only 74 MB of RAM is in use so 156 MB is free. I am noticing that I can't stop Syncthing using the OpenWRT GUI and that I am having a permissions error when trying to access the /root/.config/syncthing directory.

Looks as though it runs as a user called syncthing?

https://github.com/openwrt/packages/blob/0d566071c90f7c1088fdc09360dc4216bef6765e/utils/syncthing/files/syncthing.init#L54

That is what I remember reading and knowing what I do about Linux it makes sense. Of course running certain tasks as root is a serious security risk. I can't even access it as root which is strange. It looks like to solve this I need to give the syncthing user read/write access to that folder.

You shouldn't worry about setting the listen address to 0.0.0.0 as wan access will still be blocked by the firewall.

Looks as though the home parameter is set to /etc/syncthing. All config dB files etc will end up in there rather than /root/.config/syncthing.

I think that is where my problem is, only a 4 megabyte partition is available for programs like Syncthing to use but I can force it to look elsewhere for the database file and all the downloads.

Hmm if you're trying to sync a large amount of files, I imagine the metadata and sync related data will be quite large!

That is exactly where the problem is. Syncthing tries to download to the 4 MB internal flash memory no matter what I do and it fills that up resulting in the program crashing immediately and no longer being able to run.

Can you provide the output of

df -h