1.OpenSSL升级版本到最新(1.1.1)
2.openssl是码包干什么的
3.Linux Ubuntu openssl离线源码安装、升级版本
4.FFmpeg开发笔记(十六)Linux交叉编译Android的码包OpenSSL库
5.Openssl升级操作
OpenSSL升级版本到最新(1.1.1)
了解最新稳定版本为 OpenSSL 1.1.1 系列(具体获取方式见官网 链接)。 欲升级至最新版本,码包请先执行命令 `openssl version` 确认当前版本为 OpenSSL 1.0 系列。码包 接着,码包使用 `wget` 命令下载最新稳定版本的码包源码编程成器下载 OpenSSL 源码包,具体命令格式为 `wget openssl.org/source/open...`,码包注意填充实际文件路径。码包 下载完毕后,码包通过 `make && make install` 编译并安装源码包。码包在等待安装完成期间,码包请耐心等待。码包完成安装后,码包再次执行 `openssl version` 查看版本信息。码包 若升级后执行 `openssl version` 显示仍为 OpenSSL 1.0.2k-fips 版本,码包不必担心升级失败。这是printf源码在哪里由于当前会话并未更新,需要重新启动终端会话或打开新会话以确保版本升级生效。重启机器并非必要步骤。 在新会话中执行 `openssl version` 命令,应能看到升级后的版本信息。 若升级后执行 `openssl version` 时遇到 `openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory` 错误,可执行以下命令解决: 针对更详细的安装说明,可参考官方文档或相关教程。openssl是干什么的
openssl是干什么的OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上。
OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库、应用程序以及密码算法库。OpenSSL的目录结构自然也是围绕这三个功能部分进行规划的。
作为一个基于密码学的商标转让系统源码安全开发包,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。
Linux Ubuntu openssl离线源码安装、升级版本
Ubuntu ..1
OpenSSL 1.0.2g 1 Mar
官网:openssl.org 下载:openssl.org/source/
官网最新可用生产版本openssl-1.1.1k,openssl-3.0.0-alpha版本是openssl的下一个主要版本,includes the new FIPS Object Module(新特性),预发布版本,不轻易直接用于生产环境。
这次下载openssl-1.1.1k.tar.gz的源码包。
将openssl源码包解压,并进入openssl-1.1.1k文件夹
查看README,了解安装openssl的预制环境条件,已安装过环境。
查看INSTALL,网站源码合买根据Quick Start直接编译。
编译、安装过程中无任何报错,一路畅通,查看openssl版本。
查看版本信息报错,没有libssl.so.1.1依赖文件。搜索发现libssl.so.1.1依赖文件存在,但路径不对。建立软链接后,查看openssl信息依旧报错:libcrypto.so.1.1依赖文件不存在。同样建立软链接,成功更新openssl版本。
成功更新openssl版本后,可以执行openssl命令。
尝试openssl-3.0.0-alpha的溯源码z码预发布版本,除编译命令不一致外,同样需要建立依赖库软链接。
使用以下命令配置、构建和测试:Unix / Linux / macOS,一键安装版本install.sh,openssl-1.1.1k版本。
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
《FFmpeg开发实战:从零基础到短视频上线》一书中,示例程序主要针对本地音视频文件进行测试。鉴于安全性考虑,众多网络视频都采用了/openssl/open...,各版本openssl的下载页面是github.com/openssl/open...。以年月发布的openssl-3.2.0为例,可以从以下链接下载该版本的openssl源码包:
github.com/openssl/open...
将openssl的源码包上传到Linux服务器,解压并进入源码目录,执行以下命令:
tar zxvf openssl-3.2.0.tar.gz cd openssl-3.2.0
确认ndk已放置在服务器上,创建编译脚本build_openssl.sh,填入以下脚本内容(注意android-arm表示编译位的so库,no-shared表示只编译静态库不编译动态库):
#!/bin/bash NDK_HOME=/usr/local/src/android-ndk-re SYSTEM=linux-x_ HOST=aarch-linux-android API= export PATH=$NDK_HOME/toolchains/llvm/prebuilt/$SYSTEM/bin:$NDK_HOME/toolchains/$HOST-4.9/prebuilt/$SYSTEM/bin:$PATH export ANDROID_NDK_ROOT=$NDK_HOME echo "config for openssl" ./Configure android-arm no-shared --prefix=/usr/local/app_openssl -D__ANDROID_API__=$API echo "config for openssl completed" make -j4 make install
保存并退出build_openssl.sh,执行以下命令编译和安装openssl:
chmod +x build_openssl.sh ./build_openssl.sh
2、加载openssl的环境变量
第一步将openssl安装在/usr/local/app_openssl,并将openssl的pkgconfig路径加载到环境变量PKG_CONFIG_PATH中。Linux系统的profile文件位于用户初始目录的.bash_profile。执行以下命令编辑当前用户的profile文件:
cd vi .bash_profile
往.bash_profile文件末尾添加以下一行:
export PKG_CONFIG_PATH=/usr/local/app_openssl/lib/pkgconfig:$PKG_CONFIG_PATH
保存并退出.bash_profile后,执行以下命令加载环境变量:
source .bash_profile
然后执行以下环境变量查看命令,确保openssl的环境变量已经成功加载:
env | grep PKG
3、重新编译FFmpeg启用openssl
打开《FFmpeg开发实战:从零基础到短视频上线》随书源码的chapter/config_ffmpeg_full.sh,将该文件另存为config_ffmpeg_openssl.sh,并在文件内部这行--enable-libx \的下面增加如下一行配置:
--enable-openssl \
将config_ffmpeg_openssl.sh上传到服务器的FFmpeg源码目录,执行以下命令赋予可执行权限:
chmod +x config_ffmpeg_openssl.sh
然后运行以下命令配置、编译和安装FFmpeg:
./config_ffmpeg_openssl.sh make clean make -j4 make install
4、将so文件导入App工程
(1)将FFmpeg交叉编译好的include目录(位于/usr/local/app_ffmpeg/include)整个复制到App工程的src/main/cpp目录下。
(2)在src\main目录下创建jniLibs目录,并在jniLibs下面创建子目录arm-v8a,将FFmpeg交叉编译好的8个so文件(位于/usr/local/app_ffmpeg/lib)全部复制到arm-v8a目录下。
(3)将config_ffmpeg_openssl.sh里面启用的几个第三方库的so文件也一起复制到arm-v8a目录下,包括x、x、mp3lame、freetype等。
(4)打开App工程的cpp代码,将待播放的在线视频地址改为https链接,重新编译安装App,即可正常播放https视频。
Openssl升级操作
为了升级 OpenSSL 到最新版本,可以遵循以下步骤。首先,查看您当前使用的 Linux 系统版本,确认为 CentOS Linux release 7.3. (Core)。
接着,通过执行命令查看已安装的 OpenSSL 版本:
在终端中输入 openssl version,以显示版本信息。
获取 OpenSSL 的路径,使用命令 which openssl 可以获取。
下载最新 OpenSSL 版本(目前为 1.1.1),可从官网 openssl.org/source 下载。
使用 wget 命令下载最新版本的 OpenSSL 源码包。
安装必需的依赖,如 yum install -y zlib、yum install –y zlib-devel 和 yum install –y gcc,以确保新版本 OpenSSL 的正确安装。
从 perl.org/get.html 下载新版本的 Perl 源码包。
解压 Perl 源码包,并建立安装目录 mkdir /usr/local/perl。
在安装目录中配置 Perl 参数,使用 cd perl-5..2 进入目录后,执行 ./Configure -des -Dprefix=/usr/local/perl -Dusethreads –Uversiononly。
编译并安装 Perl,执行 make 和 make install。
安装完 Perl 后,安装 OpenSSL,首先解压 OpenSSL 源码包,然后在 OpenSSL 目录中配置,使用 ./config shared zlib。接着执行编译和安装命令 make 和 make install。
为了使用新版本的 OpenSSL,需要备份原有的版本,并创建链接指向新安装的 OpenSSL。执行以下命令:
使用 mv 命令备份 OpenSSL 库和执行文件。
创建指向新 OpenSSL 的符号链接,使用 ln -s 命令。
更新动态链接库配置,将新版本的 OpenSSL 库路径添加到 /etc/ld.so.conf 文件中。
重新加载动态链接库,使用 ldconfig -v 命令。
最后,检查已安装的最新 OpenSSL 版本,使用 openssl version 和 openssl version –a 命令。
在升级过程中,可能会遇到错误“openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory”。这是由于库文件位置不正确导致的。通过在 root 用户下执行以下命令来解决:
使用 ln -s 命令创建指向正确位置的符号链接,确保库文件可以被加载。