linux 升级openssh详细教程

1.系统环境


2.记录过程

1:找一台没有系统的机器 操作一遍。记录过程,

2:系统机器打补丁之前,最好 备份 系统和数据库到 移动硬盘。 

3:开始打补丁过程

打补丁过程

步骤一:先安装telnet ,防止 打补丁失败。

下载 : telnet-server-0.17-48.el6.x86_64.rpm      telnet-0.17-48.el6.x86_64.rpm    

下载地址:http://vault.centos.org/6.3/os/x86_64/packages      

步骤二:备份原有的openssh

步骤三:安装openssh的依赖(zlib,openssl)

zlib-1.2.11.tar.gz  

官方下载地址: http://www.zlib.net/

https://nchc.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz 

openssl-1.0.2o.tar.gz  

官方下载地址:https://github.com/openssl/openssl/releases

 [https://www.openssl.org/source/](https://www.openssl.org/source/)

wget https://github.com/openssl/openssl/archive/OpenSSL_1_0_2q.tar.gz

openssh-7.7p1.tar.gz   

官方下载地址: https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/

步骤四:make安装


3.安装

3.1 telnet安装过程

下载地址 :http://vault.centos.org/6.3/os/x86_64/Packages/    #6.3表示系统版本号

telnet-server-0.17-48.el6.x86_64.rpm

telnet-0.17-48.el6.x86_64.rpm

xinetd-2.3.14-39.el6_4.x86_64.rpm

执行如下:

查看telnet server是否安装

rpm -qa | grep telnet

步骤一:rpm -ivh telnet-0.17-48.el6.x86_64.rpm

步骤二:rpm -ivh xinetd-2.3.14-39.el6_4.x86_64.rpm

步骤三:rpm -ivh telnet-server-0.17-48.el6.x86_64.rpm

步骤四:service xinetd start

步骤五:netstat -tnl |grep 23 (如果无输出说明未正常启动,则步骤六;否则整个安装过程完成

步骤六:修改/etc/xinetd.d/telnet 文件,将disable=yes修改为disable=no

步骤七:service xinetd restart

步骤八:查看telnet server是否安装

rpm -qa | grep telnet

步骤九,开启外网访问端口

Linux 开启允许外网访问端口

LINUX通过下面的命令可以开启允许对外访问的网络端口:

/sbin/iptables -I INPUT -p tcp --dport 23 -j ACCEPT #开启23端口

/etc/rc.d/init.d/iptables save #保存配置

/etc/rc.d/init.d/iptables restart #重启服务

查看端口是否已经开放

/etc/init.d/iptables status



telnet 127.0.0.1 能正常登录即成功


3.2 openssl安装过程

官方升级文档:http://www.linuxfromscratch.org/blfs/view/cvs/postlfs/openssl.html

 A、备份当前openssl

find/ -name openssl

/usr/lib64/openssl

/usr/bin/openssl

/etc/pki/ca-trust/extracted/openssl


mv /usr/lib64/openssl /usr/lib64/openssl.old

mv /usr/bin/openssl /usr/bin/openssl.old

mv /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old

 如下两个库文件必须先备份,因系统内部分工具(如yum、wget等)依赖此库,而新版OpenSSL不包含这两个库

cp  /usr/lib64/libcrypto.so.10  /usr/lib64/libcrypto.so.10.old

cp  /usr/lib64/libssl.so.10  /usr/lib64/libssl.so.10.old


 B、卸载当前openssl

rpm -qa | grepopenssl

openssl-1.0.1e-42.el6.x86_64


rpm -e --nodeps openssl-1.0.1e-42.el6.x86_64

rpm -qa | grepopenssl

C、解压openssl_1.0.2k源码并编译安装

tar-zxvf openssl-1.0.2q.tar.gz

cdcd openssl-OpenSSL_1_0_2q

./config --prefix=/usr --openssldir=/etc/ssl --shared zlib #必须加上--shared,否则编译时会找不到新安装的openssl的库而报错

make

maketest #必须执行这一步结果为pass才能继续,否则即使安装完成,ssh也无法使用

make install

opensslversion -a                  #查看是否升级成功


D、恢复共享库

 由于OpenSSL_1.0.2k不提供libcrypto.so.10和libssl.so.10这两个库,而yum、wget等工具又依赖此库,因此需要将先前备份的这两个库进行恢复,其他的可视情况考虑是否恢复。

mv  /usr/lib64/libcrypto.so.10.old  /usr/lib64/libcrypto.so.10

mv /usr/lib64/libssl.so.10.old /usr/lib64/libssl.so.10



3.3 zlib安装过程

 A、解压zlib_1.2.11源码并编译

tar -zxvf zlib-1.2.11.tar.gz

cd zlib-1.2.11

./configure --prefix=/usr

make


B、卸载当前zlib


A 注意:此步骤必须在步骤A执行完毕后再执行,否则先卸载zlib后,/lib64/目录下的zlib相关库文件会被删除,步骤A编译zlib会失败。(补救措施:从其他相同系统的服务器上复制/lib64、/usr/lib和/usr/lib64目录下的libcrypto.so.10、libssl.so.10、libz.so.1、libz.so.1.2.3四个文件到相应目录即可。可通过whereis、locate或find命令找到这些文件的位置)

rpm-e --nodeps zlib

 C、安装之前编译好的zlib

在zlib编译目录执行如下命令

make install

D、共享库注册

 zlib安装完成后,会在/usr/lib目录中生产zlib相关库文件,需要将这些共享库文件注册到系统中。

echo '/usr/lib' >> /etc/ld.so.conf

ldconfig                    #更新共享库cache

或者采用如下方式也可:

ln-s  /usr/lib/libz.so.1 libz.so.1.2.11

ln-s  /usr/lib/libz.so libz.so.1.2.11

ln-s  /usr/lib/libz.so.1 /lib/libz.so.1

ldconfig



3.4 Pam-devel安装过程

查看pam版本

rpm –qa | grep pam

出现:configure: error: PAM headers not found 错误,需要安装pam-devel的rpm包

wget http://vault.centos.org/6.5/os/x86_64/Packages/pam-devel-1.1.1-17.el6.x86_64.rpm

rpm -ivh pam-devel-1.1.1-17.el6.x86_64.rpm --test

rpm -ivh pam-devel-1.1.1-17.el6.x86_64.rpm


3.5 openssh安装过程

https://www.cnblogs.com/xshrim/p/6472679.html

查看系统当前软件版本

# rpm-q zlib

# opensslversion

# ssh-V


升级OpenSSH

官方升级文档:http://www.linuxfromscratch.org/blfs/view/svn/postlfs/openssh.html


备份当前openssh

# mv /etc/ssh /etc/ssh.old


卸载当前openssh


# rpm -qa | grep openssh

openssh-clients-5.3p1-111.el6.x86_64

openssh-server-5.3p1-111.el6.x86_64

openssh-5.3p1-111.el6.x86_64

openssh-askpass-5.3p1-111.el6.x86_64


执行以下命令

rpm -e --nodeps openssh-5.3p1-94.el6.x86_64

 rpm -e --nodeps openssh-server-5.3p1-94.el6.x86_64

 rpm -e --nodeps openssh-clients-5.3p1-94.el6.x86_64

 rpm -e --nodeps openssh-askpass-5.3p1-94.el6.x86_64

 rpm -qa | grep openssh


执行以下命令

tar -zxvf openssh-7.7p1.tar.gz

cd openssh-7.7p1

./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd

make

make install



openssh安装后环境配置

# 在openssh编译目录执行如下命令

#install-v -m755    contrib/ssh-copy-id/usr/bin

# install-v -m644    contrib/ssh-copy-id.1 /usr/share/man/man1

# install -v -m755 -d /usr/share/doc/openssh-7.7p1

# install-v -m644    INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-7.7p1

#

ssh-V              #验证是否升级成功


启用OpenSSH服务

# 在openssh编译目录执行如下目录

#echo 'X11Forwarding yes' >> /etc/ssh/sshd_config

# echo "PermitRootLogin yes" >> /etc/ssh/sshd_config   #允许root用户通过ssh登录

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

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

# chkconfig  --add  sshd

# chkconfig  sshd  on

# chkconfig  --list  sshd

# servicesshd restart

注意:如果升级操作一直是在ssh远程会话中进行的,上述sshd服务重启命令可能导致会话断开并无法使用ssh再行登入(即ssh未能成功重启),此时需要通过telnet登入再执行sshd服务重启命令。

openssh善后工作

 新开启远程终端以ssh [ip]登录系统,确认一切正常升级成功后,只需关闭telnet服务以保证系统安全性即可。

# mv/etc/securetty.old /etc/securetty

# chkconfig  xinetd off

# servicexinetd stop

 如有必要,可重新开启防火墙

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,607评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,047评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,496评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,405评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,400评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,479评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,883评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,535评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,743评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,544评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,612评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,309评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,881评论 3 306
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,891评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,136评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,783评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,316评论 2 342