๐พ Archived View for bbs.geminispace.org โบ u โบ clseibold โบ 5559 captured on 2023-12-28 at 18:13:04. Gemini links have been rewritten to link to archived content
โฌ ๏ธ Previous capture (2023-11-14)
-=-=-=-=-=-=-
Re: "I tried to send a message to rfc@misfin.org with the python..."
So, I'm extremely frustrated. It just won't work. Can't even send from a different computer on my same network to the server. I've also made sure to open the ports in Windows Firewall, but it just fails to send.
@alexlehm How did you get your misfin server to work on Windows?
Sep 25 ยท 3 months ago
๐บ gemalaya ยท Sep 25 at 23:06:
@clseibold You need to check which "hostname" you used in the certificates, that's what misfin looks at to know which hostname to contact. Make sure the hostname for the certificate you're sending to can be resolved by the client machine.
To see which hostname it's trying to contact, add this line in transponder/misfin.py in the send_as() function before the sock.connect call
print(req.recipient.hostname, default_port)
๐ clseibold ยท Sep 25 at 23:09:
@gemalaya I used my auragem.letz.dev hostname. I don't have any fancy loopback stuff on my network, so I was trying to connect to the server with a local ip address, which might be why it isn't working. But I have no other way of testing whether the server works from outside my network. It's incredibly frustrating.
And I'm certainly not going to walk a hour to the nearest location with free wifi just to test this, lol.
๐ clseibold ยท Sep 25 at 23:36:
I'm using a port checker online and it still says the port is closed. I have the port forwarding, and I even tried disabling the entire Windows Firewall, so I have no clue what's going on.
It's like any new port that I add to my modem's port forwarding settings just doesn't work.
I recall it taking several hours to get port 1965 for the Gemini server open too, because I had the same problems at first.
๐ clseibold ยท Sep 26 at 03:08:
The only thing I can guess as to why my port is showing closed is that the python program isn't working correctly or something. Otherwise I have no clue. I'm going to look into trying the program from WSL to see if that changes anything.
๐ค alexlehm ยท Sep 26 at 07:43:
I have the server on linux shared host, I use the python client to send only. I wouldn't be able to run the server on my windows since my ISP has CGNAT for IPv6 (vodafone cable), so I don't think I can do port forward
๐ค alexlehm ยท Sep 26 at 07:46:
@clseilbold, I cannot reach your misfin port with telnet but I can reach your gemini port, likely you need some router config to reach it
๐ clseibold ยท Sep 26 at 08:54:
@alexlehm The router is already configured for port forwarding of port 1958, *and* I allowed the port in Windows Firewall, so I really don't know what the issue is, tbh.
๐ clseibold ยท Sep 26 at 18:59:
So, I might have found the problem, but I'm not sure. When the python program asks for your hostname, it's asking for the address you want to bind to, and assuming it's also the hostname people should use to email you with. I have been putting in "auragem.letz.dev", which I set to resolve to "127.0.0.1" in my hosts file. Additionally, in the make_cert command, the python program seems to run "x509.DNSName(hostname)" for the SubjAltName of the cert. This assumes that the hostname you listen on is the same as your DNS SubjAltName in your cert. This probably breaks for everyone that doesn't have loopback.
I changed the python program to listen on all available IP addresses instead (by using "0.0.0.0" in the bind function). @gemalaya Thanks for helping me figure this out!
@lem-two @lem I suggest making the python program simpler by using the "hostname" argument into the script as the SubjectAltName of the cert, and using "0.0.0.0" as the bind address so that it binds to all addresses.
I haven't tested this yet, but I think the changes I made will solve my issue... hopefully.
Edit: The changes fixed me being able to send to another computer from within my own network. Now I just need someone else to try to send to clseibold@auragem.letz.dev
๐ท billsmugs ยท Sep 26 at 19:10:
@clseibold That seems to have fixed it - I've just sent a message and received a success response
๐ clseibold ยท Sep 26 at 19:16:
@billsmugs Yay! Thanks! This is a good lesson for all developers, don't use the SubjAltName of the cert as the same as the bind address! Not everyone supports loopback! Imo, they should be handled completely separately.
I tried to send a message to rfc@misfin.org with the python client but it blocks when trying to connect.