1、解压安装openssl包:(不能卸载openssl,否则会影响系统的ssl加密库文件,除非你可以做两个软连接libcryto和libssl)

# tar -zxvf openssl-1.0.1.tar.gz

# cd openssl-1.0.1

#./config -fPIC threads shared

# make

# make test

# make install

# mv /usr/bin/openssl /usr/bin/openssl.OFF

# mv /usr/include/openssl /usr/include/openssl.OFF

//该步骤可能提示无文件,忽略即可

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

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

//移走原先系统自带的openssl,将自己编译产生的新文件进行链接。

2、配置库文件搜索路径

# chmod 755 /usr/local/ssl

# echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

# /sbin/ldconfig -v

# openssl version -a

OpenSSL 1.0.1 14 Mar 2012

built on: Fri Mar 16 17:14:50 CST 2012

platform: linux-x86_64

options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)

compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM

OPENSSLDIR: "/usr/local/ssl"

3、备份启动脚本

# cp /etc/init.d/sshd /root/

/#1、停止SSHD服务 

# /sbin/service sshd stop

4、卸载系统里原有Openssh

# rpm –qa|grep openssh  //查询系统原安装的openssh包,全部卸载。

# rpm -e openssh --nodeps

# rpm -e openssh-server --nodeps

# rpm -e openssh-clients --nodeps

# rpm -e openssh-askpass

或rpm -e --nodeps `rpm -qa |grepopenssh`

#4、解压安装zlib包:

# tar -jxvf zlib-1.2.5.tar.bz2  //首先安装zlib库,否则会报zlib.c错误无法进行

# cd zlib-1.2.5

# ./configure

# make&&make install

5、解压安装openssh包:

先将将/etc/ssh的文件夹备份:

# mv /etc/ssh /etc/ssh_bak

# tar -zxvf openssh-6.6p1.tar.gz

# cd openssh-6.6p1

#./configure --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl  --with-md5-passwords --mandir=/usr/share/man  --with-pam

# make

# make install

6、启动服务

# cp -p contrib/redhat/sshd.init /etc/init.d/sshd

(suse:cpcontrib/suse/rc.sshd /etc/init.d/sshd)

# chmod +x /etc/init.d/sshd

# chkconfig --add sshd

# cp sshd_config /etc/ssh/sshd_config  (如提示覆盖,yes回车)

# cp sshd /usr/sbin/sshd   (如提示覆盖,yes回车)

# cp ssh-keygen /usr/bin/ssh-keygen

(redhat:cpssh-keygen /usr/bin/ssh-keygen)

验证是否service sshd start成功

service sshd start

service sshd restart

ssh -V   //如果看到了新的版本号就没问题啦!如果没有ssh这条命令,执行

(redhat、suse:ln -s /usr/local/bin/ssh /usr/bin/ssh)

升级后普通用户无法相互ssh登陆

提示 ssh: symbol lookup error: ssh: undefined symbol: EVP_aes_128_ctr

在网上查了好久终于解决了:

解决方法如下:

给相应配置文件赋权,使用root用户执行如下三个命令即可

[root@hadoop1 ~]# chmod o+rx /usr/bin/openssl
[root@hadoop1 ~]# chmod o+rx /usr/include/openssl
[root@hadoop1 ~]# chmod o+rx /usr/local/ssl -R

