OpenSSH由5.3升级到7.3pl

第一步 准备升级包

  • openssh相关包
    openssh-7.3p1.tar.gz
    openssl-1.0.2j.tar.gz
    zlib-1.2.8.tar.gz
  • telnet相关包
    telnet-0.17-47.el6_3.1.x86_64.rpm
    telnet-server-0.17-47.el6_3.1.x86_64.rpm
    xinetd-2.3.14-39.el6_4.x86_64.rpm
    远程操作选择telnet;

第二步 安装工具包

  • telnet安装
[[email protected] telnet]# rpm -ivh xinetd-2.3.14-39.el6_4.x86_64.rpm 
warning: xinetd-2.3.14-39.el6_4.x86_64.rpm: Header V3 RSA/SHA256 Signature, key I
D fd431d51: NOKEYPreparing...                ########################################### [100%]
   1:xinetd                 ########################################### [100%]
[[email protected] telnet]# rpm -ivh telnet-0.17-47.el6_3.1.x86_64.rpm 
warning: telnet-0.17-47.el6_3.1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key I
D fd431d51: NOKEYPreparing...                ########################################### [100%]
   1:telnet                 ########################################### [100%]
[[email protected] telnet]# rpm -ivh telnet-server-0.17-47.el6_3.1.x86_64.rpm 
warning: telnet-server-0.17-47.el6_3.1.x86_64.rpm: Header V3 RSA/SHA256 Signature
, key ID fd431d51: NOKEYPreparing...                ########################################### [100%]
   1:telnet-server          ########################################### [100%]##设置telnet远程登录[[email protected] telnet]# vi /etc/xinetd.d/telnet# default: on# description: The telnet server serves telnet sessions; it uses \#   unencrypted username/password pairs for authentication.service telnet
{    flags       = REUSE    socket_type = stream            wait        = no    user        = root    server      = /usr/sbin/in.telnetd    log_on_failure  += USERID    disable     = no}
[[email protected] telnet]# service xinetd restart##添加telnet远程登录用户,(远程root不登录)[[email protected] telnet]# useradd test
[[email protected] telnet]# passwd test

第三步 编译安装

  • 删除已安装包
[[email protected] ssh]# rpm -qa|grep openssh
openssh-askpass-5.3p1-84.1.el6.x86_64
openssh-clients-5.3p1-84.1.el6.x86_64
openssh-5.3p1-84.1.el6.x86_64
openssh-server-5.3p1-84.1.el6.x86_64
[[email protected] ssh]# rpm -e openssh-askpass-5.3p1-84.1.el6.x86_64
[[email protected] ssh]# rpm -e openssh-clients-5.3p1-84.1.el6.x86_64 --nodeps
[[email protected] ssh]# rpm -e openssh-5.3p1-84.1.el6.x86_64 --nodeps
[[email protected] ssh]# rpm -e openssh-server-5.3p1-84.1.el6.x86_64
  • 编译安装
