Skip to content

"No protocols available" on Ubuntu 20.04 #36

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

timcu
Copy link

@timcu timcu commented Jan 3, 2021

I received the above error message using LuaIRC with the Minetest IRC mod. Because I am only able to configure secure as a boolean true and not with a table specifying protocol I have come up with this small change to LuaIRC which I think benefits many users and leaves no users disadvantaged.

tlsv1 and tlsv1_1 are insecure, deprecated and no longer available on Ubuntu as of 20.04 so hardcoding tlsv1 as a default is a bad idea. This pull request fixes the problem by not specifying the protocol version. LuaIRC will now use the highest TLS version available. Using protocol = "any" is also used in the client example for Luasec at https://github.com/brunoos/luasec/wiki . Luasec itself changed from "tlsv1" to "any" in version 0.6 as the default for https connections.

To diagnose the problem, I used openssl to check what protocols were available. TLSv1 and TLSv1.1 worked on MacOS 10.14 but not on Ubuntu 20.04 as can be seen by the failure of these commands on Ubuntu.

openssl s_client -connect chat.freenode.net:6697 -tls1
openssl s_client -connect chat.freenode.net:6697 -tls1_1

TLSv1.2 and TLSv1.3 worked on both MacOS 10.14 and Ubuntu 20.04 as can be seen by the success of these commands.

openssl s_client -connect chat.freenode.net:6697 -tls1_2
openssl s_client -connect chat.freenode.net:6697 -tls1_3

Deprecating TLSv1 and TLSv1.1 is recommended by this IETF RFC https://datatracker.ietf.org/doc/draft-ietf-tls-oldversions-deprecate/ . The RFC also recommends that clients specify their highest supported protocol.

…l be used

tlsv1 and tlsv1_1 are insecure, deprecated and no longer available on Ubuntu as of 20.04
@timcu
Copy link
Author

timcu commented May 23, 2021

Please review this pull request. I know other people are finding a requirement for this change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant