Edit: Solution is in Nginx I disabled these: Cache Assets, Block Common Exploits, Websockets Support.

I can login using the local IP 192.168.1.2:9101, but when I route that with Nginx, It won’t.

I have the GUI listen address as : 0.0.0.0:9101

I’ve been googling for hours but I can’t find anything, In browser console it says

Failed to load resource: the server responded with a status of 403 ()
syncthing.my.domain.com/:1  Refused to execute script from 'https://syncthing.my.domain.com/meta.js' because its MIME type ('text/plain') is not executable, and strict MIME type checking is enabled.
    • Mir@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 months ago

      I’m using the Web GUI Nginx Proxy Manager https://nginxproxymanager.com/

      I tried to add what’s in the docs.syncthing using the GUI but it failed, I wasn’t sure if I should modify something inside the ngnix docker container or not.

          • qjkxbmwvz@startrek.website
            link
            fedilink
            English
            arrow-up
            1
            ·
            5 months ago

            403 Forbidden doesn’t necessarily mean a bad login attempt. Are you sure that’s the error? My troubleshooting steps would be to access directly (no nginx), and look at the logs for a successful login. Then, look try to login with nginx, and look at those logs (both access.log and error.log on nginx, and any/all logs from syncthing). Find out where the two cases diverge and go from there.

            Does syncthing have a domain name specified? If it doesn’t know its domain name it may work from IP directly but not via reverse proxy. Just a hunch.

            • Mir@programming.devOP
              link
              fedilink
              English
              arrow-up
              1
              ·
              5 months ago

              In Syncthing logs the difference between success and fail

              Success

              2024-04-29 00:46:58 http: POST "/rest/noauth/auth/password": status 204, 0 bytes in 62.48 ms
              2024-04-29 00:46:58 http: GET "/rest/events?since=174": status 200, 240 bytes in 54538.81 ms
              2024-04-29 00:46:58 http: GET "/": status 304, 0 bytes in 0.00 ms
              2024-04-29 00:46:58 http: GET "/vendor/bootstrap/css/bootstrap.css": status 304, 0 bytes in 1.24 ms
              2024-04-29 00:46:58 http: GET "/vendor/daterangepicker/daterangepicker.css": status 304, 0 bytes in 0.00 ms
              2024-04-29 00:46:58 http: GET "/vendor/fork-awesome/css/fork-awesome.css": status 304, 0 bytes in 0.00 ms
              2024-04-29 00:46:58 http: GET "/assets/font/raleway.css": status 304, 0 bytes in 0.00 ms
              

              Fail

              2024-04-29 00:44:09 http: POST "/rest/noauth/auth/password": status 403, 10 bytes in 237.16 ms
              2024-04-29 00:44:09 http: GET "/modal.html": status 304, 0 bytes in 0.00 ms
              2024-04-29 00:44:09 http: GET "/syncthing/core/editShareTemplate.html": status 304, 0 bytes in 0.07 ms
              2024-04-29 00:44:10 http: POST "/rest/noauth/auth/password": status 204, 0 bytes in 85.43 ms
              2024-04-29 00:44:11 http: GET "/": status 304, 0 bytes in 0.00 ms
              2024-04-29 00:44:11 http: GET "/rest/svc/lang": status 200, 22 bytes in 0.00 ms
              

              Does syncthing have a domain name specified I can’t find an option to do so

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    5 months ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    HTTP Hypertext Transfer Protocol, the Web
    IP Internet Protocol
    nginx Popular HTTP server

    3 acronyms in this thread; the most compressed thread commented on today has 13 acronyms.

    [Thread #721 for this sub, first seen 29th Apr 2024, 04:15] [FAQ] [Full list] [Contact] [Source code]

  • Pyrosis@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    5 months ago

    My npm has web sockets enabled and blocking common exploits.

    Just checked syncthing and it’s set to 0.0.0.0:8384 internally but that shouldn’t matter if you changed the port.

    When Syncthing is set to listen on 0.0.0.0, it means it’s listening on all available network interfaces on the device. This allows it to accept connections from any IP address on the network, rather than just the local interface. Essentially, it makes Syncthing accessible from any device within the network.

    Just make sure you open those firewall ports on the server syncthing is running on.

    Btw the syncthing protocol utilizes port 22000 tcp and udp. Udp utilizing a type of quic if you let it.

    So it’s a good idea to allow udp and tcp on 22000 if you have a firewall configured on the syncthing server.

    Edit

    Wording for firewall ports and the purpose of 0.0.0.0

    • Mir@programming.devOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      5 months ago

      I have it set to 0.0.0.0, and I can access it from another pc using the ip:port address. But when I try to access using the domain name it shows the login page but I can’t login, it just refresh the page and I can see the error above in the logs.