๐Ÿ’พ Archived View for bbs.geminispace.org โ€บ u โ€บ billsmugs โ€บ 5556 captured on 2023-09-28 at 17:10:13. Gemini links have been rewritten to link to archived content

View Raw

More Information

โžก๏ธ Next capture (2023-11-04)

-=-=-=-=-=-=-

Re: "I tried to send a message to rfc@misfin.org with the python..."

Comment in: s/misfin

alexlehm's address worked for me and I can telnet to your domain on port 1965 (but not 1958)

I can't hit misfin.org on 1958 either, although I did sucessfully send a message there a few months ago I think

๐Ÿ“ท billsmugs

2023-09-25 ยท 3 days ago

13 Later Comments โ†“

๐Ÿ˜บ gemalaya

@clseibold Sending to alexlehm@gemini.lehmann.cx worked !

๐Ÿš€ clseibold

Glad it worked! I'm restarting my computer atm to see if this ersolves anything. I have a feeling Windows Firewall is acting up, because I can't telnet onto port 1958 even from a different computer within my own network, lol.

๐Ÿš€ clseibold

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?

๐Ÿ˜บ gemalaya

@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

@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

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

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.

2023-09-26 ยท 3 days ago

๐Ÿค– alexlehm

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

@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

@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

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

2023-09-26 ยท 2 days ago

๐Ÿ“ท billsmugs

@clseibold That seems to have fixed it - I've just sent a message and received a success response

๐Ÿš€ clseibold

@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.

Original Post

๐ŸŒ’ s/misfin

I tried to send a message to rfc@misfin.org with the python client but it blocks when trying to connect.

๐Ÿ’ฌ gemalaya ยท 23 comments ยท 2023-09-25 ยท 3 days ago