You're having issues connecting? There are a bunch of common problems, and this page tries to be a collection of possible issues.
First, you should really really really use encryption (TLS, also called SSL). The reason is that WeeChat relay allows access to /exec
, so if you don't use encryption, anyone who sniffs your browser could find out your password and execute arbitrary code on your server. So go ahead and get yourself a certificate from Let's Encrypt. It's free, very easy to set up, and there are tons of guides out there.
If you're on a mobile device, self-signed certificates are a world of hurt (especially on Apple devices). You're better of getting a trusted certificate from Let's Encrypt. This is also worthwhile for desktop machines, as it's just less hassle all around.
If you're using chrome there are several ports which are blocked for security reasons, including 6667. To avoid problems choose a different port for your relay.
If it still doesn't work, here are some things you can try:
- navigate to
https://<host>:<port>/weechat
(e.g.https://foo.bar:9002/weechat
) in your browser. Do you get a certificate warning/error? If so, your certificate isn't set up properly. Correct behaviour would be a blank page. - did you run
/relay sslcertkey
after setting your certificate? Try re-running it. - are you using an ad- or scriptblocker? If so check if websocket/xhr-connections to your server are allowed
- let our bot diagnose your TLS setup, query
lorelai
on freenode and type>ttls <host>:<port>
(substituting host and port as above)
If you can connect fine with your desktop/laptop, but are having trouble on your phone, you're most likely missing one or more intermediate CAs in your relay.pem
. You can diagnose this with lorelai
as above. Include all relevant intermediates and re-run /relay sslcertkey
.
Finally, if none of this helps, join us in #glowing-bear
on freenode. I'm sure we can figure this out! (Please don't open an issue about it, it's far easier to diagnose this over IRC)
Note: if you don't want to have to have to run /relay sslcertkey
every two to three months with Let's Encrypt, you can proxy the relay behind a web server. You can do this with nginx or apache, for example.