安装三个必要依赖包
yum install gcc zlib-devel openssl-devel
上传安装包,创建一个/tmp目录下,然后解压,将/etc/ssh/目录移动到本地
解压安装包,进入安装目录
./configure --prefix=/usr --sysconfdir=/etc/ssh
卸载老版本 rpm -e --nodeps `rpm -qa | grep openssh`

开始安装
make install
chmod 0600 /etc/ssh/ssh_host_rsa_key
chmod 0600 /etc/ssh/ssh_host_ecdsa_key
chmod 0600 /etc/ssh/ssh_host_ed25519_key

拷贝启动文件
cp contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
sed -i '/#PermitRootLogin prohibit-password/c'"PermitRootLogin yes" /etc/ssh/sshd_config

gcc gcc-c++ glibc make autoconf openssl-devel pcre-devel pam-devel rpm-build

yum install -y pam* zlib*
pam-devel-1.1.1-24.el6.x86_64
pam_krb5-2.3.11-9.el6.x86_64
pam_ldap-185-11.el6.x86_64
pam_passwdqc-1.0.5-8.el6.x86_64
pam_pkcs11-0.6.2-15.el6.x86_64
pcsc-lite-libs-1.5.2-16.el6.x86_64

rpm -e --nodeps `rpm -qa | grep openssh`
#/configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam --with-tcp-wrappers && make && make install 
下载编译安装openssl,prefix=/usr/local/openssl-1.1.1e

./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam && make install --with-ssl-dir=/usr/local/openssl-1.1.1e

cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.init /etc/init.d/sshd && cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

no matching key exchange method found.
第二种方法,修改/etc/ssh/sshd_config_config文件,在最末尾加入即可。

KexAlgorithms +diffie-hellman-group1-sha1
PubkeyAuthentication yes
PermitRootLogin yes
PubkeyAuthentication yes
echo "KexAlgorithms +diffie-hellman-group1-sha1">>/etc/ssh/sshd_config
echo "PermitRootLogin yes">>/etc/ssh/sshd_config
echo "PubkeyAuthentication yes">>/etc/ssh/sshd_config

添加开机启动chkconfig sshd on

sed -i '/#PermitRootLogin prohibit-password/c'"PermitRootLogin yes" /etc/ssh/sshd_config
文件管理,安装包 传递到;

https://www.cnblogs.com/xyb930826/p/6077348.html
checking OpenSSL header version... not found configure: error: OpenSSL version header not found.问题
系统没有找到openssl库,需要运行ldconfig。

-with-openssl=/usr/local/ssl
'echo "/usr/local/openssl-1.1.1e/lib">>/etc/ld.so.conf'
ldconfig

[root@ds1 upgradessh]# salt '192.168.1.113' cmd.run "/etc/init.d/sshd start"
192.168.1.113:
Starting sshd:/usr/sbin/sshd: error while loading shared libraries: libcrypto.so.1.1: failed to map segment from shared object: Permission denied
[FAILED]
ERROR: Minions returned with non-zero exit code
[root@ds1 upgradessh]# salt '192.168.1.113' cmd.run "getenforcing"
192.168.1.113:
/bin/bash: getenforcing: command not found
ERROR: Minions returned with non-zero exit code
[root@ds1 upgradessh]# get
getcap getcifsacl getenforce getfacl getkey getopt getpcaps gettext gettext.sh
getcert getconf getent getfattr getkeycodes getopts getsebool gettextize
[root@ds1 upgradessh]# geten
getenforce getent
[root@ds1 upgradessh]# geten
getenforce getent
[root@ds1 upgradessh]# salt '192.168.1.113' cmd.run "getenforce"
192.168.1.113:
Enforcing

rpm -e --nodeps `rpm -qa | grep openssh` && cd /tmp/openssh && mv /etc/ssh /tmp/openssh/sshbak

