protonscr

In-home streaming fails to operate between Linux host and Linux client "Unknown PSK Identity"

steamclosed Streaming
ValveSoftware/steam-for-linux#5824 · opened 2018-10-10 by ryao · updated 2021-04-09 · 7 comments · github
Rryao 2018-10-10 github

Your system information

  • Steam client version (build number or date): 1536436120
  • Distribution (e.g. Ubuntu): Gentoo
  • Opted into Steam client beta?: No
  • Have you checked for system updates?: Yes

Please describe your issue in as much detail as possible:

In home streaming used to work between my Gentoo Linux desktop and my Windows 7 VR system. After switching my VR system from Windows 7 to Gentoo Linux, in-home streaming stopped working.

I captured the interaction between the two via wireshark. Wireshark claims that an error code is being sent from the VR system to my desktop.

TLSv1.2 73 Alert (Level: Fatal, Description: Unknown PSK Identity)

I have a localconfig.vdf file on both systems, which reportedly contains the authentication data for in-home streaming:

https://codingrange.com/blog/steam-in-home-streaming-control-protocol

Interestingly, the AuthData required to make it work is only present on the system trying to connect, rather than on both systems. I suspect that a missing PSK on the new Linux install is the cause, but I didn't try manually editing the file to test that theory because I don't have the source code to check to see how it would behave.

I tried manually connecting to port 27036 on the host as shown there (with -tls1_2 included to ensure that it matches what I saw in wireshark), but I am getting SSL alert number 115. At a glance, the session captured by wireshark when using steam to try to connect to it and the session captured by wireshark when using openssl to connect look identical. I did try connect_remote in the console, although steam would automatically try to connect at start, only to have that SSL failure.

Steps for reproducing this issue:

  1. Setup a Linux system running Steam
  2. Setup a Windows system running Steam
  3. Verify in-home streaming works from a Windows host to the Linux system.
  4. Install Linux on the system with Windows.
  5. Install steam on the system that previously had Windows.
  6. Try again, and it fails.

If it is relevant, I tried out in-home streaming from the host when it ran Windows to the Linux desktop before setup a Steamlink. This time, I set up the Steamlink before trying in-home streaming with Linux on the host. This is also across subnets with firewall rules only allowing connection establishment in one direction. Those rules weren't a problem for the Windows host Linux client setup though.

Rryao 2018-11-07 github

I just did a test without the LD_PRELOAD and for some reason unknown to me, this is now working. This is with steam client version 1539393410 on the client. The only remaining issue now is that it doesn't automatically recognize steam on a system on the other subnet like it did when that system ran Windows.

Ddarekols 2019-01-01 github

@ryao
I got the same issue. Can you explain what do you mean by "test without the LD_PRELOAD"?

Ccminnoy 2019-03-22 github

I also have a Linux host and Linux client for in-home streaming. Steam on the client side tells that I should log-into the host to play the game. Which is weird; if the client is a Windows machine I can perfectly play the games hosted on the Linux machine.

Ddarekols 2019-03-23 github

Linux host can easily stream games even with Proton runtime (which is amazing), but i could not figure out how to connect with Linux client. I ended up with Windows7 as a host (performance in some cases is better than Win10).

Rryao 2019-03-26 github

@darekols I forgot what I meant. Either stream is doing a LD_PRELOAD on the crypto library or I did in testing.

Kkisak-valve maintainer 2021-03-05 github

Hello, is anyone still experiencing this issue (specifically with an encryption failure) on an up to date system?

It appears the issue in the opening post was resolved.

Kkisak-valve maintainer 2021-04-09 github

Closing as outdated.

Nothing extracted yet.