centos7 openssh 7.9.1 升级
由于项目构建时间比较长,近期安全检查发现openssh有漏洞。所以要升级openssh到7.9p1版本。由于ssh用于远程连接,所以要谨慎操作。
1、 依赖安装
OpenSSL版本:目前OpenSSH7.9不支持OpenSSH1.1.x以上。否则编译的时候会报错。
Zlib1.1.4或1.2.1.2或更高版本;
gcc:因为编译需要gcc;
openssl-devel:编译时需要
2、下载openssh 7.9
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.9p1.tar.gz
3、卸载旧的opehssh
rpm -qa |grep openssh
rpm -e --nodeps openssh-clients-.4p1-.el7.x86_64
rpm -e --nodeps openssh-.4p1-.el7.x86_64
rpm -e --nodeps openssh-server-.4p1-.el7.x86_64
rpm -qa |grep openssh
如果之前就是源码安装的,找到之前的安装包,在里面执行
make uninstall
4、解压并安装
4.1)解压
tar xf openssh-7.9p1.tar.gz
cd openssh-7.9p1 4.2)编译
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-privsep-path=/var/lib/sshd
make
注意!!!
注意!!!
注意!!!
① configure: error: no acceptable C compiler found in $PATH
问题解决
yum install gcc
② configure: error: * zlib.h missing - please install first or check config.log *
问题解决
安装相关依赖包
yum install openssl openssl-devel -y
4.3)修改文件权限否则会安装报错
chmod 600 /etc/ssh/ssh_host_rsa_key
chmod 600 /etc/ssh/ssh_host_ecdsa_key
chmod 600 /etc/ssh/ssh_host_ed25519_key
4.4)安装 make install
5、配置
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.9p1
install -v -m644 INSTALL LICENCE OVERVIEW README*
install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-7.9p1
命令解释:
--sysconfdir=/etc/ssh:这可以防止安装配置文件 /usr/etc。
--with-md5-passwords:这使得可以使用MD5密码。
--with-pam:此参数在构建中启用 Linux-PAM支持。
--with-xauth=/usr/bin/xauth:为X身份验证设置xauth二进制文件的默认位置。如果将xauth安装到其他路径,请更改位置。这也可以sshd_config使用XAuthLocation关键字进行控制。如果已安装Xorg,则可以省略此开关。
--with-kerberos5=/usr:此选项用于在构建中包含Kerberos 5支持。
--with-libedit:此选项为sftp启用行编辑和历史记录功能。
6、根据自身需求改写配置文件。因为配置文件为初始配置文件。所以和之前的不一样。可以使用备份配置文件覆盖。
注意:
默认是22端口,但是不能root直接登录。如果想直接使用root登录执行以下命令
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
7、配置开机启动并重启
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
systemctl restart sshd
8、重启服务器
reboot
脚本:
该脚本在确认好本机环境的情况后执行 !!!
cat openssh_7..1_update.sh
#!/bin/bash
rpm -qa |grep zlib
rpm -qa |grep openssl
rpm -qa |grep openssh
gcc --version
read -p "是否继续[y/n]" Check if [ $Check == 'y' ]
then
for rpmpkgs in `rpm -qa |grep openssh`; do rpm -e --nodeps ${rpmpkgs} ;done
sleep
rpm -qa |grep openssh mkdir /tmp/opensshupdate -p
cd /tmp/opensshupdate && wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.9p1.tar.gz ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-privsep-path=/var/lib/sshd
make sleep chmod /etc/ssh/ssh_host_rsa_key
chmod /etc/ssh/ssh_host_ecdsa_key
chmod /etc/ssh/ssh_host_ed25519_key make install
sleep install -v -m755 contrib/ssh-copy-id /usr/bin
install -v -m644 contrib/ssh-copy-id. /usr/share/man/man1
install -v -m755 -d /usr/share/doc/openssh-.9p1
install -v -m644 INSTALL LICENCE OVERVIEW README*
install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh-.9p1
sleep echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
sleep 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
systemctl restart sshd
else
break
fi
centos7 openssh 7.9.1 升级的更多相关文章
- CentOS6.9下升级默认的OpenSSH操作记录(升级到OpenSSH_7.6p1)
近期对IDC机房服务器做了一次安全漏洞扫描,漏扫结果显示服务器的OpenSSH版本太低(CentOS6默认是OpenSSH_5.3p1),存在漏洞隐患,安全部门建议升级到OpenSSH_7.6p1.升 ...
- 关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复nginx最新漏洞CVE-2017-7529的解决方案
关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复CVE-2017-7529漏洞的解决方案 漏洞描述 2017年7月11日,Nginx官方发布最新的安全公告,在Nginx ...
- 完美原创:centos7.1 从源码升级安装Python3.5.2
(原创)完美原创:centos7.1 从源码升级安装Python3.5.2 下载Python3.5.2源码:https://www.python.org/downloads/release/pytho ...
- centos7.1 从源码升级安装Python3.5.2
http://blog.csdn.net/tengyunjiawu_com/article/details/53535153 centos7.1 从源码升级安装Python3.5.2(我写的,请大家度 ...
- [转]Centos7 内核从3.10升级到4.12过程
[原文地址] http://blog.csdn.net/youshijifen/article/details/73472434 [摘要] 近期,国家互联网应急中心漏洞(CNCERT)公告中提到Lin ...
- Centos7下把python 2.7升级到python 3.6(升级过程遇到的一些相关问题)
Centos 7 默认安装的Python 的版本是2.7的,现在不少人用的是3.x上的版本,故而需要了解下如何从Python2.7升级到Python 3.6. 在虚拟机安装时,网络不通会先遇到一个错误 ...
- CentOS7使用yum和源码升级内核
原文:https://blog.csdn.net/bayin4937/article/details/100949870 两种方式升级内核 一.yum升级内核 参考:https://blog.csdn ...
- CentOS7下 Python2.7.5升级为Python2.7.13
参考:https://www.jianshu.com/p/fad3942fc0ed 第一步:查看Centos版本及Python版本 • CentOS版本 [root@ tools_package]# ...
- Centos7 内核从3.10升级到4.12过程
http://blog.csdn.net/youshijifen/article/details/73472434
随机推荐
- C# 结合 Golang 开发
1. 实现方式与语法形式 基本方式:将 Go 程序编译成 DLL 供 C# 调用. 1.1 Go代码 注意:代码中 export 的注释是定义的入口描述不能省略 package main import ...
- AppBoxFuture: 服务模型的在线调试与性能监测
框架内的服务模型(ServiceModel)用于处理各类业务逻辑(如最简单的CRUD操作),在设计时以类似于伪代码的形式存在,发布时后端会通过Roslyn转换并编译为运行时代码.为了方便开发者作者 ...
- opencv::凸包-Convex Hull
概念介绍 什么是凸包(Convex Hull),在一个多变形边缘或者内部任意两个点的连线都包含在多边形边界或者内部. 正式定义:包含点集合S中所有点的最小凸多边形称为凸包 Graham扫描算法 首先选 ...
- PHP代码审计基础-高级篇
高级篇主要讲 1. 熟知各个开源框架历史版本漏洞. 2. 业务逻辑漏洞 3. 多线程引发的漏洞 4. 事务锁引发的漏洞 在高级篇审计中有很多漏洞正常情况下是不存在的只有在特殊情况下才有 PHP常用框架 ...
- Myeclipse 反编译工具插件
JadClipse是java的反编译工具,是命令行执行,反编译出来的源文件可读性较高.可惜用起来不太方便.还好 找到myeclipse下的插件,叫JadClipse,安装好之后,只要双击.class文 ...
- ESP8266开发之旅 网络篇⑨ HttpClient——ESP8266HTTPClient库的使用
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- Mysql数据库(十)MySQL性能优化
一.优化概述 为了提高MySQL数据库的性能,不要进行一系列的优化措施.如果MySQL数据库需要进行大量的查询操作,那么就需要对查询语句进行优化.对于耗费时间的查询语句进行优化,可以提高整体地查询速度 ...
- fenby C语言 P22
#include <stdio.h> int main(){ char array[]={'t','o','m','c','a','t'}; int i; for(i=0;i<6;i ...
- WinDag基础1
建立调试会话 用户层调试会话的建立 直接创建进程并调试 附加到已经打开的进程 侵入式附加:接管正在运行的进程,可以进行调试 非侵入式附加:只能读取进程信息,不能接收目标进程的调试事件 通常情况下一个程 ...
- 学习笔记04IIS
IIS机制:1.能监听端口,获取socket的客户端对象2.获取请求报文,将请求报文变成对象.3.处理请求报文,通过HttpApplication.ProcessRequest方法来处理HttpCon ...