软件包下载地址:

1. ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/

2. http://rpmfind.net/   包含: *.src.rpm  


方法一:


1. mkdir /root/rpmbuild/{SOURCE SPECS} -P

2. cp /tmp/openssh.spec SPECS/     

   注: openssh.spec 可有 rpm -ivh openssh-6.6p1.src.rpm 安装后得到,软件包又地址2可以得到   待确认!

3. cp /tmp/openssh-7.0p1.tar.gz SOURCES/      

  注: 可从地址1 中下载

4. vim SPECS/openssh.spec

 #%define ver 6.6p1

#%define rel 1

%define ver 7.0p1   修改这一行, 将7.0p1的位置 替换成要更新的版本,

%define rel 1


5. rpmbuild -bb SPECS/openssh.spec


6. 查看编译后的结果

 [root@196 ~]# ls /root/rpmbuild/RPMS/x86_64/

openssh-7.0p1-1.x86_64.rpm  openssh-clients-7.0p1-1.x86_64.rpm  openssh-debuginfo-7.0p1-1.x86_64.rpm  openssh-server-7.0p1-1.x86_64.rpm

 

7. 安装: rpm -Uvh RPMS/x86_64/*.rpm    

          注意是U 不是i 否则会报错



8. 修改配置文件,否则无法root登陆


[root@196 ~]# vim /etc/ssh/sshd_config

#PermitRootLogin prohibit-password   修改前

PermitRootLogin yes  修改后


9. /etc/init.d/sshd restart



方法二:


1. rpm -ivh openssh-5.3p1-111.el6.src.rpm   由地址2得到http://rpmfind.net/linux/RPM/centos/7.1.1503/x86_64/Packages/openssh-6.6.1p1-11.el7.x86_64.html


2. 安装后会得到两个文件夹(含有文件)如下:

[root@196 ~]# tree 

[root@196 ~]# ls rpmbuild

SOURCES  SPECS


3. vim rpmbuild/SPECS/openssh.spec

  71 %define openssh_ver 5.3p1

  86 Source0: openssh-%{version}-noacss.tar.bz2

   

  修改后

  71 %define openssh_ver 7.0p1

  86 Source0: openssh-%{version}.tar.gz


 删除所有与patch相关的内容(注: 删除补丁,因为新的包已经集成了所有漏洞,否则任性报错)


4. rpmbuild/SPECS/openssh.spec  


5. 方法同上



注: 此方法有些问题(貌似是patch相关内容没有删全,测试失败,方法一种的openssh.spec 没有补丁, 执行成功)