linux升级openssh-6.7p1
来源:互联网 发布:gitlab ci runner mac 编辑:程序博客网 时间:2024/05/19 15:39
适用版本
redhat linux 5,6,7
centos 5,6,7
oracle linux 5,6,7
Red Hat Enterprise Linux AS release 3 (Taroon Update 9)
其他linux版本未测试
准备:
下载最新版本的openssl和openssh
openssl-1.0.2.tar.gz
openssh-6.7p1.tar.gz
wget ftp://ftp.openssl.org/source/openssl-1.0.2.tar.gz
wget http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/openssh-6.7p1.tar.gz
ssh -V 查看ssh版本
openssl version -a 查看openssl版本
系统要先安装gcc,zlib,zlib-devel,pam,pam-devel等
yum install gcc zlib zlib-devel pam pam-devel
一. 查看zlib版本,rpm -qa|grep zlib,如果是zlib-1.2.3及以上版本,可不用升级zlib,若不然安装最新的openssh时会报zlib版本过低。
二. 若在步骤1中zlib版本过低,下载zlib1.2.3源码安装包(百度一下zlib1.2.3.tar.gz),这里提供一个链接:http://zhidao.baidu.com/share/debc62758716a169df9f62e6ab2bc634.html。
安装:
a) tar -zxvf zlib-1.2.3.tar.gz
b) cd zlib-1.2.3
c) ./configure --prefix=/usr/local/zlib
d) make
e) make install
注:这里configure的时候会检查缺少哪些东西,缺少的东西补上安装就行,否则无法进行make
解压:
tar zxvf openssl-1.0.2.tar.gz
tar zxvf openssh-6.7p1.tar.gz
查看所需的其他软件包是否完备
rpm -qa|egrep "gcc|gcc-c++|pam|pam-develmake|zlib|perl"| sort
不完备则需要安装
安装openssl
ssh -V
rpm -e `rpm -qa|grep openssl` --allmatches --nodeps
cd openssl-1.0.2
./config --prefix=/usr --shared
make
make test
make install
安装openssh
openssl version -a
mv /etc/ssh /etc/ssh.bak
cd ..
cd openssh-6.7p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords
rpm -e `rpm -qa|grep openssh` --nodeps
make
make install
ssh -V
复制启动脚本和设置自启动
cp contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
启动新的openssh应用
service sshd start
注:这里复制sshd运行脚本,主要是解决可能机器重启后重连sshd会提示密码错误,必须连进主机重启sshd服务才恢复正常的问题
mv /usr/sbin/sshd /usr/sbin/sshd.bak
cp sshd /usr/sbin/sshd
笔者就遇到了这样的问题,问题原因尚不清楚
建软链接库(删除openssl的rpm包的时候被删除了)
cd /usr/lib64(如果是32位系统,则是/usr/lib)
ln -s libssl.so.1.0.0 libssl.so.10
ln -s libcrypto.so.1.0.0 libcrypto.so.10
断开,重连
(这里libcrypto.so.1.0.0,和libssl.so.1.0.0在解压的openssl文件夹执行了make过后会有这两个文件)
linux 5额外需要操作
cd /usr/lib
ln -s /usr/lib64/libssl.so.1.0.0 libssl.so
ln -s /usr/lib64/libcrypto.so libcrypto.so
cd /lib64
cp /usr/lib64/libssl.so.1.0.0 libssl.so.1.0.0
ln -s libssl.so.1.0.0 libssl.so.6
cp /usr/lib64/libcrypto.so.1.0.0 libcrypto.so.1.0.0
ln -s libcrypto.so.1.0.0 libcrypto.so.6
总之就是尽量让其他应用程序(比如python)能够找到openssl相关的库文件libssl.so.10,libcrypto.so.10,libssl.so,libcrypto.so, libcrypto.so.6,而我们在存放lib的目录建立软链接
链接至编译出来的最新的库文件libssl.so.1.0.0 和libcrypto.so.1.0.0,这样就不会有问题
为了避免麻烦,可以在卸载当前的openssl之前,在/usr/lib64,/usr/lib,/lib64这些目录查找libssl和libcrypto的条目
例如:
cd /usr/lib64
ls -l libssl*
ls -l libcrypt*
安装完新的openssh后,再去比较少了哪些文件,这时候我们再建新的软链接至新的库即可。
卸载openssl之前查找库文件所在位置
yum whatprovides "*/*libssl.so.6"
yum whatprovides "*/*libssl.so"
yum whatprovides "*/*libcrypto.so.6"
yum whatprovides "*/*libcrypto.so"
yum whatprovides "*/*libssl.so.10"
yum whatprovides "*/*libcrypto.so.10"
后话:
经测试,不用卸载系统自带的openssl的相关软件也没问题,在安装其他软件需要用到openssl库的时候,指定我们编译安装的openssl目录即可
- linux升级openssh-6.7p1
- openssh-7.5p1升级
- 升级openssh步骤(7.6p1)
- CentOS 5.5下升级OpenSSH-4.3p2到5.6p1
- CentOS 6.8 升级OpenSSH至最新版本7.5p1
- linux openssh 升级
- linux下升级openssh
- linux openssh升级步骤
- linux升级openssh
- [Linux] OpenSSH 升级
- 升级openssh【linux平台】
- Linux升级OpenSSH完整手册
- OpenSSH-4.7p1 安装指南
- OpenSSH-4.7p1 安装指南
- Linux升级openssh及问题总结
- openssh升级
- openssh升级
- 升级 openssh
- python scipy numpy matplotlib傻瓜式安装
- 算法导论 第22章 图的基本算法(二) 深度优先搜索
- js indexOf使用方法
- jmeter实践
- 工作周记
- linux升级openssh-6.7p1
- 采购订单凭证层字段属性定义
- android 使用单元测试的注意事项
- javascript 验证例子
- 各种数据库默认端口汇集
- Tuning the Cluster for MapReduce v2 (YARN)
- cocos2d-js 实现双指缩放地图效果 和 单点移动效果
- [易飞]录入信息传递设置信息
- Latex数学公式中的空格表示方法