ssh升级以及ssh: symbol lookup error: ssh: undefined symbol: EVP_aes_128_ctr错误处理的更多相关文章

  1. ldd "symbol lookup error"问题解决

    http://www.linuxquestions.org/questions/slackware-14/symbol-lookup-error-usr-lib-libgtk-x11-2-0-so-0 ...

  2. symbol lookup error *** , undefined symbol 错误

    在重装samba过程后遇到一些问题,使用 gdb 时产生报错: gdb: symbol lookup error: gdb: undefined symbol: PyUnicodeUCS2_FromE ...

  3. symbol lookup error

    今天编译代码时出现这样的错误提示: “./test: symbol lookup error: ./test: undefined symbol: ……” 问题原因是:test使用的动态库和makef ...

  4. fastDfs V5.02 升级到 V5.08版本后,启动报错:symbol lookup error: /usr/bin/fdfs_trackerd: undefined symbol: g_current_time

    /libfastcommon-1.0.36 # ./make.sh cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o hash.o ...

  5. mysql: symbol lookup error: /usr/local/lib/libreadline.so.6: undefined symbol: UP

    Error Symptom: when you run $mysql -u root -p command in the linux you get an error message ” mysql: ...

  6. centos perl: symbol lookup error: /usr/local/lib64/perl5/auto/DBD/mysql/mysql.so: undefined symbol: mysql_init

    之前在安装天兔数据库监控工具lepus的时候,运行时一直报perl: symbol lookup error: /usr/local/lib64/perl5/auto/DBD/mysql/mysql. ...

  7. 由一次 symbol lookup error 引发的思考

    开发一个跨平台的项目的时候,大部分时候都是在VS下进行编码,所以也就使用了VS的解决方案来管理项目. 因为要跨平台,当时网上看scons这个工具不错,所以在linux下就使用了scons来作为编译脚本 ...

  8. 写动态库时遇到了symbol lookup error问题

    之前写TLPI上的代码一直是手动进行错误处理,感觉代码冗余量很大,最后还是决定使用书上的tlph_hdr.h,顺便回顾下动态库的创建/使用. 参考很久之前的一篇博客 linux上静态库和动态库的编译和 ...

  9. gpg: symbol lookup error

    今天使用sudo apt-get 安装包的时候,出现gpg错误,如下: gpg: symbol lookup error: /usr/local/lib/libreadline.so.6: undef ...

随机推荐

  1. ORCHARD WOODEN GATE

    狗: 代码小盒子 爆零秘籍 备忘录 任务计划 核心算法: 搜索/枚举/贪心 dp 分治 数据结构: 并查集 ST表 堆 线段树 树状数组 分块 树套树 平衡树 LCT 莫队 字符串: 哈希 Trie ...

  2. OI学习过程记录

    这帖子本来是教练为了给低年级学生分享经验而让我写的学习经历,不过等我退役之后可能就变成回忆录了. 初三 WC 前:上了正睿的线上课程,练了一些模拟赛,同时也正在学文化课. 然后,莫名奇妙1膜考了全校前 ...

  3. 题解-Quantifier Question

    Quantifier Question 有长度为 \(n\) 的序列 \(x\{n\}\),有 \(m\) 个条件 \((j_i,k_i)\).有 \(n\) 个待定的条件符 \(Q_i\in\{\f ...

  4. 庐山真面目之七微服务架构Consul集群、Ocelot网关集群和IdentityServer4版本实现

    庐山真面目之七微服务架构Consul集群.Ocelot网关集群和IdentityServer4版本实现 一.简介      在上一篇文章<庐山真面目之六微服务架构Consul集群.Ocelot网 ...

  5. Python SQLALchemy框架

    SQLALchemy SQLALchemy是Python中的一款优秀的ORM框架,它可以作用于任何第三方Web框架,如flask,tornado等框架. SQLALchemy相较于DjangoORM来 ...

  6. react第十单元(children的深入用法-React.Children对象上的方法)

    第十单元(children的深入用法-React.Children对象上的方法) #课程目标 理解什么是children 掌握React.Children对象上的方法 #知识点 什么是children ...

  7. 移动 drag&drop拖放

    拖放事件 #1. 三个对象 源对象 -- 被拖放的元素 过程对象 -- 经过的元素 目标对象 -- 到达的元素   #2. 源对象中的事件 要想让某个元素可以拖拽需要设置draggable=" ...

  8. Numpy的学习4-array的合并

    import numpy as np A = np.array([1, 1, 1]) B = np.array([2, 2, 2]) print(np.vstack((A, B))) # vertic ...

  9. Qt QChart 创建图表

    Qt QChart 创建图表 @ 目录 Qt QChart 创建图表 效果 流程 代码 1. 饼图 2. 柱图 3. 折/曲线图 4. 区域图 效果 流程 graph LR q(value 数据) q ...

  10. Promise对象,究竟为何物?

    Promise对象 一.什么是Promise? Promise是一种异步操作的解决方案,将写法复杂的传统的回调函数和监听事件的异步操作,用同步代码的形式表达出来. Promise避免了多级异步操作的回 ...