downloadzip:
file.managed:
- name: /tmp/openssh-8.3p1.tar.gz
- source: salt://files/openssh/openssh-8.3p1.tar.gz
- mode: 644
- user: root
- group: root
upgrade:
cmd.run:
- name: rm -rf /tmp/openssh && yum clean all && mkdir /tmp/openssh && rpm -e --nodeps `rpm -qa | grep openssh` && cd /tmp/openssh && mv /etc/ssh /tmp/sshbak && cd /tmp/openssh && tar -zxf /tmp/openssh-8.3p1.tar.gz && /tmp/openssh/openssh-8.3p1/configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam && make install

upgrade2:
cmd.run:
- name: cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.init /etc/init.d/sshd && cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam && echo "KexAlgorithms +diffie-hellman-group1-sha1">>/etc/ssh/sshd_config && echo "PermitRootLogin yes">>/etc/ssh/sshd_config && echo "PubkeyAuthentication yes">>/etc/ssh/sshd_config && chkconfig sshd on && setenforce 0 && /etc/init.d/sshd start && ssh -V

需要指定openssl目录的
编译升级openssl
rpmcopy:
file.managed:
- name: /tmp/openssl-1.1.1e.tar.gz
- source: salt://files/openssl/openssl-1.1.1e.tar.gz
- user: root
- group: root
- mode: 640
cmd.run:
- name: cd /tmp && tar -zxf openssl-1.1.1e.tar.gz && cd /tmp/openssl-1.1.1e/ && ./config --prefix=/usr/local/openssl-1.1.1e && make && make install && echo "/usr/local/openssl-1.1.1e/lib">>/etc/ld.so.conf && ldconfig

downloadzip:
file.managed:
- name: /tmp/openssh-8.3p1.tar.gz
- source: salt://files/openssh/openssh-8.3p1.tar.gz
- mode: 644
- user: root
- group: root
upgrade:
cmd.run:
- name: rm -rf /tmp/openssh && yum clean all && mkdir /tmp/openssh && rpm -e --nodeps `rpm -qa | grep openssh` && cd /tmp/openssh && mv /etc/ssh /tmp/openssh/sshbak && cd /tmp/openssh && tar -zxf /tmp/openssh-8.3p1.tar.gz && /tmp/openssh/openssh-8.3p1/configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam -with-ssl-dir=/usr/local/openssl-1.1.1e && make install
upgrade2:
cmd.run:
- name: cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.init /etc/init.d/sshd && cp -a /tmp/openssh/openssh-8.3p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam && echo "KexAlgorithms +diffie-hellman-group1-sha1">>/etc/ssh/sshd_config && echo "PermitRootLogin yes">>/etc/ssh/sshd_config && echo "PubkeyAuthentication yes">>/etc/ssh/sshd_config && chkconfig sshd on && setenforce 0 && /etc/init.d/sshd start && ssh -V

