Can only connect when SSH session active

I have two instances of Syncthing running on the same local network; one on Manjaro on RPi4 (4.19.97-1-MANJARO-ARM), the other on an iMac. The installs are vanilla.

The two clients can connect and sync if and only if I have an active SSH session open between my iMac and Pi—just as session, NOT a tunnel, eg. ssh user@pi-ip. As soon as I close the session, the dashboard on my iMac updates and says that it’s disconnected from the Pi.

I have ufw installed on the Pi and am allowing syncthing traffic via ufw allow syncthing. The iMac has its firewall disabled.

I want the two to sync with or without a SSH session active. What am I doing wrong? What other info do you need?

When I end the session, the logs for syncthing on my iMac print out:

[NKVRO] 14:10:34 INFO: Connection to WT5MB5X-4WDXOFO-KSZW326-CUYAD2U-V6RICG5-5NWDLZ3-PLFA4F3-LH4HAQI at [fe80::85b:930b:f8e4:741c%en1]:22000-[fe80::4e27:28f2:3686:54ad%en1]:44776/tcp-server/TLS1.3-TLS_AES_128_GCM_SHA256 closed: reading length: read tcp [fe80::85b:930b:f8e4:741c%en1]:22000->[fe80::4e27:28f2:3686:54ad%en1]:44776: read: connection reset by peer

That, or encrypted home directory.

@AudriusButkevicius Thanks for that link! Yes, turns out I had set this up to run as a user service and not a system service; my Pi is headless, so the only time my user is logged in is when I SSH. Changing it to a system service fixed my issue. Thanks for the quick help!

2 Likes