博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Centos6.5 升级Openssl + Openssh
阅读量:5009 次
发布时间:2019-06-12

本文共 2894 字,大约阅读时间需要 9 分钟。

xu言:

  平时很懒,都不想写blog。今天(2018.05.15)开始尝试每天写一篇吧,看我自己能坚持多久!

准备工作:

为了防止在操作过程中导致ssh远程中断,首先安装一个telnet-server服务

yum install -y telnet-server

chkconfig telnet on   # 前提是启动了  chkconfig --list |grep "xinetd" 

通过chkconfig --list 查看是否开启

这里开启后telnet 状态是 on

Note: 开启后记得在防火墙里面添加23端口,不然...呵呵,你懂的

 然后,在外面用你自己的远程工具使用telnet进行测试,测试成功后开始进行升级工作。

 

所需相关软件包资源汇总:

zlib

http://www.zlib.net/

pam

http://mirror.centos.org/centos/6/os/x86_64/Packages/pam-devel-1.1.1-24.el6.x86_64.rpm

openssl

http://www.openssl.org/source/

openssh

http://www.openssh.com/

 

源码安装步骤:

zlib 安装

tar xf zlib-1.2.11.tar.gz

./configure --prefix=/usr/local/zlib

 make && make install  # 如果是非root用户自己加sudo

 

pam 安装

 rpm -ivh pam-devel-1.1.1-24.el6.x86_64.rpm --nodeps # 不检查依赖关系直接安装

 

 OpenSSL 安装(版本根据实际情况下载,这里演示用1.01g版本)

tar zxf openssl-1.0.1g.tar.gz

cd openssl-1.0.1g

./config --prefix=/usr/local/openssl --shared

make  && make install

mv /usr/bin/openssl /usr/bin/openssl.bak  

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

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

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

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

验证结果:

ldconfig -v  

openssl version -a  

 

 

 

 

OpenSSH 安装

./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib --with-md5-passwords --with-pam

make && make install

 

# 复制配置文件

cp ssh_config /etc/ssh/
cp sshd_config /etc/ssh/
cp moduli /etc/ssh/

 

# 复制启动脚本到/etc/init.d

# 根据安装路径情况,可能需要修改启动脚本中sshd的路径
cp contrib/redhat/sshd.init /etc/init.d/sshd
/usr/sbin/sshd -t -f /etc/ssh/sshd_config

# 加入开机自启

chkconfig --add sshd
chkconfig sshd on
chkconfig sshd --list

 

# 开启SSH服务

# 不推荐restart。使用restart会造成连不上,需要登录控制台启动。(如果restart了,不能ssh后。可以使用telnet方式处理)
/etc/init.d/sshd start  # 启动服务

 

最后,进行一些收尾工作

chkconfig telent off   # 关闭telnet

sudo rpm -e telnet-server-0.17-48.el6.x86_64 --nodeps  # 卸载telnet相关rpm包

 

 

遇到问题:

报错一:
libssl.so.10: cannot open shared object file: No such file or directory 解决方案: cd /usr/lib64(如果是32位系统路径则是/usr/lib) 寻找libssl.so* 和 libcrypto.so*
ll /usr/lib64/libssl.so* ll /usr/lib64/libcrypto.so* 创建软链接
ln -s /usr/lib64/libssl.so.1.0.0 libssl.so.10
ln -s /usr/lib64/libcrypto.so.1.0.0 libcrypto.so.10
报错二: 编译安装openssl报错:POD document had syntax errors at /usr/bin/pod2man line 69. make: *** [install_docs] mv /usr/binpod2man{,.bak}    
报错三: OpenSSL headers missing - please install first or check config.log *** yum install openssl-devel

   *** zlib.h missing - please install first or check config.log ***

yum install zlib-devel 错误四:

提示给予的文件权限太高不安全,把指定的key文件给予700即可

Sum: 1.因为遇到了openssl 和openssh 不一致的问题,才发现有顺序问题。所以使用源码进行重新编译。先openssl,再 openssh 2.操作前一定开启telnet以防万一,小心使得万年船。特别是生产环境下面 3.不同环境下面操作可能会遇到一些新的问题。但是,仔细阅读报错代码也是一种学习过程

 

 

参考资料:

http://www.heminjie.com/system/linux/1766.html  

https://www.jianshu.com/p/8c66fdab0c1f

http://blog.sina.com.cn/s/blog_60bf8fe90101715h.html

https://pkgs.org/  # rpm包下载

转载于:https://www.cnblogs.com/Cong0ks/p/9043618.html

你可能感兴趣的文章
HDOJ4550 卡片游戏 随便销毁内存的代价就是wa//string类的一些用法
查看>>
css文本样式text、字体样式font
查看>>
洛谷 P1020 导弹拦截(LIS)
查看>>
python判断图片是否损坏
查看>>
MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止
查看>>
软件工程第四周作业 - 单元测试
查看>>
KNN与SVM对比&SVM与逻辑回归的对比
查看>>
php 现在拓展地址
查看>>
【Java并发编程】之十六:深入Java内存模型——happen-before规则及其对DCL的分析(含代码)...
查看>>
团队个人冲刺第三天
查看>>
unit
查看>>
2017-10-17 NOIP模拟赛2
查看>>
How to install ia32-libs in Ubuntu 14.04 LTS (Trusty Tahr)
查看>>
ACM/ICPC 之 模拟 (HNUOJ 13391-换瓶模拟)
查看>>
JavaWeb学习——JSP基础
查看>>
Eclipse tomcat server 无法添加项目
查看>>
黑寡妇黄飞鸿
查看>>
leetcode 217 Contains Duplicate 数组中是否有重复的数字
查看>>
The Ctrl & CapsLock `problem'
查看>>
MyBatis学习总结(二)——使用MyBatis对表执行CRUD操作
查看>>