OK, after starting the package I see…
root@Tower:/var/packages/Duplicati/target# ps -ef |grep mono
root 16092 1 0 22:25 ? 00:00:00 mono /volume1/@appstore/Duplicati/Duplicati.Server.exe
root 16104 16092 1 22:25 ? 00:00:01 /volume1/@appstore/Mono/usr/local/bin/mono-sgen /volume1/@appstore/Duplicati/Duplicati.Server.exe
root 22489 11123 0 22:27 pts/26 00:00:00 grep --color=auto mono
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:8200 127.0.0.1:34405 TIME_WAIT
tcp 0 0 127.0.0.1:34410 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34403 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34405 127.0.0.1:8200 TIME_WAIT
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:64619 ESTABLISHED
If I attempt to connect to if from within the Synology DSM UI, I get Connection lost, attempting again in… almost immediately, and I see
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:8200 127.0.0.1:34468 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:34459 TIME_WAIT
tcp 0 0 127.0.0.1:34465 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34470 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34475 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34472 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:34464 TIME_WAIT
tcp 0 0 127.0.0.1:34460 127.0.0.1:8200 TIME_WAIT
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:64619 ESTABLISHED
If I kill that window and use the DSM GUI to “Open in a new window”, which points my browser at https://tower.my.domain:5001/webman/3rdparty/Duplicati/ngax/index.html, then again I get Connection lost, attempting again in… almost immediately, and see
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:34595 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34601 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34589 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:34601 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:34605 TIME_WAIT
tcp 0 0 127.0.0.1:34598 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34596 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34591 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34604 127.0.0.1:8200 TIME_WAIT
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:65407 ESTABLISHED
Which is interesting because I would now expect to see two connections from my PC (192.168.0.8) - one to the DSM UI and another to Duplicati.
If I then edit the URL to use the IP address instead of the DNS name - https://192.168.0.11:5001/webman/3rdparty/Duplicati/ngax/index.html - then I still wind up in a Connection lost, retrying… loop, but this time the whole process is in normal time - I actually see the server interface for a couple of seconds initially, then Connection lost, Connecting to server… for a second or so, then Connection lost, retrying in… again, then looping between the two Connection lost messages ad nauseum but at “normal” speed.
While this is going on, I see
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:34825 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34817 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34812 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:34821 TIME_WAIT
tcp 0 0 127.0.0.1:34813 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34819 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:34826 127.0.0.1:8200 TIME_WAIT
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:65407 ESTABLISHED
tcp 0 0 192.168.0.11:5001 192.168.0.8:49781 ESTABLISHED
(Aha, there’s that second session from my PC!)
If I now change the URL again to point to Duplicati directly instead of the redirect that Synology would have me use - http://192.168.0.11:8200/ngax/index.html#/ - then I get the exact same sequence as the previous attempt - initial view, then connection lost loop in normal time, and I see
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:8200 127.0.0.1:35027 TIME_WAIT
tcp 0 0 192.168.0.11:8200 192.168.0.8:51136 ESTABLISHED
tcp 0 0 127.0.0.1:35030 127.0.0.1:8200 TIME_WAIT
tcp 0 0 192.168.0.11:8200 192.168.0.8:51134 ESTABLISHED
tcp 0 0 192.168.0.11:8200 192.168.0.8:51140 ESTABLISHED
tcp 0 0 127.0.0.1:35027 127.0.0.1:8200 TIME_WAIT
tcp 0 0 192.168.0.11:8200 192.168.0.8:51130 ESTABLISHED
tcp 0 0 127.0.0.1:35024 127.0.0.1:8200 TIME_WAIT
tcp 0 0 192.168.0.11:8200 192.168.0.8:51761 ESTABLISHED
tcp 0 0 192.168.0.11:8200 192.168.0.8:51135 ESTABLISHED
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:65407 ESTABLISHED
And finally, if I change the URL once more to point directly to the server by DNS name, then I get The host header sent by the client is not allowed, and see
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 8200
tcp 0 0 0.0.0.0:8200 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:35065 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:35058 127.0.0.1:8200 TIME_WAIT
tcp 0 0 127.0.0.1:8200 127.0.0.1:35061 TIME_WAIT
tcp 0 0 127.0.0.1:35068 127.0.0.1:8200 TIME_WAIT
root@Tower:/var/packages/Duplicati/target# netstat -an |grep 5001
tcp 0 0 0.0.0.0:5001 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.11:5001 192.168.0.8:65407 ESTABLISHED
What is interesting is that in the brief initial periods when the server UI is visible it shows no backups or scheduled tasks, so it’s presumably not using the correct server database though I can’t find any other instance of Duplicati-server.sqlite anywhere.