Linux升级openssl版本

Posted 告辞啥都不会

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux升级openssl版本相关的知识,希望对你有一定的参考价值。

Linux下升级openssl

公司由于使用第三方漏洞扫描,检测出openssh存在漏洞以及ssl漏洞

因次得升级openssl
升级步骤:

1、去官网下载最新版本,或wget下载也行 http://www.openssl.org

wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz

2、解压并进入解压目录后执行:

./config --prefix=/usr/local/openssl shared zlib
make depend
make && make install

3、备份当前openssl:

mv /usr/local/openssl /usr/local/openssl.bak

mv /usr/include/openssl /usr/include/openssl.bak

4、配置使用新版本:

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/openssl/include/openssl /usr/include/openssl

5、更新动态链接库数据:

echo “/usr/local/ssl/lib” >> /etc/ld.so.conf

重新加载动态链接库
ldconfig -v

6、重新查看版本号:

openssl version

结果报错了,这是由于openssl库的位置不正确造成的。
可以做一个软连接:

ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib/

ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib/

然后再执行第5步,再重新加载动态链数据:
echo “/usr/local/ssl/lib” >> /etc/ld.so.conf

重新加载动态链接库
ldconfig -v

再查看版本号
openssl version

ok,成功。
然后用ssh -V查看时候会出现两个版本不一致的情况

这是因为我们先升级了openssh在升级的openssl所导致的,因此,只需要后面再重新升级下openssh就行了,当然也可以不用升级,反正你现在的openssl版本就是1.1.1g了,只是openssh用的版本还是1.0.2k的,不会有啥影响。

我是根据这位大佬结合自己服务器的实际情况进行的,我是通关官网在线下载下上传至服务器上的
https://www.cnblogs.com/caibao666/p/9698842.html

linux 可以openssl吗

Openssl是用来生成一个密钥的,我们通常是成对出来了,下面一起来看看在linux 下Openssl的安装配置与使用方法,希望对各位有用。
1. Openssl介绍
自己网上找去吧,我说的不好!
2. 安装
1、下载地址:http://www.openssl.org/source/ ;下一个最新新版本的OpenSSL,版本是:openssl-1.0.2-beta1.tar.gz
2、在下载的目录中,用命令执行:tar -xzf openssl-openssl-1.0.2-beta1.tar.gz
3、进入解压的目录:openssl-1.0.2-beta1 [.......]#cd openssl-1.0.2-beta1
4、[.....openssl-1.0.2-beta1]# ./config --prefix=/usr/local/openssl
5、[...../openssl-1.0.2-beta1]# ./config -t
6、[...../openssl-1.0.2-beta1]# make depend (时间很长)
7、[.../openssl-1.0.2-beta1]# make (时间很长,慢慢等待)
8、[.../openssl-1.0.2-beta1]# maketest
9、[.../openssl-1.0.2-beta1]# makeinstall
10、[...../openssl-1.0.2-beta1]# cd /usr/local
11、[/usr/local]# ln -s openssl ssl
12、在/etc/ld.so.conf文件的最后面,添加如下内容:/usr/local/openssl/lib
13...]# ldconfig
14添加OPESSL的环境变量:
在etc/的profile的最后一行,添加:
export OPENSSL=/usr/local/openssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
15退出命令界面,再从新登录。
16、以上OPENSSL就安装完毕,下面进行一些检查。
17依次如下执行:
[root@localhost /]# cd /usr/local
[root@localhost local]# ldd /usr/local/openssl/bin/openssl
会出现类似如下信息:
linux-vdso.so.1 => (0x00007fff3bc73000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fc5385d7000)
libc.so.6 => /lib64/libc.so.6 (0x00007fc538279000)
/lib64/ld-linux-x86-64.so.2 (0x00007fc5387db000)
18查看路径
...]# which openssl
/usr/local/openssl/bin/openssl
19、...]# openssl version
OpenSSL 1.0.2-beta1 24 Feb 2014
3. 错误情况
自己写的程序出现这个(fatal error: openssl/sha.h: No such fileor directory)或者相似的问题,一开始以为是环境变量的问题,重装了几次,后来差了网络才知道问题所在,都是没有安装libssl-dev,libssl-dev包含libraries, header files and manpages,他是openssl的一部分,而openssl对ssl进行了实现。解决方案:使用sudo apt-get install libssl-dev来安装libssl-dev即可注:部分为网上抄袭!

下面来看使用方法,生成RSA
3.1 公私钥对生成
命令解析:openssl genrsa[-out filename] [-passout arg] [-des] [-des3] [-idea] [-f4][-3] [-rand file(s)] [numbits]
OPTIONS
-out filename 私有密钥输入文件名,缺省为标准输出。
-passout arg 参看指令dsa里面的passout参数说明 -des|-des3|-idea 采用什么加密算法来加密我们的密钥。一般会要你输入保护密码。 如果这三个中一个也没set, 我们的密钥将不被加密而输入。
-F4|-3 使用的公共组件,一种是3, 一种是F4, 我也没弄懂这个option是什么意思。
-randfile(s) 产生key的时候用过seed的文件,可以把多个文件用冒号分开一起做seed.
-numbits 指明产生的参数的长度。必须是本指令的最后一个参数。如果没有指明,则产生512bit长的参数。 研究过RSA算法的人肯定知道,RSA的私有密钥其实就是三个数字,其中俩个是质数。这俩个呢,就叫prime numbers.产生RSA私有密钥的关键就是产生这俩。还有一些其他的参数,引导着整个私有密钥产生的过程。因为产生私有密钥过程需要很多随机数,这个过程的时间是不固定的。
//root@ubuntu:/mnt/hgfs/windows_linux/AlipayEx/study/opensslstudy/study#openssl genrsa -out RSAPrivateKey.pem 1024
//root@ubuntu:/mnt/hgfs/windows_linux/AlipayEx/study/opensslstudy/study#openssl rsa -in RSAPrivateKey.pem -pubout -out RSAPublicKey.pem

3.2 读取密钥
PEM_read_RSAPrivateKey
PEM_read_RSA_PUBKEY
具体参数看文档去吧!
3.3 加解密
公钥加密,私钥解密
RSA_public_encrypt
RSA_private_decrypt
具体参数看文档去吧!
3.4 签名
私钥签名,公钥验签
SHAwithRSA
1.SHA1M(自己封装的)
2. RSA_sign(/*sha1withRSA第一个参数为NID_sha1,第二第三个参数为明文的sha1摘要及长度SA_verify
参考技术A 当然可以啊 你可以查一下openssl的安装过程和命令用法
更多Linux操作知识,可以百度《Linux就该这么学》。本回答被提问者采纳
参考技术B 可以的

以上是关于Linux升级openssl版本的主要内容,如果未能解决你的问题,请参考以下文章

Linux升级openssl版本

Linux openssl 升级降级

Linux 之 openssl版本升级

在linux系统中升级openssl版本后为啥普通用户看不到openssl版本

centos6.9升级openssl版本

linux 可以openssl吗