https://github.com/rustls/rustls-openssl-compat
OpenSSL compatibility layers
https://github.com/rustls/rustls-openssl-compat
Last synced: 8 months ago
JSON representation
OpenSSL compatibility layers
- Host: GitHub
- URL: https://github.com/rustls/rustls-openssl-compat
- Owner: rustls
- License: apache-2.0
- Created: 2024-01-11T18:09:15.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-06-06T15:01:08.000Z (8 months ago)
- Last Synced: 2025-06-08T00:08:38.066Z (8 months ago)
- Language: Rust
- Size: 430 KB
- Stars: 64
- Watchers: 6
- Forks: 6
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
rustls-libssl is a partial reimplementation of the OpenSSL 3 libssl ABI.
It is written in rust and uses rustls. It does not replace libcrypto:
this is still required.
[](https://github.com/rustls/rustls-openssl-compat/actions/workflows/libssl.yaml)
# Status
This project is experimental. We have aimed for the subset of libssl
used by:
- curl on Ubuntu 22.04 LTS
- nginx on Ubuntu 22.04 LTS and 24.04 LTS
- nginx on Fedora 40
We have a [compatibility matrix](MATRIX.md) and
[known issues](https://github.com/rustls/rustls-openssl-compat/issues).
# Usage
## Installation
Ubuntu/Debian users:
```shell
$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl_amd64.deb
$ sudo dpkg -i rustls-libssl_amd64.deb
```
or Fedora/Redhat users:
```shell
$ wget https://github.com/rustls/rustls-openssl-compat/releases/latest/download/rustls-libssl.x86_64.rpm
$ sudo yum localinstall -y rustls-libssl.x86_64.rpm
```
Using curl:
```shell
$ with-rustls-libssl curl https://google.com/
```
`with-rustls-libssl` just sets `LD_LIBRARY_PATH` and executes the given process.
Using nginx:
```shell
$ sudo rustls-libssl-nginx enable
$ sudo systemctl daemon-reload
$ sudo service nginx restart
```
`rustls-libssl-nginx enable` installs a systemd drop-in in `/etc/systemd/system/nginx.service.d/`.
`rustls-libssl-nginx disable` undoes that.
# Changelog
The detailed list of changes in each release can be found at
https://github.com/rustls/rustls-openssl-compat/releases.
# License
rustls-libssl is distributed under the Apache-2.0 license. See [LICENSE](LICENSE).