Update openssh7.9 on centos6
一、制作RPM安装包
1)依赖安装
yum install rpm-build gcc make wget openssl-devel krb5-devel pam-devel libX11-devel xmkmf libXt-devel
2)目录创建
mkdir -p /usr/src/redhat/{SOURCES,SPECS}
cd /usr/src/redhat/SOURCES/
3)安装文件下载
wget https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/openssh-7.9.tar.gz
wget https://src.fedoraproject.org/repo/pkgs/openssh/x11-ssh-askpass-1.2.4.1.tar.gz/8f2e41f3f7eaa8543a2440454637f3c3/x11-ssh-askpass-1.2.4.1.tar.gz
4)解压编译文件
cd /usr/src/redhat/SOURCES/
tar xfz openssh-7.9p1.tar.gz openssh-7.9p1/contrib/redhat/openssh.spec
mv openssh-7.9p1/contrib/redhat/openssh.spec ../SPECS/
chown sshd:sshd /usr/src/redhat/SPECS/openssh.spec
cp /usr/src/redhat/SPECS/openssh.spec /usr/src/redhat/SPECS/openssh.spec_bak
5) 修改几个配置选项 可选项
#关掉no_gnome_askpass no_x11_askpass这两个参数
sed -i -e "s/%define no_gnome_askpass 0/%define no_gnome_askpass 1/g" /usr/src/redhat/SPECS/openssh.spec
sed -i -e "s/%define no_x11_askpass 0/%define no_x11_askpass 1/g" /usr/src/redhat/SPECS/openssh.spec
#查看修改了哪些参数
diff openssh.spec openssh.spec_bak
6)拷贝安装软件到预编译目录
mkdir -pv /root/rpmbuild/SOURCES/
cp /usr/src/redhat/SOURCES/openssh-7.9p1.tar.gz /root/rpmbuild/SOURCES/
cp /usrsrc/redhat/SOURCES/x11-ssh-askpass-1.2.4.1.tar.gz /root/rpmbuild/SOURCES/
#执行编译操作
cd /usr/src/redhat/SPECS/
rpmbuild -ba openssh.spec
#编译后生成的目录结构如下
tree -L 2 /root/rpmbuild/
/root/rpmbuild/
├── BUILD
│ └── openssh-7.9p1
├── BUILDROOT
├── RPMS
│ └── x86_64
├── SOURCES
│ ├── openssh-7.9p1.tar.gz
│ └── x11-ssh-askpass-1.2.4.1.tar.gz
├── SPECS
└── SRPMS
└── openssh-7.9p1-1.el6.src.rpm
#编译后RPM包目录
/root/rpmbuild/RPMS/x86_64/openssh-7.9p1-1.el6.x86_64.rpm
/root/rpmbuild/RPMS/x86_64/openssh-clients-7.9p1-1.el6.x86_64.rpm
/root/rpmbuild/RPMS/x86_64/openssh-debuginfo-7.9p1-1.el6.x86_64.rpm
/root/rpmbuild/RPMS/x86_64/openssh-server-7.9p1-1.el6.x86_64.rpm
#取出供其他机器安装的RPM包
mkdir -pv /root/openssh7.9
cp
/root/rpmbuild/RPMS/x86_64/{openssh-7.9p1-1.el6.x86_64.rpm,openssh-clients-7.9p1-1.el6.x86_64.rpm,openssh-server-7.9p1-1.el6.x86_64.rpm}
/root/openssh7.9
6)自己打的rpm包下载地址,懒人可以直接下,centos6的!centos6的!centos6的!7别装!
https://pan.baidu.com/s/1UNete3cn9tX5taQt30qnwg
二、利用RPM安装包,升级openssh至7.9
1)查看系统已openssh安装包版本
#如果曾经有手动编译安装,未必能查到信息
rpm -qa|grep openssh
2)查看查看已安装老rpm包和待安装新rpm版本有哪些文件
cd openssh新版rpm包的目录
rpm -ql openssh-???.???p1
rpm -qpl openssh-7.9p1-1.el6.x86_64.rpm
rpm -ql openssh-clients-???.???p1
rpm -qpl openssh-clients-7.9p1-1.el6.x86_64.rpm
rpm -ql openssh-server-???.???p1
rpm -qpl openssh-server-7.9p1-1.el6.x86_64.rpm
3)选择性备份一些配置
#备份原有的openssh服务
mkdir -pv /root/oppenssh_backup
cd /root/oppenssh_backup
tar -cvzf etc_ssh.tar.gz /etc/ssh
tar -cvzf etcpamd.tar.gz /etc/pam.d
cp /etc/pam.d/sshd /etc/pam.d/system-auth .
cp -p /etc/pam.d/sshd /etc/pam.d/sshddate +%Y%m%d
cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth_date +%Y%m%d
一般来说rpm包安装时遇到存在的同名配置文件,不会覆盖。会把生成的同名文件重命名为filename.rpmnew
4)升级安装RPM
可能会由于各种原因爆炸,建议多开几个ssh窗口,保险起见可以也安装telnet并测试连接,保底openssh配置错误,服务器不会失联
cd openssh新版rpm包的目录
rpm -Uvh ./.rpm
5)按需修改配置文件
检查/etc/pam.d/sshd /etc/pam.d/system-auth /etc/ssh/sshd.conf等是否为升级之前的配置,被改了就备份一下新生成的配置文件,再利用备份的文件把配置文件替换回升级前的配置。
6)重启sshd服务
#CentOS 6
service sshd restart
#CentOS 7
#systemctl restart sshd
7)重新连接查看版本
ssh -V
Update openssh7.9 on centos6的更多相关文章
- CentOS6.9下升级默认的OpenSSH操作记录(升级到OpenSSH_7.6p1)
近期对IDC机房服务器做了一次安全漏洞扫描,漏扫结果显示服务器的OpenSSH版本太低(CentOS6默认是OpenSSH_5.3p1),存在漏洞隐患,安全部门建议升级到OpenSSH_7.6p1.升 ...
- 搭建本地yum源并定时同步
在生产中内网的机器都是不能访问外网,所以需要搭建本地yum源.以中国科学科技大学的yum源为基准.http://mirrors.ustc.edu.cn/ 有些模块会同步失败,可以wget下载至指定位置 ...
- yum安装软件内容
linux yum源改为阿里yum源 1.备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.back ...
- Centos 6.x Openssh 升级 7.7p1 版本
OpenSSH 升级 目前在一家金融公司上班,正好赶上金融公司各种暴雷,本人心里慌慌的. 然后就是金融公司要进行的最低的三级等保评测,各种修改系统安全,密码强度.WAF.防火墙等各种. 评测公司对我司 ...
- centos6.4升级openssh7.4p1
Centos6.4版本yum升级openssh版本最高到5.3,想要升级到更高的版本需要重新编译 一.查看当前openssh版本: [root@localhost ~]# ssh -VOpenSSH_ ...
- Centos6.5升级安装openssh7.7p1
Centos6.5升级安装openssh7.7p1 关于OpenSSH漏洞 2016年1月14日OpenSSH发布官方公告称, OpenSSH Client 5.4~7.1 版本中未公开说明的功 ...
- centos6.5 yum update 报错Couldn't resolve host 'centos.ustc.edu.cn'
异常信息 [root@localhost ~]# yum -y update Loaded plugins: fastestmirror, refresh-packagekit, security S ...
- centos6 升级安装openssh7
1.准备工作: 查看下当前SSH版本: [root@bogon ~]# ssh -V OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 或者 [root@b ...
- Centos6升级至openssh-7.5p1
最近公司有几台服务器需要搬至甲方(政府单位),所以在安装服务时用的是16年的openssh7.3pl, 今天通知我们有漏洞,需要再一次升级,看到官方文档上版本已升级至7.5,所以干脆直接搞7.5 具体 ...
随机推荐
- 20145215《网络对抗》Exp4 恶意代码分析
20145215<网络对抗>Exp4 恶意代码分析 基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用 ...
- WindowsPE权威指南-PE文件头中的重定位表
PE加载的过程 任何一个EXE程序会被分配4GB的内存空间,用户层处理低2G的内存,驱动处理高2G的内存. 1.双击EXE程序,操作系统开辟一个4GB的空间. 2.从ImageBase决定了加载后的基 ...
- 【转】Git超实用总结,再也不怕记忆力不好了
[转]Git超实用总结,再也不怕记忆力不好了 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯工蜂发表于云+社区专栏 Git 是什么? Git 是一个分布式的代码管理容器,本地和 ...
- Python3-递归函数
什么是递归? 递归,就是函数在运行的过程中调用自己. 代码示例 def recursion(n): print(n) recursion(n+) recursion() 出现的效果就是,这个函数在不断 ...
- Codeforces 914D - Bash and a Tough Math Puzzle 线段树,区间GCD
题意: 两个操作, 单点修改 询问一段区间是否能在至多一次修改后,使得区间$GCD$等于$X$ 题解: 正确思路; 线段树维护区间$GCD$,查询$GCD$的时候记录一共访问了多少个$GCD$不被X整 ...
- Vue-动态修改数组
需求描述: 点击删除时,仅删除当前选中的这个对象. html: <el-card shadow="never" style="position: relative; ...
- 010_mac常用docker维护命令
一. ➜ ~ docker search rabbitmq #搜索 NAME DESCRIPTION STARS OFFICIAL AUTOMATED rabbitmq RabbitMQ is an ...
- 转载:UML学习(二)-----类图(silent)
原文:http://www.cnblogs.com/huiy/p/8552607.html 1.什么是类图 类图(Class diagram)主要用于描述系统的结构化设计.类图也是最常用的UML图,用 ...
- 解决:org.xml.sax.SAXParseException: 元素类型 "head" 必须由匹配的结束标记 "</head>问题
事件背景: 今天就碰到了这样的问题, org.xml.sax.SAXParseException: 元素类型 "head" 必须由匹配的结束标记 "</head&g ...
- httprouter与 fasthttp 的性能对比
关于协议: 本打算接入层使用gRPC,虽然基于HTTP 2.0 效率比较高,而且使用protobuf 能进行高效的序列化.但是本次系统需要和 JAVA进行对接,考虑到gRPC对JAVA的支持性不是很好 ...