Page 1 of 1

Unable to Auth on webUI using safari browser

Posted: Thu May 17, 2018 9:25 pm
by moonhead
Hello.

I have a curious problem with the webUI when attempting to use safari as my browser on macOS High Sierra 10.13.4 (mobile safari has the same affliction). I am able to load the page and I am prompted for the password for the web interface. I am unable, however, to successfully authenticate. I am unable to reproduce this on either chrome or firefox.

versions of software in use to follow:
safari
Image

CentOS/deluge:

Code: Select all

deluge-web: 1.3.15
libtorrent: 1.0.9.0
CentOS Linux release 7.4.1708 (Core)
3.10.0-693.17.1.el7.x86_64
This does not seem to be a recent occurrence for me. I recall having this issue running earlier versions of deluge on a different flavor of linux, as well. I searched the forum and didn't find anything i found particularly relevant. I have validated that the time/clock on both machines are within reason, a modicum of drift between the two.

Image

There are no users other than localclient in the auth config.

Code: Select all

localclient:<snip>:10
Has anyone else encountered this issue? Have I completely missed something?

Thanks for any help that can be provided!

m00n

Re: Unable to Auth on webUI using safari browser

Posted: Fri May 18, 2018 11:50 pm
by kayson
Have you checked the web log? What about your browser's javascript console? Is the request even getting through?

Re: Unable to Auth on webUI using safari browser

Posted: Sat May 19, 2018 4:50 pm
by moonhead
ok. thanks for the ideas.

so i restarted and enabled debug logging on the webUI.
i don't see anything different between the javascript console output on safari vs. chrome, but i'm not well versed in this and may not know what to be looking for.

Here's a snippet of the debug log when attempting to login via safari:

Code: Select all

[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"auth.login","params":["dummy-password"],"id":2}
[DEBUG   ] 11:37:28 auth:199 Received a password via the 1.2 auth method
[INFO    ] 11:37:28 auth:327 Login success (ClientIP my.ip.com)
[DEBUG   ] 11:37:28 auth:146 Creating session for admin
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginDisabledEvent"],"id":3}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginEnabledEvent"],"id":4}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginDisabledEvent"],"id":5}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginEnabledEvent"],"id":6}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.get_events","params":[],"id":7}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.connected","params":[],"id":8}
[DEBUG   ] 11:37:28 json_api:270 json-request: {"method":"web.get_events","params":[],"id":9}
[DEBUG   ] 11:37:29 json_api:270 json-request: {"method":"web.get_events","params":[],"id":10}
[DEBUG   ] 11:37:29 json_api:270 json-request: {"method":"web.get_events","params":[],"id":11}
nothing more is executed and the webUI returns the login prompt at this point. we can see that the authentication was successful, however it appears that safari is not able to move beyond the get_events request to request get_hosts.

Here is a snippet of the debug log when logging in with chrome:

Code: Select all

[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"auth.login","params":["dummy-password"],"id":2}
[DEBUG   ] 11:40:36 auth:199 Received a password via the 1.2 auth method
[INFO    ] 11:40:36 auth:327 Login success (ClientIP my.ip.com)
[DEBUG   ] 11:40:36 auth:146 Creating session for admin
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginDisabledEvent"],"id":3}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginEnabledEvent"],"id":4}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginDisabledEvent"],"id":5}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.register_event_listener","params":["PluginEnabledEvent"],"id":6}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.get_events","params":[],"id":7}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.connected","params":[],"id":8}
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.get_hosts","params":[],"id":9}
[DEBUG   ] 11:40:36 json_api:804 get_hosts called
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.get_hosts","params":[],"id":10}
[DEBUG   ] 11:40:36 json_api:804 get_hosts called
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.get_host_status","params":["be892cc0c4169f3b7ba2a78741cbf80d1d6dc152"],"id":11}
[INFO    ] 11:40:36 client:217 Connecting to daemon at 127.0.0.1:58846..
[DEBUG   ] 11:40:36 json_api:270 json-request: {"method":"web.get_host_status","params":["be892cc0c4169f3b7ba2a78741cbf80d1d6dc152"],"id":12}
[INFO    ] 11:40:36 client:217 Connecting to daemon at 127.0.0.1:58846..
[WARNING ] 11:40:36 client:220 Connection to daemon at 127.0.0.1:58846 failed: Connection was refused by other side: 111: Connection refused.
[DEBUG   ] 11:40:36 client:400 connect_fail: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionRefusedError'>: Connection was refused by other side: 111: Connection refused.
]
at this point i have a fully functional webUI and I am able to proceed with torrent management and interact with the daemon as expected.

not sure where to go from here, but at least i have some more information now.