升级OPENSSH踩过的坑的更多相关文章

  1. 升级openssh踩得坑

    升级背景: 项目中使用的系统为CentOS6.8,经过漏洞扫描后发现openssh高危漏洞,具体描述如下:OpenSSH 7.2p2之前版本, sshd/ session.c/ do_setup_en ...

  2. elasticsearch2.3.3集群搭建踩到的坑

    本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 作者原来搭建的环境是0.95版本 现在升级到2.3.3版本, ...

  3. CentOS 6.9 升级OpenSSH版本 关闭ssh服务后门

    最近用低版本的OpenSSH(5.9p1版本) 的漏洞给系统留了个后门 , 可以劫持root密码或者给root开启后门密码 : 利用Openssh后门 劫持root密码 如果公司还在用CentOS6的 ...

  4. [问题解决]RedHat7更换CentOS7的yum源时踩过的坑

    更换yum源的流程 查看当前yum程序 $ rpm -qa|grep yum 这里推荐将其结果截屏或拷贝出来,以免后面报错修复. 删除原有yum源 $ rpm -aq | grep yum|xargs ...

  5. 在Mac osx使用ADT Bundle踩过的坑

    前言 本篇博客整理一下笔者在Mac下使用ADT Bundle踩过的坑,Google现在也不支持Eclipse了,开发者也到了抛弃Eclipse的时候,但考虑到大部分Java的开发者还是比较习惯与Ecl ...

  6. CentOS 升级 openSSH

    openSSH作为linux远程连接工具,容易受到攻击,必须更新版本来解决,低版本有如下等漏洞: a. OpenSSH 远程代码执行漏洞(CVE-2016-10009) b.  OpenSSH aut ...

  7. CentOS 升级 openSSH+ sh脚本自动运维

     升级前后对比 openSSH作为linux远程连接工具,容易受到攻击,必须更新版本来解决,低版本有如下等漏洞: OpenSSH 远程代码执行漏洞(CVE-2016-10009) OpenSSH au ...

  8. nrf52832蓝牙开发踩过的坑

    接触nrf52832芯片已经有一段时间了,记录我踩过的坑.这些坑大多都补回来了,愿后来的开发者没有坑~ 先来点开胃小菜 一.环境问题 安装离线包遇到的错误--svdconv exited with a ...

  9. 要想不踩SaaS那些坑,得先了解“SaaS架构”

    摘要:围绕当下许多企业青睐的SaaS应用开发,华为云开发者技术服务工程师程泽在DTT首期带来主题为 <SaaS云原生应用典型架构> 的DTT首期直播分享. 本文分享自华为云社区<DT ...

随机推荐

  1. [UWP]使用离散式关键帧播放动画

    这篇文章介绍离散式关键帧,并使用它做些有趣的动画. 1. 什么是离散式关键帧 以DoubleAnimationUsingKeyFrames为例,它支持四种Double的关键帧,其中EasingDoub ...

  2. 5.List链表类型介绍和操作

    数据类型List链表 (1)介绍 list类型其实就是一个双向链表.通过push,pop操作从链表的头部或者尾部添加删除元素.这使得list既可以用作栈,也可以用作队列. 该list链表类型应用场景: ...

  3. [wordpress使用]003_添加新文章

    当WordPress前面的工作准备的差不多,没什么大问题时,就可以开始为你的博客添加文章,让博客的内容变得更加丰富.既然你已经开始了这个博客,那么就说明你已经有一个明确的方向,知道自己到底要写那些内容 ...

  4. BFC与优雅降级 渐进增强——学习笔记

    BFC(块级格式化上下文) BFC(Block formatting context) 直译为"块级格式化上下文". 元素的显示模式 我们前面讲过 元素的显示模式 display. ...

  5. CSS选择器-类-ID-伪类

    类选择器(Class selectors) 通过设置元素的 class 属性,可以为元素指定类名.类名由开发者自己指定. 文档中的多个元素可以拥有同一个类名. 在写样式表时,类选择器是以英文句号(.) ...

  6. vue-cli4 + TS构建新项目

    1. 如果你之前没有安装vue-cli,可以通过如下命令进行安装: npm install -g @vue/cli yarn global add @vue/cli 2. 创建vue项目 vue cr ...

  7. Rocket - tilelink - BusWrapper

    https://mp.weixin.qq.com/s/03BvgTNQtD75Guco6gUGQg   简单介绍BusWrapper的实现.   1. HasTLBusParams   定义SoC的挂 ...

  8. jchdl - GSL实例 - ComplementOne(一的补码)

    https://mp.weixin.qq.com/s/zZTnDdbCUCRGGpgpfAZsYQ   一的补码指对二进制数的每一位分别求补(二进制运算下0,1互为补数),实际运算即为对每一位取反.最 ...

  9. 【HBase】 常用命令

    创建表 hbase(main):006:0> create 'goods_zc','type' 0 row(s) in 1.3090 seconds => Hbase::Table - g ...

  10. JavaScript (二) js的基本语法 - - 运算符、流程控制

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.运算符 1.一元运算符 ++ -- 都是运算符 ++ 和 -- 可以分为:前+ 和后+ and 前- ...