您的位置:首页 > 运维架构

opensshe升级使用解析

2015-08-10 17:09 441 查看
一、环境描述

1)操作系统:CentOS 6.4 64位

2)Openssl版本:1.0.1e-15.el6,由于升级到openssh_6.7p1,需要OpenSSL的版本在0.9.8f以上,所以这里就不用升级openssl了。直接升级openssh就行了。

3)Openssh升级前版本:openssh-5.3p1-94.el6;Openssh升级后版本:openssh_6.7p1(源码安装)

4)连接工具xshell 4。要预防超时断开连接。

二、升级sshd到OpenSSH-6.7并删除老版本ssh

1)升级前准备

下载openssh-6.7p1.tar.gz
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-6.7p1.tar.gz
备份ssh配置文件 :

# mv /etc/ssh /etc/ssh.bak

查看是否缺包

# rpm -qa | egrep "gcc|make|perl|pam|pam-devel|zlib|zlib-devel"

如果有配置yum了的话可以直接yum安装这些包,这样既可以检验是否装了,没装的直接装上。

yum -y install gcc* make perl pam pam-devel zlib zlib-devel

先卸载完旧版本的openssh

# rpm -e `rpm -qa | grep openssh`

在虚拟机上安装了个CentOS6.5,顺便升级一下系统自带的openssh,任何系统操作都有风险,正式环境请做好备份工作。

1、准备工作,相应的包
自己到官方下载,另外需要下载依赖包openssl以及zlib包。

openssh下载地址:http://www.openssh.com/portable.html#http

openssl下载地址:http://www.openssl.org/source/

zlib下载地址:http://zlib.net/zlib-1.2.8.tar.gz

2、卸载系统自带的openssh,卸载之前先停止sshd服务,再用rpm删除,同时清除系统/etc/ssh目录

[root@CentOS tmp]# service sshd stop
Stopping sshd: [ OK ]
[root@CentOS tmp]# rpm -qa openssh
openssh-5.3p1-94.el6.x86_64
[root@CentOS tmp]# rpm -e openssh-server
[root@CentOS tmp]# rpm -e openssh-clients
[root@CentOS tmp]# rpm -e openssh-askpass
[root@CentOS tmp]# rpm -e openssh
[root@CentOS tmp]# rm -rf /etc/ssh
3、安装zlib
[root@CentOS tmp]# tar -xvf zlib-1.2.8.tar.gz
[root@CentOS tmp]# cd zlib-1.2.8
[root@CentOS zlib-1.2.8]# ./configure --prefix=/usr/local/zlib && make && make install
4、安装openssl

[root@CentOS tmp]# tar -xvf openssl-1.0.1i.tar.gz
[root@CentOS tmp]# cd openssl-1.0.1i
[root@CentOS openssl-1.0.1i]# ./config --prefix=/usr/local/openssl && make && make install
5、安装openssh

[root@CentOS tmp]# tar -xvf openssh-6.6p1.tar.gz
[root@CentOS tmp]# cd openssh-6.6p1
[root@CentOS openssh-6.6p1]# ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-

zlib=/usr/local/zlib --with-md5-passwords --without-hardening && make && make install
6、修改配置文件

[root@CentOS openssh-6.6p1]# cp contrib/redhat/sshd.init /etc/init.d/sshd
[root@CentOS openssh-6.6p1]# chmod +x /etc/init.d/sshd
[root@CentOS openssh-6.6p1]# vi /etc/init.d/sshd

修改对应指令的安装目录
=============================
25行 SSHD=/usr/sbin/sshd 为 SSHD=/usr/local/openssh/sbin/sshd
41行 /usr/bin/ssh-keygen -A 为 /usr/local/openssh/bin/ssh-keygen -A
=============================
保存退出
7、加入到系统服务

[root@CentOS openssh-6.6p1]# chkconfig --add sshd
[root@CentOS openssh-6.6p1]# service sshd start
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息