软件包下载地址:
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. 查看编译后的结果
[[email protected] ~]# 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登陆
[[email protected] ~]# 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. 安装后会得到两个文件夹(含有文件)如下:
[[email protected] ~]# tree
[[email protected] ~]# 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 没有补丁, 执行成功)