seems to be reporting the same problem using the GUI Settings configuration. How about using:
--webservice-allowedhostnames="*"
on the start line? This fixes the 400 error for me so that I can then hit the “invalid authentication”.
http://IPADDR:8200/login.html
(substitute yours) gives a login page to login with password.
Host name also works, but I haven’t validated filtering in depth. Just saying the * lets me access, provided I do it by command option. Also note prior talk about 2.0.9.102 changed option spelling.
EDIT:
--webservice-allowedhostnames="cli"
attempting to use a CLI filter (since GUI doesn’t look healthy) crashes on start. Server log says:
2024-08-05 14:21:36 -04 - [Information-Duplicati.Server.WebServerLoader-ServerListening]: Server has started and is listening on 0.0.0.0, port 8200
2024-08-05 14:26:47 -04 - [Information-Duplicati.Server.WebServerLoader-ServerListening]: Server has started and is listening on 0.0.0.0, port 8200
2024-08-05 14:51:12 -04 - [Information-Duplicati.Server.WebServerLoader-ServerListening]: Server has started and is listening on 0.0.0.0, port 8200
2024-08-05 14:56:58 -04 - [Information-Duplicati.Server.WebServerLoader-ServerListening]: Server has started and is listening on 0.0.0.0, port 8200
I usually run this in the background, but I ran it from Command Prompt in hope of info, and got
C:\Duplicati\duplicati-2.0.9.102_canary_2024-08-02-win-x64-gui>Duplicati.GUI.TrayIcon.exe --webservice-allowedhostnames="cli"
C:\Duplicati\duplicati-2.0.9.102_canary_2024-08-02-win-x64-gui>Unexpected error: System.AggregateException: One or more errors occurred. (Response status code does not indicate success: 400 (Bad Request).)
---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 400 (Bad Request).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequestInternalAsync[T](String method, String endpoint, String body, Nullable`1 timeout)
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequestInternal[T](String method, String endpoint, String body, Nullable`1 timeout)
at Duplicati.GUI.TrayIcon.HttpServerConnection.ObtainAccessToken()
at Duplicati.GUI.TrayIcon.HttpServerConnection.PerformRequest[T](String method, String urlfragment, String body, Nullable`1 timeout)
at Duplicati.GUI.TrayIcon.HttpServerConnection.UpdateStatus(Boolean longpoll)
at Duplicati.GUI.TrayIcon.HttpServerConnection..ctor(Uri server, String password, PasswordSource passwordSource, Boolean disableTrayIconLogin, Dictionary`2 options)
at Duplicati.GUI.TrayIcon.Program.StartTray(String[] _args, Dictionary`2 options, HostedInstanceKeeper hosted, String password)
so unless your luck is better, you might need to stick to asterisk, so possibly some less security.