Suse11 sp3 下升级 openssh-7.1脚本

客户系统检测出openssh版本过旧存在漏洞,所以决定写个脚本,需要四个包:openssh-7.1p2.tar,openssl-1.0.1s.tar,telnet-server-1.2-149.1.x86_64,zlib-1.2.8.tar

脚本如下:(亲测,可用)

#!/bin/bash
#program : Server auto deploy
#author : [email protected]
#version : latst
#function : update openssh

##当前路径
current_dir="$(pwd) "
zlib_version="zlib-1.2.8"
openssh_version="openssh-7.1p2"
openssl_version="openssl-1.0.1s"
DATE=`date +%Y%m%d`
Distributor=`lsb_release -i|cut -c 17-`
BLUE_COLOR=‘\E[1;34m‘ #蓝
RED_COLOR=‘\E[1;31m‘ #红
BLACK_COLOR=‘\E[1;30m‘ #黑

echo -e "${RED_COLOR}########################################################################################${RES}"
echo -e "${RED_COLOR}################### #################### "
echo -e "${RED_COLOR}################### openssh install -----[success] #################### "
echo -e "${RED_COLOR}################### #################### "
echo -e "${RED_COLOR}################### #################### "
echo -e "${RED_COLOR}########################################################################################${RES}"
echo -e "${BLACK_COLOR} ${RES}"
sleep 5

##检查系统当前用户
if [ `id -u` != 0 ]; then
echo "Error: if you want to run this script,please use root to execute;"
exit 1
fi

##安装telnet
cd $current_dir
rpm -ivh telnet-server-1.2-149.1.x86_64.rpm
sed -e ‘s/yes/no/g‘ /etc/xinetd.d/telnet
/etc/init.d/xinetd restart
chkconfig --list | grep telnet
if [ $? -eq 0 ]; then
echo "install telnet ---------------------------[success]"
fi
sleep 5

##记录当前openssh版本信息
cd $current_dir
touch openssh_version.txt > /dev/null
echo `ssh -V` &> $current_dir/openssh_version.txt

##安装zlib,构建共享库
cd $current_dir
tar -zxvf zlib-1.2.8.tar.gz
cd $zlib_version
./configure --shared
sleep 3
/usr/bin/make install
cp zutil.h /usr/local/include
cp zutil.c /usr/local/include
/sbin/ldconfig -v
sleep 2

##进入安装包上传目录,解压openssl
cd $current_dir
tar -zxvf openssl-1.0.1s.tar.gz
cd $openssl_version
./config shared zlib
sleep 3
/usr/bin/make
sleep 2
/usr/bin/make install
echo "install openssl --------------------------[success]"
sleep 5

##修改配置文件,显示正常版本信息
mv `which openssl` /usr/bin/openssl.bak
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
echo `ssh -V` &> /$current_dir/openssh_version.txt
echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
/sbin/ldconfig -v

##软件安装之-Openssh安装
##禁用sshd服务,卸载原来的openssh版本
/sbin/service sshd stop
cp /etc/init.d/sshd /root/
if rpm -qa | grep openssh &> /dev/null
then
rpm -qa | grep openssh &> $current_dir/openssh_version.txt
while read line
do
rpm -e $line --nodeps
echo "remove $line ------------------------------[success]"
done <$current_dir/openssh_version.txt
fi

##解压缩openssh安装包,并进入解压缩文件编译安装
cd $current_dir
tar -zxvf openssh-7.1p2.tar.gz
cd $openssh_version
./configure --prefix=/usr --with-zlib=/root/zlib-1.2.8 --with-md5-passwords
sleep 2
/usr/bin/make
sleep 2
/usr/bin/make install

##启动调试ssh
#OS type
if [ "$Distributor" == "SUSE LINUX" ]; then
cd contrib/suse
cp rc.sshd /etc/init.d/sshd
chmod +x /etc/init.d/sshd
chkconfig --add sshd
else

cd contrib/redhat
cp sshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd
chkconfig --add sshd

fi
sed -i ‘10a PermitRootLogin YES‘ /usr/etc/sshd_config
service sshd restart
chkconfig sshd on
if netstat -tnlp | grep -w 22 &> /dev/null; then
echo "Start debugging-----------------------------------[success]"
echo -e "${BLUE_COLOR}########################################################################################${RES}"
echo -e "${BLUE_COLOR}################### #################### "
echo -e "${BLUE_COLOR}################### openssh install -----[success] #################### "
echo -e "${BLUE_COLOR}################### #################### "
echo -e "${BLUE_COLOR}################### #################### "
echo -e "${BLUE_COLOR}########################################################################################${RES}"
sleep 3
sed -i ‘s/no/yes/g‘ /etc/xinetd.d/telnet
/etc/init.d/xinetd restart
fi
ssh -V
exit 0

时间: 2024-12-06 08:42:28

Suse11 sp3 下升级 openssh-7.1脚本的相关文章

linux下升级 OpenSSH

一.下载最新版本 OpenSSH OpenSSH 的官方网站:http://www.openssh.com 这里我下载的是openssh-6.2p1 使用ssh -V 命令查看一下 #安装相关的组件 yum -y install gcc openssl-devel pam-devel rpm-build 二.下面开始升级SSH,这里我写了两种升级方法 1.编译安装 OpenSSH # tar xzvf openssh-6.2p1.tar.gz # cd openssh-6.2p1 # ./con

升级openssh的两种方式

此文介绍的是服务器在有网络和无网络情况下升级openssh方式. 一.首先介绍一个无网络如何升级: 1.准备相关的包 openssh下载地址:  http://mirror.internode.on.net/pub/OpenBSD/OpenSSH/portable/ openssl相关包下载:http://www.openssl.org/source/ pam相关包下载:http://pkgs.org/centos-6/centos-x86_64/ zlib包下载: http://zlib.ne

CentOS下升级默认的OpenSSH(OpenSSH_5.3p1到OpenSSH_7.6p1)

近期对IDC机房服务器做了一次安全漏洞扫描,漏扫结果显示服务器的OpenSSH版本太低(CentOS6默认是OpenSSH_5.3p1),存在漏洞隐患,安全部门建议升级到OpenSSH_7.6p1.升级OpenSSH的操作并不复杂,但由于是线上环境,故需要谨慎操作.特别需要注意的是:如果是通过ssh远程连接服务器后进行的版本升级操作,万一升级失败了,则ssh就远程登录不上去了.当然,如果服务器安装了iDRAC远程管理卡就好说了,如果没有iDRAC远程管理卡,则需要提前开启telnet远程登录(允

CentOS 5.8 升级openssh至6.7

一.简介 最近公司一些生产系统服务器被机房扫描出openssh工具有漏洞,于是对线上的一些服务器中的openssh进行的升级,现将具体的过程写成博文,希望对大家有所帮助-- 由于CentOS 5 官方所提供的yum源中最新版本的openssh也相对很老了,所以就只有两种办法了: 1.自制RPM包进行升级: 本来我最先考虑的是使用这种方法,因为在生产环境中缺乏一些编译所需要的软件包,如果都一一安装的话又会产生未知的安全隐患,但是当把RPM制作完成后,在测试机上测试的时候发现最新版本的openssh

SuSe 11以编译安装的方式升级OpenSSH、OpenSSL及依赖问题解决

OpenSSH OpenSSH是实现远程控制.远程加密传输数据的安全的网络连接工具,也就是为我们提供ssh服务的程序.SSH由服务端和客户端组成,服务端是一个守护进程(sshd),在后台运行并响应客户端的连接请求:客户端包含ssh(openssh-clients).scp.rsync.slogin.sftp等应用程序. SSH服务本身提供了一种安全加密的数据传输方式.在一些比较旧的Linux系统版本中,多数是openssh 5版本.而目前OpenSSH已更新到OpenSSH 7.X版本,修复许多

centos6.6升级openssh到最新版本7.5.p1

本文主要简单记录下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可以不用升级OpenSSL

升级openssh

由于升级OpenSSH涉及到安全性问题,为保险起见,在升级前最好安装telnet服务作为备用方案,然后在升级成功后再停止telnet即可. 一.OpenSSH升级相关源码包下载地址 zlib http://www.zlib.net/zlib-1.2.11.tar.gz zlib其他版本下载地址 http://www.zlib.net/fossils/ openssl-fips http://www.openssl.org/source/openssl-fips-2.0.16.tar.gz Ope

升级openssh漏洞

升级openssl和openssh 最近接收到客户的漏洞提醒,openssl和openssh的漏洞,解决办法就只有升级. 升级前环境 ~]# ssh -V OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013 ~]# rpm -qa | grep openssl openssl-1.0.1e-15.el6.x86_64 ~]# uname -r 2.6.32-431.el6.x86_64 ~]# rpm -qa |grep zlib zlib-1.2.3-

升级OpenSSH及其OpenSSL的正确姿势

需求说明 在本小节中,让我花点篇幅绕个弯子解释下文章标题是什么意思,以及这篇文章到底讲的是什么,这将有助于理解本文的内容. 有时,可能由于审计需要或修复漏洞的需要,我们可能会遇到这么一个需求:升级操作系统的openssl. 那,怎么升级操作系统的openssl呢?那很简单,一条命令搞定: [[email protected] ~]# yum update openssl -y 没错,这的确可以升级操作系统的openssl.这只是小版本的升级,比如将openssl从1.0.1e-43版本升级到1.