[[email protected] ssh]# tar -zxvf zlib-1.2.8.tar.gz 
[[email protected] ssh]# cd zlib-1.2.8
[[email protected] zlib-1.2.8]# ./configure
[[email protected] zlib-1.2.8]# make && make install
[[email protected] zlib-1.2.8]# cd ..
[[email protected] ssh]# tar -zxvf openssl-1.0.2j.tar.gz 
[[email protected] ssh]# cd openssl-1.0.2j
[[email protected] openssl-1.0.2j]# ./config --prefix=/usr/ --shared
[[email protected] openssl-1.0.2j]# make
[[email protected] openssl-1.0.2j]# make test
[[email protected] openssl-1.0.2j]# make install
[[email protected] openssl-1.0.2j]# cd ..
[[email protected] ssh]# tar -zxvf openssh-7.3p1.tar.gz 
[[email protected] ssh]# cd openssh-7.3p1
[[email protected] openssh-7.3p1]# mv /etc/ssh /etc/ssh_bak
[[email protected] openssh-7.3p1]# ./configure --prefix=/usr --sysconfdir=/etc/ssh  --with-zlib   --with-md5-passwords
[[email protected] openssh-7.3p1]# make 
[[email protected] openssh-7.3p1]# make install
[[email protected] openssh-7.3p1]# cd contrib/redhat#复制启动脚本[[email protected] redhat]# cp sshd.init /etc/init.d/sshd
[[email protected] redhat]# cd /etc/init.d/
[[email protected] redhat]# chmod +x /etc/init.d/sshd 
[[email protected] init.d]# chkconfig sshd 
[[email protected] init.d]# chkconfig --add sshd
[[email protected] redhat]# cd ..#生成登录密钥[[email protected] openssh-7.3p1]# pwd
/mywork/soft/ssh/openssh-7.3p1
[[email protected] openssh-7.3p1]# ./ssh-keygen
[[email protected] openssh-7.3p1]# cd /root/.ssh/
[[email protected] .ssh]# ls
id_rsa  id_rsa.pub
[[email protected] .ssh]# cat id_rsa.pub  >> authorized_keys
[[email protected] .ssh]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]
[[email protected] ~]# ssh -V
OpenSSH_7.3p1, OpenSSL 1.0.2j  26 Sep 2016

第四步 所遇问题

  • 安装完毕后root用户无法ssh登录
    由于新版本的ssh禁用了root用户登录,需将允许登录开启
[[email protected] ssh]# pwd
/etc/ssh#设置允许root用户远程登录[[email protected] ssh]# cat /etc/ssh/sshd_config 
# Authentication:...#LoginGraceTime 2mPermitRootLogin yes
  • 启动报错
    报错效果如下:
[[email protected] ~]# service sshd restart   
Stopping sshd:                                             [  OK  ]
/sbin/restorecon:  lstat(/etc/ssh/ssh_host_key.pub) failed:  No such file or dire
ctoryStarting sshd:                                             [  OK  ]                                           [确定]

只要touch该文件即可规避

[[email protected] ~]# touch /etc/ssh/ssh_host_ecdsa_key.pub

再重启一下ssh服务,就没有那个报错了

[[email protected] .ssh]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]
  • SecureCRT不能上传文件的解决办法
#将 /etc/ssh/sshd_config 中的Subsystem      sftp    /usr/libexec/openssh/sftp-server 
#改为Subsystem       sftp    internal-sftp#重启sshd后,sftp正常工作了
  • 使用其他工具无法远程连接操作系统
解决方法:
=================================================================参考网上解决方法如下:
修改sshd的配置文件 /etc/ssh/sshd_config
在配置文件中添加:

Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc

MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-sha1-96,hmac-md5-96

KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,[email protected]

导致此问题的原因是ssh升级后,为了安全,默认不再采用原来一些加密算法,我们手工添加进去即可。

(添加三行或者添加最后一行,重启服务都报错如下)
但重启服务报错如下:
[[email protected] ~]# service sshd restart
Stopping sshd:[  OK  ]
Starting sshd:Unsupported KEX algorithm "ecdh-sha2-nistp521"
/etc/ssh/sshd_config line 137: Bad SSH2 KexAlgorithms ‘diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,[email protected]‘.
[FAILED]
[[email protected] ~]# 

=================================================================

修改为如下:
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc

MACs hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-sha1-96,hmac-md5-96

KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,diffie-hellman-group1-sha1,[email protected]    (此行中去掉ecdh-sha2-nistp521)
  • 重启后登录不上SSH
    升级完ssh以后,服务器在重启之后用ssh登录不上,只有telnet上去重新启动一下ssh才行。
    解决办法 :
vi /etc/selinux/config---SELINUX=disabled

关闭SELINUX即可;

时间: 2024-11-10 17:10:26

OpenSSH由5.3升级到7.3pl的相关文章

升级openssh编译时报错“configure: error: *** working libcrypto not found, check config.log”的解决办法

