Skip to content
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

infra: install OpenSSL 3.0.1 in FIPS mode #23

Merged
merged 5 commits into from
Apr 20, 2022
Merged

Conversation

qmuntal
Copy link
Member

@qmuntal qmuntal commented Apr 7, 2022

OpenSSL 3 revamped the FIPS mode. It is no longer provided by an external module but by a built-in provider, which turns to be easy to build and install.

Additionally, after #22 landed and removed the dependency on OpenSSL development headers, it is much easier to switch between OpenSSL versions.

These two facts together allow us to build, install and use OpenSSL 3 in FIPS mode with just some minor infra modifications.

@qmuntal qmuntal requested review from jaredpar, dagood and chsienki April 7, 2022 14:55
@qmuntal
Copy link
Member Author

qmuntal commented Apr 7, 2022

Well, it worked locally but OpenSSL 3 tests are still running with FIPS mode off...

@qmuntal
Copy link
Member Author

qmuntal commented Apr 7, 2022

Working!

Copy link
Member

@dagood dagood left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, a question about the libssl-dev change.

@@ -12,8 +12,6 @@ jobs:
steps:
- name: Install build tools
run: sudo apt-get install -y build-essential
- name: Remove libssl-dev
run: sudo apt-get remove -y libssl-dev
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean the tests depend on the ubuntu-provided libssl-dev being installed first, then installing over it with our own build of 3.0? Or are we using both (openssl from ubuntu, but FIPS provider from our own build)?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed this because we don't need development headers anymore, which was why we were installing libssl-dev.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I must be missing something... it looks to me like this PR is removing the removal of libssl-dev, so after this PR we'll actually be leaving it installed after install build-essential pulls it in.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My bad. We were previously removing the system openssl headers because we needed to use our own, so we were removing the system openssl headers to avoid conflicts. Now we don't care if there are headers or not, so there is no point on removing them.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it! Thanks.

@qmuntal qmuntal merged commit a127057 into main Apr 20, 2022
@qmuntal qmuntal deleted the dev/qmuntal/test-fips branch April 20, 2022 17:08
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.

3 participants