openssh漏洞升级方案
Linux下OpenSSH版本升级
Linux下OpenSSH版本升级在运营商对各个系统的安全扫描的过程中,经常会遇到如下OpenSSH安全漏洞:这一安全漏洞通常需要到ftp:///pub/OpenBSD/OpenSSH/portable/下载openssh-5.0p1以上的版本,然后进行软件升级才能解决这一问题。
一、OpenSSH升级前需要准备的工作如下:(1)开启telnet的服务,关闭SSH服务,详见《Linux下telnet开启和关闭服务》文档;如果是在本机上直接操作就不需要开启。
(2)将下载好的OpenSSH包上传到需要升级的服务器上。
(3)检查OpenSSL和Zlib版本,openssh-5.0p1要求在OpenSSL版本在0.9.6以上,Zlib滴版本在1.2.1.2以上;SUSE10下查看相关命令如下:RedHat AS下查看相关命令如下:如果OpenSSL和Zlib版本无法满足OpenSSH升级需求,则需要进行相应的版本升级。
二、OpenSSH升级(1)备份好之前SSH的相关配置文件,也可以cd /etc,直接tar整个ssh目录。
(2)service sshd stop或者/etc/init.d/sshd stop关闭ssh服务(3)tar zxvf openssh-5.0p1.tar.gz(4)cd openssh-5.0p1./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check指定安装目录,同时不检查zlib版本。
注:在配置的过程中一定要确保没有错误提示,这样才能进行后续的编译。
(5)make //编译(6)make install //安装(7)使用命令ssh –V验证升级是否成功。
OpenSSH_5.0p1, OpenSSL 0.9.8a 11 Oct 2005(8)vi /etc/ssh/sshd_config指定Protocol 2,指定PermitRootLogin no(9)service sshd start或者/etc/init.d/sshd start开启ssh服务(10)关闭telnet服务,详见《Linux下telnet开启和关闭服务》文档。
Linux下OpenSSH版本升级
CentOS使用yum update更新时不升级内核cp /etc/yum.conf /etc/yum.confbak方法一、修改yum的配置文件vi /etc/yum.conf 在[main]的最后添加exclude=kernel* 方法二、直接在yum的命令后面加上如下的参数:yum --exclude=kernel* update系统运维 温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链接查看系统版本cat /etc/issue查看内核版本uname -a/view/7c047e4b647d27284b7351f5.htmlLinux下OpenSSH版本升级一、OpenSSH升级前需要准备的工作如下:(1)下载最新版本的OpenSSH安装包(当前最新版本为2014年3月15日更新的openssh-6.6p1.tar.gz),下载地址:ftp:///pub/OpenBSD/OpenSSH/portable/ (2)如果是在本机上操作,请直接关闭SSH服务;如果是远程操作,请先开启Telnet的服务,再关闭SSH服务;SSH服务的开启和关闭方法:#service sshd start或者#/etc/init.d/sshd start 开启ssh服务; #service sshd stop或者#/etc/init.d/sshd stop 开启ssh服务; Telnet服务的开启和关闭方法:(3)将下载好的OpenSSH包上传到需要升级的服务器上。
(4)检查OpenSSL和Zlib版本,openssh-6.6p1要求在OpenSSL的版本在1.0.1 以上,Zlib的版本在1.2.5以上。
查看相关命令如下:#rpm -qa|grep openssl 查看OpenSSL的版本 #rpm -qa|grep zlib 查看Zlib的版本(5)如果OpenSSL和Zlib版本无法满足OpenSSH升级需求,则需要进行相应的版本升级,升级步骤如下:下载OpenSSL和Zlib:/source/openssl-1.0.1i.tar.gz //下载OpenSSL /distfiles/zlib-1.2.5.tar.bz2 //下载Zlib 将OpenSSL和Zlib安装包上传到需要升级的服务器上;安装Zlib:#tar -jxvf zlib-1.2.5.tar.bz2 //首先安装zlib库,否则会报zlib.c错误无法进行#cd zlib-1.2.5#./configure#make#make install安装OpenSSL:#tar -zxvf openssl-1.0.1i.tar.gz#cd openssl-1.0.1i#./config shared zlib#make#make test#make installmv /usr/bin/openssl /usr/bin/openssl.OFFmv /usr/include/openssl /usr/include/openssl.OFFln -s /usr/local/ssl/bin/openssl /usr/bin/opensslln -s /usr/local/ssl/include/openssl /usr/include/openssl//移走原先系统自带的openssl,将自己编译产生的新文件进行链接配置库文件搜索路径# echo "/usr/local/ssl/lib" >> /etc/ld.so.conf# /sbin/ldconfig -v# openssl version -a(6)安装完成后再参考上面的步骤检查OpenSSL和Zlib的版本。
总结-OpenSSH升级-Ubuntu
出现以下错误:
configure: error: *** Can't find recent OpenSSL libcrypto (see config.log for details) ***
解决方式如下:
添加参数,重新安装OpenSSL,之后正常安装OpenSSH即可。具体如下:
/zlib-1.2.8# make#编译
/zlib-1.2.8# makeinstall#编译安装
3.5.2
# tar -xvzf openssl-1.0.1h.tar.gz#解压缩
# cd openssl-1.0.1h#进入目录
/openssl-1.0.1h# ./config --prefix=/usr/local/openssl#检查配置
...done.
3.7
# /usr/local/bin/ssh -V
OpenSSH_6.5p1, OpenSSL 1.0.1h 5 Jun 2014
3.8
确保OpenSSH升级可用之后,为了保障系统的安全,建议将telnet删除,以免造成安全漏洞,删除telnet只需要将其对应的deb包删除即可,如下:
登陆ssh后进行以下操作。
# vi /etc/init.d/sshd#修改sshd的路径
:%s#/usr/sbin#/usr/local/sbin#g#执行修改命令
:wq#保存配置文件
#update-rc.d sshd defaults#开机启动设置
# service sshd restart
* Restarting OpenBSD Secure Shell server sshd
Suse Linux11升级Openssh6.7笔记
OpenSuse Linux11升级Openssh6.7笔记(作者:爱在深秋于2014年10月26日)本实验的目的是将OpenSuse Linux11自带的Openssh从5.1版本升级到最新的6.7版,以解决低版本存在的漏洞。
升级采用远程telnet登录服务器的方法。
因此需要停止系统的SSH服务,只能先安装Telnet服务来进行远程操作,升级结束后应停止Telnet服务。
一、安装Telnet服务1.下载安装telnet先不停止SSH,远程登录后,检查系统是否安装Telnet服务。
表示系统只安装了客户端,没有安装服务器端。
因此需要我们安装服务器端。
先检查系统版本,好到网站上下载相应的安装包。
此时我们到:/linux/rpm2html/search.php?query=telnet-server 下载telnet-server安装包。
我下载的是专门针对OpenSuseLinux64的telnet-server-1.2-149.1.x86_64.rpm。
下载完成后,上传到服务器。
执行:显示100%表示安装完成,再次用chkconfig命令检查发现telnet已经安装成功,只是服务没有启动。
2.配置telnet服务Telnet服务一般是通过xinetd服务进行启动和停止的。
先检查/etc/xinetd.d/telnet 文件。
#vi /etc/xinetd.d/telnet显示为:我们主要关注disable=yes这一句。
为yes的时候,说明telnet服务不通过xinetd 服务启动和停止;为no或者没有disable配置项目的时候,说明telnet服务通过xinetd 服务启停。
因为我们要通过xinetd服务管理,所以设置为disable=no,然后保存退出。
修改后的内容为:另外,由于telnet监听的23端口被网管中心限制,但FTP使用的21端口是开放的。
刚好我的服务器不使用FTP服务,因此将telnet的监听端口修改为21。
OpenSSH 拒绝服务漏洞修复简易操作手册
1.1漏洞扫描(漏洞详情可查看扫描报告)1.1.1问题描述1.2解决方案目前centos的系统版本是7.2,OpenSSH版本是6.6。
按照漏洞的影响平台范围,可升级OpenSSH到7.4p1版本可修复OpenSSH的漏洞。
1.2.1资源准备●安装包和依赖包准备:o p enssh-7.4p1.t ar.g z o p enssl-1.0.2k.t ar.g z zl i b-1.2.8.t ar.g z g cc.zi p p am.zi pp erl.zi p1.2.2操作指引●确保selinux是关闭的# getenforce如果返回Enforcing执行命令# setenforce 0vi /etc/sysconfig/selinux找到SELINUX=项,将其改为SELINUX=disabled如果返回Permissivevi /etc/sysconfig/selinux找到SELINUX=项,将其改为SELINUX=disabled如果返回Disabled直接进行下一步。
●检查gcc是否安装gcc -v如果有信息,进行下一步,如果没有,安装gcc将gcc目录下的安装包上传到/usr/src/ssh/gcc目录下cd /usr/src/ssh/gccchmod 777 *rpm -Uvh *.rpm执行gcc -v 命令,有信息即表示安装成功。
●安装telnet将telnet目录下的安装包上传到/usr/src/ssh/telnet目录下cd /usr/src/ssh/telnetchmod 777 *rpm -ivh xinetd-2.3.14-40.el6.x86_64.rpmrpm -ivh telnet-server-0.17-48.el6.x86_64.rpmvi /etc/xinetd.d/telnet将”disable= yes”改成” disable=no”vi /etc/securetty增加pts/0pts/1pts/2执行命令:/etc/init.d/xinetd restart查看防火墙是否开启:service iptables status如果未开启,直接进行下一步,如果已经开启,需要开放端口iptables -I INPUT -p tcp --dport 23 -jACCEPTiptables -I INPUT -p udp --dport 23 -jACCEPTservice iptables save //保存service iptables restart //重启防火墙找一台可以连接此机器的电脑,telnet ip //ip用此机器的ip地址替换使用root用户登录成功即可。
关于Linux系统升级至OpenSSH-6.6p1的解决办法(可解决OpenSSH相关漏洞)
OpenSSH相关漏洞解决本文主要针对绿盟对Linux服务器扫出OpenSSH相关漏洞总结出的解决方案,漏洞更新时间为2014年重要漏洞,本文将服务器更新至OpenSSH-6.6p1版本,可解决2014之前的OpenSSH重要漏洞,帮助通过验收。
OpenSSH-6.6p1具体更新步骤:1、修改设置文件/etc/xinetd.d/telnet 中disable字段改为no;2、打开telnet服务;#service xinetd start3、新建一个用户useradd swroot,passwd swroot;4、用telnet连接测试通过;5、停止sshd服务;#service sshd stop6、卸载原openssl和openssh的RPM包;#rpm -e openssl --nodeps#rpm -e openssl-devel –nodeps#rpm -e openssh --nodeps#rpm -e openssh-server --nodeps#rpm -e openssh-clients --nodeps#rpm -e openssh-askpass –nodeps7、安装openssl-1.0.1g和openssh-6.6p1;#rpm -ivh openssl-1.0.1g-1.el6.x86_64.rpm --nodeps#rpm -ivh openssl-devel-1.0.1-1.el6.x86_64.rpm --nodeps#rpm -ivh openssh-6.6p1-1.x86_64.rpm#rpm -ivh openssh-clients-6.6p1-1.x86_64.rpm#rpm -ivh openssh-server-6.6p1-1.x86_64.rpm#rpm -ivh openssh-askpass-gnome-6.6p1-1.x86_64.rpm8、启动sshd服务;#service sshd start9、停止telnet服务并恢复相关配置,不然telnet相关漏洞又会被发现;10、最后,上述安装步骤中提及的OpenSSL-1.0.1g及OpenSSH-6.6p1的相关RPM软件下载地址:/s/1qWx4CxA。
升级ssh修复CVE-2023-48795漏洞
升级ssh修复CVE-2023-48795漏洞一、升级openssl1、卸载opensshyum -y remove opensshyum -y remove openssl2、安装相关依赖包yum -y install pam pam-devel zlib zlib-devel openssl-devel3、将文件放到/usr/local并解压tar -zxvf openssl-1.1.1w.tar.gz4、编译安装#进入Openssl目录cd /usr/local/openssl-1.1.1w#编译安装./config shared --prefix=/usr/local/opensslmake -j 4make install5、做软连接echo "/usr/local/openssl/lib/" >> /etc/ld.so.conf#加载配置文件ldconfig#做软链接ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl6、查看openssl版本openssl version#若为OpenSSL 1.1.1w 11 Sep 2023 则证明升级成功二、升级openssh1、查看当前OpenSSH包rpm -qa | grep openssh2、查看当前OpenSSH版本ssh -V3、上传OpenSSH并解压到/usr/local下tar -zxvf openssh-9.6p1.tar.gz#进入OpenSSH目录cd /usr/local/openssh-9.6p1#编译安装./configure --sysconfdir=/etc/ssh --with-zlib --with-ssl-dir=/usr/local/openssl make -j 4make install4、授权chmod 600 /etc/ssh/*5、复制配置文件#执行以下命令时,必须全部执行成功,否则影响最终结果cp -rf /usr/local/sbin/sshd /usr/sbin/sshdcp -rf /usr/local/bin/ssh /usr/bin/sshcp -rf /usr/local/bin/ssh-keygen /usr/bin/ssh-keygencp -ar /usr/local/openssh-9.6p1/contrib/redhat/sshd.init /etc/init.d/sshdcp -ar /usr/local/openssh-9.6p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam6、配置sshd自动启动,生成服务配置文件,并重启服务#启用sshd自动启动systemctl enable sshd#重启服务systemctl restart sshd#查看状态systemctl status sshd7、验证结果ssh -VOpenSSH_9.6p1, OpenSSL 1.1.1w 11 Sep 20238、如果ssh登录不上去修改/etc/ssh/sshd_configPermitRootLogin yesPubkeyAuthentication yes。
Linux openssh升级方案
Openssh升级方案一、准备安装包1、确定操作系统uname -acat /etc/redhat-release2、将安装包和系统ISO镜像上传服务器zlib-1.2.8.tar.gzopenssl-1.0.1p.tar.gzopenssh-7.1p1.tar.gzrhel-server-6.5-x86_64-dvd.iso修改yum配置文件vi /etc/yum.repos.d/local.repo粘贴以下内容并保存[Server]name=Serverbaseurl=file:///xxxx/iso/Server (xxxx/iso为新建的iso目录来存放挂载后的操作系统镜像) enabled=1gpgcheck=0挂载redhat6.5的iso安装包(在xxxx目录下新建iso文件夹)mount –t iso9660 /dev/cdrom /xxxx/iso安装必要的软件包gcc、telnet、xinetd、make、pam-devel、zlib等yum –y install *gcc*yum –y install *telnet*yum –y install *xinetd*yum –y install *make*yum –y install *pam-devel*yum –y install *zlib*3、准备其他远程方式telnet或者vnc修改telnet配置文件vi /etc/xinetd.d/telnetdisable = yes改成noservice xinetd restart重启服务创建telnet远程用户userdel weihupasswd weihucqep1234或者修改配置保证root用户可以telnet,保证后续远程配置正常进行vi /etc/pam.d/login文件注释掉:#auth [user_unknown=ignore success=ok ignore=ignore#auth_err=die default=bad] pam_securetty.so测试telnet正常登录后进行下一步4、拷贝安装包至/usr/local/src目录,并解压修改权限cp zlib-1.2.8.tar.gz /usr/local/srccp openssh-6.8p1.tar.gz /usr/local/srccp openssl-1.0.2a.tar.gz /usr/local/srccd /usr/local/src/tar zxvf openssh-6.8p1.tar.gztar zxvf openssl-1.0.2a.tar.gztar zxvf zlib-1.2.8.tar.gzchmod 777 -R openssh-6.8p1chmod 777 -R openssl-1.0.2achmod 777 –R zlib-1.2.81、检查系统是否缺包rpm -qa | egrep "gcc|make|perl|pam|pam-devel"如缺包请自行设置本地Yum源进行安装yum -y install gcc* make perl pam pam-devel如果报public key for sinjdoc-0.5-9.1.el6.x86_64.rpm is not installed这样的错误,则执行如下命令:(需要导入rpm的签名信息)#rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release二、程序升级1、停止ssh服务service sshd stop2、备份脚本和程序cp /etc/init.d/sshd root3、卸载原openssh# rpm -qa|grep openssh//查询系统原安装的openssh包全部卸载。
Linux升级OpenSSH和OpenSSL,解决XMSSKey解析整数溢出漏洞、Open。。。
Linux升级OpenSSH和OpenSSL,解决XMSSKey解析整数溢出漏洞、Open。
OpenSSH和OpenSSLOpenSSLOpenSSL其实是⼀个开源的C函数库,多⽤于加密依赖,很多程序的编译,需要OpenSSL作为依赖包。
OpenSSHOpenSSH 是 SSH (Secure SHell) 协议的免费开源实现,类似于OpenJDK和OracleJDK的区别。
需要⽤到OpenSSL的函数库,所以在更新OpenSSH前,最好先更新OpenSSL。
SSH协议族可以⽤来进⾏远程控制, 或在计算机之间传送⽂件。
相对于传统⽅式,OpenSSH提供了服务端后台程序和客户端⼯具,并且加密远程控制和⽂件传输过程中的数据。
简单地说,⽇常使⽤OpenSSH:远程控制服务器端,如:远程登录访问Linux的Terminal。
且过程中加密传输。
OpenSSL 拒绝服务漏洞拒绝服务漏洞,代号为:CVE-2021-3449:主要是⼀些操作,可能会让OpenSSL TLS 强⾏停⽌。
【我感觉这个漏洞不是很严重啦,但是⼤家都觉得很严重……那还是有必要修复⼀下╮( ̄▽ ̄"")╭】解决⽅法很简单:升级OpenSSL版本。
XMSS Key 解析整数溢出漏洞XMSS Key漏洞,代号为:CVE-2019-16905:主要是⾮法⽤户,可以通过此漏洞,跳过OpenSSH的认证,远程登录到你服务器【不过计算难度挺⾼的,⽽且条件苛刻……】。
但是,总归是重⼤漏洞,需要修复:解决⽅法很简单:升级OpenSSH版本。
升级的⽅法很简单:下载新版本OpenSSL源码备份旧版本OpenSSL编译安装新版本OpenSSL下载新版本OpenSSL源码这边推荐下载地址:⽐如,我这边下载openssl-1.1.1k.tar.gz。
到Linux控制台内,使⽤wget下载即可(你也可以使⽤宝塔等软件下载,但是记得权限问题):wget 'https:///source/openssl-1.1.1k.tar.gz'之后,我们解压这个tar.gz⽂件夹,并进⼊:# 使⽤tar⼯具包解压tar -xf openssl-1.1.1k.tar.gz# 进⼊⽂件夹cd openssl-1.1.1k备份旧版本OpenSSL为了避免编译过程中,出现意外(如:远程SSH突然断连,导致编译失败);我们提前备份旧版本OpenSSL,给回滚“留条路”(如果你之前都没有安装OpenSSL,这步可以跳过):# 备份OpenSSL到⽤户⽬录,并重命名为openBakmv openssl ~/openBak编译安装新版本OpenSSL刚刚我们已经在新的OpenSSL⽬录,所以我们可以直接开始编译。
SSH漏洞升级方案 (3)
SSH漏洞升级方案:SSH升级,本身危险性比较大,如果没有正常启动ssh,将不能远程该机器,所以在升级SSH 的时间,请务必先装上telnet或者vnc 以保证,即使ssh不能用telnet也可以进行操作:1,安装telnet :执行rpm -qa|grep -E "telnet|xinetd"如果没有显示telnet-server-0.17-60.el7.x86_64telnet-0.17-60.el7.x86_64xinetd-2.3.15-13.el7.x86_64则说明需要安装对应组件:执行yum install telnet telnet-server xinetd注册服务:su do systemctl enable telnet.socketsudo systemctl start telnet.socketsudo systemctl enable xinetdecho 'pts/0' >>/etc/securettyecho 'pts/1' >>/etc/securettysudo systemctl start xinetd查看防火墙状态:systemctl status firewalld.service显示running的话表示防火墙开启,这时候,需要我们开启23端口:firewall-cmd --zone=public --add-port=23/tcp --permanent重启防火墙:service firewalld restart查看现在防护墙开启端口的情况:firewall-cmd --zone=public --list-port如果没用显示的running的话,表示防火墙未开启,不用处理编辑remote文件执行命令vi /etc/pam.d/remote在auth requiredpam_securetty.so 前添加#号:如下图:测试telnet是否可用:telnet 10.128.18.3Telnet 建立成功之后,我们看是升级SSH,但是-------升级SSH查看版本ssh -V进入home目录cd /home下载最新的openSSHwget https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz备份一下ssh内容:mv /etc/ssh/ /home/ssh.bak解压一下下载好的包tar -zxvf openssh-7.5p1.tar.gz如果在安装gcc zlib 和openssl的时候出现404之类错误,表示yum源太老了,这时候需要更新yum 源见后面yum源配置。
openssh与openssl升级方案
Openssh与openssl升级方案1.安装zlibzlib和openssl安装在/usr/local目录下#tar -zxvf zlib-1.2.8.tar.gz#cd zlib-1.2.8#CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/zlib-1.2.8 -share#make#make test#make install#make clean2.升级openssl#cd /usr/local/src#tar zxvf openssl-1.0.1j.tar.gz#cd openssl-1.0.1j#./config --prefix=/usr/local/openssl-1.0.1j --shared#make#make test(这一步是进行SSL 加密协议的完整测试,如果出现错误就要一定先找出原因,否则一味继续可能导致SSH 不能使用)#make install#vi /etc/ld.so.conf############################################## add below line to ld.so.conf/usr/local/openssl-1.0.1j/lib 64位OS 没有生成lib目录,是lib64目录#############################################ldconfig -v 刷新缓存文件/etc/ld.so.cache执行以下命令:#mv /usr/bin/openssl /usr/bin/openssl.OFF#mv /usr/include/openssl /usr/include/openssl.OFF#ln -s /usr/local/openssl-1.0.1j/bin/openssl /usr/bin/openssl#ln -s /usr/local/openssl-1.0.1j/include/openssl /usr/include/openssl查看openssl 版本号,验证安装正确性:#openssl version -a3.升级并配置openssh1.直接在解压的目录下做升级操作,避免了停止后的危险。
Openssh升级方案
OpenSSH5.3升级至OpenSSH7.3修复方案1.修改网卡启动的状态[root@Localhost]# vi /etc/sysconfig/network-scripts/ifcfg-eth02.yum注册检测yum的相关信息[root@Localhost ~]# yum check-update使用subscription-manager进行注册[root@Localhost ~]# subscription-manager register3.对yum进行升级[root@Localhost ~]# yum check-update[root@Localhost ~]# subscription-manager attach --auto[root@Localhost ~]# yum check-update查看rpm -qa telnet 是否安装telnet4.安装telnet服务[root@Localhost ~]# yum install telnet [root@Localhost ~]# yum list|grep telnet* [root@Localhost ~]# yum install telnet-server[root@Localhost ~]# vi /etc/xinetd.d/telnetdisable = yes yes改为no[root@Localhost ~]# service xinetd restart5.删除root限制[root@Localhost ~]# mv /etc/securetty /etc/securetty.bak6.查看防火墙状态[root@Localhost ~]# cat /etc/sysconfig/iptables[root@Localhost ~]# iptables-save7.修改防火墙查看是否开启23端口[root@Localhost ~]# vi /etc/sysconfig/iptables开启23端口:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT [root@Localhost ~]# service iptables restart8.安装gcc[root@Localhost abrt]# yum list|grep gcc[root@Localhost abrt]# yum install gcc.x86_649.安装升级Zlib# cd /usr/local/src# yum install wget# wget /zlib-1.2.8.tar.gz# tar xzvf zlib-1.2.8.tar.gz# cd zlib-1.2.8# ./configure --prefix=/usr/local/zlib# make# make install10.升级OpenSSL#cd/usr/local/src#wget /source/openssl-1.0.1u.tar.gz(网址需要确认一下)#tar xzvf openssl-1.0.1u.tar.gz#cd openssl-1.0.1usu –yum install perlcd /usr/local/src/openssl-1.0.1uc#./config --prefix=/usr/local/openssl#make#make test(进行SSL加密协议的完整测试,如果出现错误一定先找出原因,否则一味继续,可能最终导致SSH 不能使用!)#make install11.卸载SSH老版本#rpm -qa|grep ssh#rpm -e openssh-server-5.3p1-84.1.el6.x86_64#rpm -e openssh-clients-5.3p1-84.1.el6.x86_64 提示不存在,正常#rpm -e openssh-5.3p1-84.1.el6.x86_64 提示不存在,正常#rpm -qa|grep ssh[root@Localhost~]#vi/etc/pam.d/login 未做12.升级OpenSSH# cd /usr/local/src# wget http://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-7.3p1.tar.gz# tar xzvf openssh-7.3p1.tar.gz# cd openssh-7.3p1#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords(提示出现OpenSSL headers missing错误,需安装zlib-devel、keyutils-libs-devel、e2fsprogs-devel、libsepol-devel、libselinux-devel、krb5-devel、openssl-devel;yum install zlib-develyum install keyutils-libs-develyum install e2fsprogs-develyum install libsepol-develyum install libselinux-develyum install krb5-develyum install openssl-devel提示出现pam headers not found时需安装pam-devel)yum install pam-devel# make (如果在有问题的时候执行过make,需要通过make clean命令清空后再次执行make 命令)# make install# vi /etc/ssh/sshd_configPermitRootLogin yes(去掉本条前面的#号,生效)13.将sshd加入启动服务:进入ssh安装解压目录#cp ./contrib/redhat/sshd.init /etc/init.d/sshd (如提示文件不存在,需要在cd /usr/local/src cd openssh-7.3p1 目录下)#chmod +x /etc/init.d/sshd#chkconfig --add sshd最后启动SSH 服务使修改生效:# service sshd start#chkconfig --list |grep sshd 检查ssh服务是否开机启动,如果没有,执行下面命令#chkconfig --add sshd#/etc/init.d/sshd restart或者service sshd restart重启后确认一下当前的OpenSSH 和OpenSSL 是否为新版:# ssh -V14.关闭telnet[root@Localhost ~]# vi /etc/xinetd.d/telnet将disable = no 改为disable = yes# chkconfig telnet off# vi /etc/services注释掉23端口,在telnet两个端口前面加#。
OpenSSH升级
OpenSSH升级OpenSSH_6.2p2升级到OpenSSH_7.3p1OpenSSH_6.2p2升级到OpenSSH_7.3p1 (1)前⾔ (2)⼀:检查依赖软件 (3)#安装必要的gcc, gcc-c++编译⼯具以及libopenssl-devel,pam-devel,zlib-deve3⼆:安装OpenSSL (4) 2.1.检查系统⾃带的openssl (4)2.2.检查openssl版本 (4)2.3.检查openssl安装⽂件以及路径 (4)2.4备份上述⽂件,/usr/bin/X11/openssl为/usr/bin/openssl的软链接 (5)2.5安装zlib-1.2.8 (5)三:升级openssl (6)3.1安装openssl-fips-2.0.13 (6)3.2 检查安装好后的⽬录⽂件 (6)3.3安装openssl-1.0.2h (6)3.4查看安装好的/usr/local/openssl⽬录⽂件 (7)3.5 查看/etc/ssl⽬录 (7)3.6配置升级后的openssl的相关⽬录(链接openssl程序) (7)3.7查看升级的openssl版本 (8)四:卸载系统原有的OpenSSH (8)4.1停⽌sshd服务 (8)4.2卸载openssh (8)五:升级OpenSSH (9)5.1安装openssh7.3p1 (9)5.2 查看升级后的版本 (9)5.3 拷贝sshd启动脚本,contrib/⽬录下对应系统的启动脚本 (9)5.4启动并设置开机启动 (10)5.5修改sshd ⽂件 (10)六:升级过程可能会出现的经典错误 (10)6.1编译openssh时,出现找不到pam-devel (10)6.2编译过程中出现libpam missing (10)6.3编译过程出现host-key Error 255 (11)6.4编译过程中出现错误configure: error: *** Can't find recent OpenSSL libcrypto(see config.log for details) *** (11)6.5编译openssh依赖的是openssl是⽼版本 (12)6.7升级后ssh⽆法正常登录 (12)前⾔OpenSSH概念:OpenSSH是实现远程控制、远程加密传输数据的安全的⽹络连接⼯具,也就是为我们提供ssh服务的程序。
解决openssh漏洞,升级openssh版本
解决openssh漏洞,升级openssh版本关于解决漏洞的问题我就不详说了,主要就是升级版本。
这⾥我们就直接简单记录下步骤:1、升级使⽤root⽤户登录系统进⼊到/home/guankong ,上传openssh-6.6p1.tar.gz到该⽬录下1: 备份原rpm启动脚本到当前路径下#cp /etc/init.d/sshd /home/guankong2:停⽌服务#/etc/init.d/sshd stop3: 查看已安装rpm openssh#rpm –qa |grep openssh4:删除原rpm openssh软件包#rpm -e openssh-server-4.3p2-29.el5 openssh-4.3p2-29.el5 openssh-clients-4.3p2-29.el5 openssh-askpass-4.3p2-29.el55:解压源码补丁安装包(会在当前路径下创建openssh6.0p1⽬录)#tar -zxvf openssh 6.0p1.tar.gz6: 进⼊该⽬录#cd /root/openssh6.0p17: 配置指定安装⽬录同时不检查zlib版本(节省时间如果zlib版本过低那么就会造成openssh的源⽂件⽆法编译成功)# ./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check8:make 编译9:make install 安装10:检查是否升级成功#ssh –V下图为升级成功11:vi /etc/ssh/sshd_config 修改配置⽂件(参照下⽅sshd配置⽂件安全配置要求)12:拷贝启动脚本到/etc/init.d/下#cp /root/sshd /etc/init.d/13: 开启服务#/etc/init.d/sshd start开启服务时会有⼀个提⽰因为这个路径⽬录已经通过卸载rpm包被删除、⼿动创建⼀个即可(该路径在启动脚本中为通过⽇志记录sshd服务的启动信息)#mkdir /var/empty/sshd14:设置SSHD服务为开机启动#chkconfig --add sshd#chkconfig sshd on15:检查端⼝是否正常#netstat -an |grep :22shell脚本:#!/bin/shchmod 755 -R .install_log=install.log##openssh upgradeecho "#######1:openssh upgrade ..." 2>&1 | tee -a $install_logcp /etc/init.d/sshd .//etc/init.d/sshd stoprpm -e openssh-clients-5.3p1-111.el6.x86_64 openssh-5.3p1-111.el6.x86_64 openssh-server-5.3p1-111.el6.x86_64 2>&1 | tee -a $install_log tar -zxvf openssh-6.6p1.tar.gz 2>&1 | tee -a $install_logcd openssh-6.6p1./configure --prefix=/usr --sysconfdir=/etc/ssh --without-zlib-version-check 2>&1 | tee -a $install_logmake 2>&1 | tee -a $install_logmake install 2>&1 | tee -a $install_logcd ..cp sshd /etc/init.d/ -rf/etc/init.d/sshd startchkconfig sshd onecho "openssh upgrade end !" 2>&1 | tee -a $install_log软件:openssh-6.6p1.tar.gz,⾃⾏下载。
openSSH升级方法
检查/etc/rc.conf中是否inetd_enable="YES,/etc/rc.d/inetd restart,启动inetd
用telnet登陆服务器,进行下面操作
2.升级openssh
cd /root/
wget -c ftp:///pub/OpenBS ... penssh-5.0p1.tar.gz
d) make
e) make install
3、 配置SSH 5.0p1,增SSH的安全性
a) vi /etc/ssh/sshd_config
b) 将#Protocol 2,1修改为Protocol 2
c) 将X11Forwarding yes修改为X11Forwarding no
d) 修改完之后保存退出
3.关于openssl的升级:
最新的openssl包,/source/openssl-0.9.8g.tar.gz
可采用源码安装的形式,
./config --prefix=/usr/local/openssl-0.9.8
make
make install
KEYGEN=/usr/bin/ssh-keygen
SSHD=/usr/sbin/sshd
PID_FILE=/var/run/sshd.pid
改成:
KEYGEN=/usr/local/bin/ssh-keygen
SSHD=/usr/local/sbin/sshd
PID_FILE=/var/run/sshd2.pid
先备份原来的脚本cp /etc/init.d/sshd /etc/init.d/sshd.bak
主要是修改ssh-keygen和sshd的路径。PID文件也作相应修改,避免跟之前的sshd有冲突,这样就能够在保证原有sshd不受影响的情况下配置新的sshd服务。修改下面三项:
openssh8.0升级(简单有效)
openssh8.0升级(简单有效)1.开启TELNET放置ssh突然断开登入不了chkconfig telnet onvi /etc/xinetd.d/telnet将”disable= yes”改成” disable=no”**********************************.131.35:/home/adc2.升级opensslopenssltar -zxvf openssl-1.0.1g.tar.gzcd openssl-1.0.1g./config shared zlibmake && make install#修改历史的OpenSSL文件设置备份mv /usr/bin/openssl /usr/bin/openssl.oldmv /usr/include/openssl /usr/include/openssl.old#设置软连接使其使用新的OpenSSL版本刚刚安装的OpenSSL 默认安装在/usr/local/sslln -s /usr/local/ssl/bin/openssl /usr/bin/opensslln -s /usr/local/ssl/include/openssl /usr/include/openssl#更新动态链接库数据echo "/usr/local/ssl/lib" >> /etc/ld.so.confldconfig -v3.升级opensshopenssh#tar -xvf openssh-7.9p1.tar.gz#cd openssh-7.9p1#rpm -qa |grep openssh#for i in $(rpm -qa |grep openssh);do rpm -e $i --nodeps ;done#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords--with-pam --with-tcp-wrappers --with-ssl-dir=/usr/local/ssl --without-hardening#rm -rf /etc/ssh#make && make install#cp ./contrib/redhat/sshd.init /etc/init.d/sshd#chkconfig --add sshd#chkconfig sshd on#chkconfig --list|grep sshd#ssh -V。
openssh升级教程
openssh升级教程openssh升级教程openssh低版本存在许多漏洞OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)OpenSSH do_setup_env函数权限提升漏洞(CVE-2015-8325)OpenSSH auth_password函数拒绝服务漏洞(CVE-2016-6515) OpenSSH 'schnorr.c'远程内存破坏漏洞(CVE-2014-1692)OpenSSH 远程代码执⾏漏洞(CVE-2016-10009)Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600)OpenSSH 安全限制绕过漏洞(CVE-2016-10012)Portable OpenSSH GSSAPI远程代码执⾏漏洞(CVE-2006-5051) OpenSSH sshd Privilege Separation Monitor 未明漏洞OpenSSH 安全漏洞(CVE-2016-1908)OpenSSH <=7.2p1 xauth命令注⾏漏洞(CVE-2016-3115)OpenSSH 远程权限提升漏洞(CVE-2016-10010)Debian OpenSSH SELinux 特权升级漏洞(CVE-2008-3234)OpenSSH X连接会话劫持漏洞OpenSSH sshd mm_answer_pam_free_ctx释放后重利⾏漏洞(CVE-2015-6564)Portable OpenSSH 'ssh-keysign'本地未授权访问漏洞可移植OpenSSH GSSAPI认证终⾏信息泄露漏洞(CVE-2006-5052)OpenSSH glob表达式拒绝服务漏洞(CVE-2010-4755)OpenSSH DynamicForward ⾏故意的的GatewayPorts激活漏洞(CVE-2005-2797)OpenSSH S/Key 远程信息泄露漏洞(CVE-2007-2243)OpenSSH 'x11_open_helper()'函数安全限制绕过漏洞(CVE-2015-5352)OpenSSH ⾏户枚举漏洞(CVE-2018-15473)【原理扫描】OpenSSH默认服务器配置拒绝服务漏洞(CVE-201。
openssh漏洞升级方案
文档编号:项目代号:openssh漏洞升级方案江苏君立华域信息安全技术有限公司2014年6月10日文档信息表1概述为解决openssh版本漏洞。
2评估范围及漏洞此次信息安全评估针对全网IP,检查手段为漏洞扫描。
本次漏洞扫描采用绿盟极光漏洞扫描器对各域生产资产进行细致深入的漏洞检测、分析。
此文档针对openssh漏洞升级进行说明。
3漏洞信息评估时间:2014年6月7日-6月8日openssh具体漏洞信息如下:图一:openssh漏洞列表经测试,linux系统上,将openssh升级到6.6版本可解决以上所有漏洞(不包括新出现的漏洞)。
4升级步骤说明:在升级安装过程中不要复制、黏贴文中的内容,不同版本会有些小差别,会给您带来不便,请根据提示手动操作。
1.软件下载:升级openssh前需先升级安装openssl下载地址如下:/source/选择下载openssl-1.0.1h.tar.gz (最新版)/pub/OpenBSD/OpenSSH/portable/下载openssh-6.6p1.tar.gz2.升级操作前,请先开启telnet服务,并以telnet的方式登录到服务器3.查看原openssl相关文件,把相关信息记录下来,由于是采用源码方式安装,后续需要手动更新部分库文件#rpm -ql openssl4.查找原openssl的库文件路径,注意系统版本是32位还是64位#ll /lib64/libcrypto.so.*# ll /lib64/libssl.so.*#ll /usr/lib64/libcrypto.so5.查找原openssl相关文件,包括动态连接库文件,可执行文件#find / -name openssl6.移动备份原头文件#mv /usr/include/openssl /usr/include/oldssl7.用于备份原库文件# mkdir /lib/oldssl8.删除原库文件,准备升级,这里只是移动了做备份并没有直接删除# mv /lib/libssl.so.0.9.8b /lib/oldssl/ //注意标红字体文件位置9.确定openssl软件包中包含的库文件#rpm -ql openssl //第四步已经找到的10.移动库文件,连接文件可以直接删除,注意标红字体文件,不同系统可能文件名有差别# mv /lib/libcrypto.so.1 /lib/oldssl/# mv /lib/ibssl.so.0.9.8b /lib/oldssl/# mv /lib/libssl.so.1 /lib/oldssl/11.删除源文件# ll /usr/bin/openssl# mv /usr/bin/openssl /usr/bin/BAKopenssl# rm -rf /usr/lib/libcrypto.so12.解压新文件# tar xzf openssl-1.0.1g.tar.gz# cd penssl-1.0.1g13.编译安装# ./config# make# make install这样默认安装在/usr/local/ssl/目录# /usr/local/ssl/bin/openssl version# cp /usr/local/ssl/bin/openssl /usr/bin# openssl version //回到根目录下再执行一次# ldd /usr/bin/openssl14.恢复原连接文件到新的库,注意此处文件名不同,自己更正ln -s /usr/local/ssl/lib/libcrypto.so.0.9.8 /lib/libcrypto.so.4ln -s /usr/local/ssl/lib/libssl.so.0.9.8 /lib/libssl.so.4ln -s /usr/local/ssl/lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.soln -s /usr/local/ssl/lib/libssl.so.0.9.8 /usr/lib/libssl.soln -s /usr/local/ssl/include/openssl /usr/include/openssl现在用新的来替代它了。
OPENSSH5.0升级6.0操作手册
OPENSSH5。
0 版本升级6.0操作手册一.升级前准备1。
首先在官网上下载SSH安装所需依赖包,一般三个包就可以了zlib-1。
2.5。
tar。
gzopenssl-1。
0。
1e.tar.gzopenssh—6。
6p1。
tar。
gz2。
启用TELNET,或VNC工具连接避免SSH升级失败后无法远程操作一般linux服务器默认是安装TELNET的,可以通过命令查看Rpm —qa |grep telnet如已安装,更改配置启用TELNETvi /etc/xinetd。
d/telnetdisable = noservicexinetd restart/etc/securetty加入pts/0pts/1pts/2pts/3/etc/pam。
d/login文件注释掉:#auth [user_unknown=ignore success=ok ignore=ignore#auth_err=die default=bad] pam_securetty。
so如有注释,无请忽略至此telnet服务已启用,在另台机做测试,如果无TELNET服务,请安装TELNET包后在进行SSH升级二.ssh程序升级1.备份启动脚本,以及ssh服务主配置目录# cp /etc/init.d/sshd /ssh5bak# cp /etc/ssh /ssh5bak2.解压安装zlib#tar -zxfzlib—1.2.5.tar.gz //首先安装zlib库,否则会报zlib.c错误无法进行#cd zlib-1.2。
5#。
/configure—-shared#make&&make install3。
解压安装openssl包:#tar—zxfopenssl—1。
0.1.tar。
gz#cd openssl-1。
0。
1#。
/config share#make#make test#make install#mv /usr/bin/openssl /usr/bin/openssl。
OPENSSH5.0升级6.0操作手册
OPENSSH5。
0 版本升级6.0操作手册一.升级前准备1。
首先在官网上下载SSH安装所需依赖包,一般三个包就可以了zlib-1。
2.5。
tar。
gzopenssl-1。
0。
1e.tar.gzopenssh—6。
6p1。
tar。
gz2。
启用TELNET,或VNC工具连接避免SSH升级失败后无法远程操作一般linux服务器默认是安装TELNET的,可以通过命令查看Rpm —qa |grep telnet如已安装,更改配置启用TELNETvi /etc/xinetd。
d/telnetdisable = noservicexinetd restart/etc/securetty加入pts/0pts/1pts/2pts/3/etc/pam。
d/login文件注释掉:#auth [user_unknown=ignore success=ok ignore=ignore#auth_err=die default=bad] pam_securetty。
so如有注释,无请忽略至此telnet服务已启用,在另台机做测试,如果无TELNET服务,请安装TELNET包后在进行SSH升级二.ssh程序升级1.备份启动脚本,以及ssh服务主配置目录# cp /etc/init.d/sshd /ssh5bak# cp /etc/ssh /ssh5bak2.解压安装zlib#tar -zxfzlib—1.2.5.tar.gz //首先安装zlib库,否则会报zlib.c错误无法进行#cd zlib-1.2。
5#。
/configure—-shared#make&&make install3。
解压安装openssl包:#tar—zxfopenssl—1。
0.1.tar。
gz#cd openssl-1。
0。
1#。
/config share#make#make test#make install#mv /usr/bin/openssl /usr/bin/openssl。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文档编号:
项目代号:openssh漏洞升级方案
江苏君立华域信息安全技术有限公司
2014年6月10日
文档信息表
1概述
为解决openssh版本漏洞。
2评估范围及漏洞
此次信息安全评估针对全网IP,检查手段为漏洞扫描。
本次漏洞扫描采用绿盟极光漏洞扫描器对各域生产资产进行细致深入的漏洞检测、分析。
此文档针对openssh漏洞升级进行说明。
3漏洞信息
评估时间:2014年6月7日-6月8日
openssh具体漏洞信息如下:
图一:openssh漏洞列表
经测试,linux系统上,将openssh升级到6.6版本可解决以上所有漏洞(不
包括新出现的漏洞)。
4升级步骤
说明:在升级安装过程中不要复制、黏贴文中的内容,不同版本会有些小差别,会给您带来不便,请根据提示手动操作。
1.软件下载:升级openssh前需先升级安装openssl
下载地址如下:
/source/选择下载openssl-1.0.1h.tar.gz (最新版)/pub/OpenBSD/OpenSSH/portable/
下载openssh-6.6p1.tar.gz
2.升级操作前,请先开启telnet服务,并以telnet的方式登录到服务器
3.查看原openssl相关文件,把相关信息记录下来,由于是采用源码方式安
装,后续需要手动更新部分库文件
#rpm -ql openssl
4.查找原openssl的库文件路径,注意系统版本是32位还是64位
#ll /lib64/libcrypto.so.*
# ll /lib64/libssl.so.*
#ll /usr/lib64/libcrypto.so
5.查找原openssl相关文件,包括动态连接库文件,可执行文件
#find / -name openssl
6.移动备份原头文件
#mv /usr/include/openssl /usr/include/oldssl
7.用于备份原库文件
# mkdir /lib/oldssl
8.删除原库文件,准备升级,这里只是移动了做备份并没有直接删除
# mv /lib/libssl.so.0.9.8b /lib/oldssl/ //注意标红字体文件位置
9.确定openssl软件包中包含的库文件
#rpm -ql openssl //第四步已经找到的
10.移动库文件,连接文件可以直接删除,注意标红字体文件,不同系统可
能文件名有差别
# mv /lib/libcrypto.so.1 /lib/oldssl/
# mv /lib/ibssl.so.0.9.8b /lib/oldssl/
# mv /lib/libssl.so.1 /lib/oldssl/
11.删除源文件
# ll /usr/bin/openssl
# mv /usr/bin/openssl /usr/bin/BAKopenssl
# rm -rf /usr/lib/libcrypto.so
12.解压新文件
# tar xzf openssl-1.0.1g.tar.gz
# cd penssl-1.0.1g
13.编译安装
# ./config
# make
# make install
这样默认安装在/usr/local/ssl/目录
# /usr/local/ssl/bin/openssl version
# cp /usr/local/ssl/bin/openssl /usr/bin
# openssl version //回到根目录下再执行一次
# ldd /usr/bin/openssl
14.恢复原连接文件到新的库,注意此处文件名不同,自己更正
ln -s /usr/local/ssl/lib/libcrypto.so.0.9.8 /lib/libcrypto.so.4
ln -s /usr/local/ssl/lib/libssl.so.0.9.8 /lib/libssl.so.4
ln -s /usr/local/ssl/lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.so
ln -s /usr/local/ssl/lib/libssl.so.0.9.8 /usr/lib/libssl.so
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
现在用新的来替代它了。
15.最后要刷新系统的动态连接库配置
# echo /usr/local/ssl/lib >> /etc/ld.so.conf
# ldconfig -v
16.升级openssh,同样查看相关文件,以便后续更新
# rpm -ql openssh
17.解压、编译、安装
# tar xzf openssh-4.7p1.tar.gz
# cd openssh-4.7p1
# ./configure
# make
# make install
18.记住完成后提示信息:完成安装,生成了密钥对以及安装路径等信息
19.查看版本信息等
# /usr/local/bin/ssh -V
# mv /usr/bin/ssh /usr/bin/oldssh
# cp /usr/local/bin/ssh /usr/bin/
# ssh -V
20.版本号看到都已经更新了,在make install最后可以看到提示信息
OpenSSH就被安装在/etc/local里面了,所有有关OpenSSH的配置文件都放在/usr/local/etc目录下,修改配置文件/usr/local/etc/sshd_config
#vi /usr/local/etc/sshd_config
把以下参数前面的注释#去掉
Port 22
Protocol 2,1
RhostsRSAAuthentication no
21.最后修改一下/etc/init.d/sshd 不然不能启动
以下参数是和原来不一样的,主要是路径改变了,注意安装文件路径#[ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
KEYGEN=/usr/local/bin/ssh-keygen
SSHD=/usr/local/sbin/sshd
RSA1_KEY=/usr/local/etc/ssh_host_key
RSA_KEY=/usr/local/etc/ssh_host_rsa_key
DSA_KEY=/usr/local/etc/ssh_host_dsa_key
PID_FILE=/var/run/sshd.pid
22.启动ssh服务
# /etc/init.d/sshd start
23.确定启动没有问题后,重新设置其自动启动。
# ll /etc/rc.d/rc3.d/*ssh*
# rm -f /etc/rc.d/rc3.d/S55sshd
# ln -s /etc/init.d/sshd /etc/rc.d/rc3.d/S55ssh。