-
Notifications
You must be signed in to change notification settings - Fork 566
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
recreate certs for SSL example configs #866
base: master
Are you sure you want to change the base?
Conversation
@dckorben - Since you know a lot about SSL certs, do you see anything obviously wrong here? I've included shell scripts which list the commands used to recreate these certs. I've gotten something wrong, but I'm not sure what. |
Is the intent for these re-create on every build? If so, there are .NET native things that can be done similarly to the tests I added for I don't see the passphrase being set in the openssl commandline for the certs That's my cursory review but I'll try to test this more definitively. |
I take it you are getting |
Yes, that's what I get. The reason for this PR is that it turns out the old SSL certs never worked on my Mac. They came from a submission years ago, and I think I vetted them on Windows at the time. Recently I discovered they didn't work on Mac, and decided to try to fix that. And here we are. |
I reserve my right to change my mind but it looks like the root cause is: Those certs are very old and lacking SANs but then the I'm gonna do a little more testing to confirm a fix. |
SSLServerName=QuickFixn-TestServer | ||
SSLCACertificate=../QuickFixn-TestCA.cer | ||
SSLServerName=qfn-server.demo | ||
SSLCACertificate=../quickfixn-CA.demo.cer | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you need SSLCheckCertificateRevocation=N
in this config
The pre-PR certs are very old, of course. I have no idea what commands were used to create them. The certs in this PR are much less important than the process used to create them. My bash scripts are just a record of what I tried. If there is a better way to create the certs (such as the .NET native way you mentioned), I'm all for it. The true goal is to have a repeatable cert-creation procedure that produces certs that work on all platforms. |
I threw together a powershell which generated the 3 certs and successfully handshaked but it was getting late so I need to verify my work. Since there are other ps scripts in the repo, I assume those would be viable? |
Yeah, powershell is my preference, actually, since it is cross-platform. Actually, when I made this PR, I don't think I planned on including scripts -- just the corrected certs. The bash scripts were just to document what I tried. But now with the benefit of memory-fogged hindsight, I think documenting the procedure with scripts is an important thing to do. |
https://github.com/dckorben/quickfixn/tree/develop-demo-certs I dropped |
This doesn't work yet