问题描述 在linux上,欲将OpenSSH_6.4p1编译升级到OpenSSH_8.0p1时,执行了./configure ....编译命令后报错,报错信息如下: configure: error: *** working libcrypto not found, check config.log *** 或: configure: error: *** OpenSSL headers missing - please install first or check config.log ***

OpenSSH升级至7.5版本

环境:CentOS release 6.8 (Final) 步骤: 1.安装Dropbear代替OpenSSH (不影响升级,安全起见) 2.升级zlib 3.更新pam的rpm包 4.编译安装openssl 5.编译安装openssh 6.验证版本 准备相关的包 openssh下载地址:http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/ openssl相关包下载:http://www.openssl.org/source/

Linux下升级openssl

公司由于使用第三方漏洞扫描,检测出openssh存在漏洞,升级openssh后仍无效果,于是升级openssl  OpenSSH do_setup_env函数权限提升漏洞(CVE-2015-8325)   OpenSSH auth_password函数拒绝服务漏洞(CVE-2016-6515)   OpenSSH 安全限制绕过漏洞(CVE-2016-10012)   OpenSSH 远程代码执行漏洞(CVE-2016-10009)   OpenSSH 允许多次 KEXINIT 导致拒绝服务漏洞(

centos6.5安装openssh7.2p2方法

最近客户处有一些linux操作系统安装了较旧的SSH,存在版本漏洞,小研究了一下,安装最新版本的OPENSSH,可以平滑升级. ssh登录到要安装的服务器上,查看当前版本   [[email protected] ~]# ssh -V    OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013    在/目录下创建/tools目录,通过FTP工具上传安装文件到该目录下(文件可以到官网去下载)    mkdir /tools    [[email prote

安全漏洞整改解决方案

注意:以下所有操作須结合实际情况,确认后再实施.1. OpenSSH 相关漏洞  解决方案 升级OpenSSH为最新版本,目前为5.9,首先到官网(http://www.openssh.com/portable.html#http)下载:openssh-5.9p1.tar.gz 把OpenSSH 上传到服务器,首先检查升级前版本(以下所有操作均在root下完成): shell> ssh -V # 此命令会显示OpenSSL.OpenSSH的詳細版本号 首先安装OpenSSH: shell> t

apt学习

APT(Advanced Packaging Tool) 一款轻量级的在线安装升级的软件包管理系统,synaptic是图像化的APT软件包管理工具. APT主要有apt-cache.apt-cdrom.apt-config.apt-get四个命令.用户最常用的apt-get. 1.apt-get (1)apt-get update 更新本地apt-get数据库,使其与服务器的pkglist文件同步.在升级以前一般都要执行本命令,实现与服务器的一致. (2)apt-get upgrade 将安装所

openssl、openssh升级

近期公司应用需要用到https协议:Centos6.5自带的的openssl 1.0.1e版本存在名为"心脏出血"的漏洞. 环境:CentOS6.5_x86_64 准备相关的包openssh下载地址:http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/openssl相关包下载:http://www.openssl.org/source/pam相关包下载:http://pkgs.org/centos-6/centos-x

RHEL6.5升级安装OPENSSH

openssh的运转需要openssl和zlib的支持,升级openssh最好同步升级openssl和zlib,避免出现不匹配的现象,此文只升级openssl和openssh. 1.安装telnet服务 # yum -y install telnet-server* # rpm -qa | grep telnet # vi /etc/xinetd.d/telnet 将disable字段改为no # chkconfig --list xinetd xinetd              0:关闭 

CentOS 6.6升级OpenSSH到最新版本7.5.p1

本文主要简单记录CentOS 6.6下OpenSSH升级步骤,安装编译所需工具包 yum install gcc pam-devel zlib-devel 一.升级原因7.4以下openssh版本存在严重漏洞:1.OpenSSH 远程权限提升漏洞(CVE-2016-10010)  2.OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)  3.Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600)  OpenSSL>=1.0.1可以不用升级OpenS