安装三个必要依赖包
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. NO.4 CCS运行第一个demo(本地)

    前面介绍了基本的SDK内容,这次主要是本地实际应用CCS实现程序的运行. 首先我们进入CCS,我简单介绍下界面: 界面很简洁,通俗易懂(怎么跟STM32IDE这么像) 由于我们还不会写程序,我们先导入 ...

  2. [Android应用开发] 03.网络编程

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  3. [PHP自动化-进阶]001.CURL模拟登录并采集数据

    引言:PHP可以通过libcurl实现模拟登录,提交数据,违法乱纪,烧杀抢虐等等事项. 简单说明一下"libcurl",补一下脑: libcurl目前支持http.https.ft ...

  4. Java中的自动装箱拆箱

    Java中的自动装箱拆箱 一.自动装箱与自动拆箱 自动装箱就是将基本数据类型转换为包装类类型,自动拆箱就是将包装类类型转换为基本数据类型. 1 // 自动装箱 2 Integer total = 90 ...

  5. Rocket - devices - TLDeadlock

    https://mp.weixin.qq.com/s/Zv4HE7zMBzHbsWGg3pa9fg 简单介绍TLDeadlock的实现. 1. TLDeadlock TLDeadlock是抽象类Dev ...

  6. 程序员的脑袋系列---利用ffmpeg命令提取音频

    今日各大播放器的版权控制越来越严格.导致很多歌曲无法听,但是MV却可以听.这样很蛋疼有木有? 然而,我们可以利用ffmpeg工具提取MV的音频,比如做成MP3格式,这样就可以听了.--哈哈(邪恶地笑) ...

  7. Java实现 LeetCode 49 字母异位词分组

    49. 字母异位词分组 给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串. 示例: 输入: ["eat", "tea", & ...

  8. StringBuilder的线程为什么不安全

    StringBuffer和StringBuilder的区别在哪里? StringBuffer是线程安全的,StringBuilder是线程不安全的. 那么StringBuilder不安全在哪里?在想这 ...

  9. 第六届蓝桥杯JavaA组省赛真题

    解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.熊怪吃核桃 题目描述 森林里有一只熊怪,很爱吃核桃.不过它有个习惯,每次都把找到的核桃分成相等的两份,吃掉一份,留一份.如果不能等分, ...

  10. Java实现 洛谷 P1008 三连击

    public class Main { public static void main(String[] args){ for(int i = 123; i <= 329; i++){ int[ ...