这几天因为安全漏洞扫描,扫描到时大量OPEN SSH漏洞,需安全加固,主要是升级版本,以前对于升级打补丁总是不在意的,可这次中间遇到一些小问题整理成册,希望对大家有点帮助,以下是具体实现方法:

OPENSSH5.0 版本升级6.0操作手册

一.升级前准备

1.首先在官网上下载SSH安装所需依赖包,一般三个包就可以了

zlib-1.2.5.tar.gz

openssl-1.0.1e.tar.gz

openssh-6.6p1.tar.gz


2.启用TELNET,VNC工具连接避免SSH升级失败后无法远程操作

一般linux服务器默认是安装TELNET的,可以通过命令查看

Rpm  -qa |grep telnet


如已安装,更改配置启用TELNET

vi/etc/xinetd.d/telnet
disable = no
service xinetdrestart
/etc/securetty加入
pts/0
pts/1
pts/2
pts/3

/etc/pam.d/login文件注释掉:
#auth    [user_unknown=ignore success=okignore=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 /ssh5bak
2.
解压安装zlib

# tar -zxf zlib-1.2.5.tar.gz    //首先安装zlib库,否则会报zlib.c错误无法进行

# cd zlib-1.2.5

# ./configure--shared

# make &&make install

    3.解压安装openssl包:

# tar -zxf openssl-1.0.1.tar.gz

# cd openssl-1.0.1

# ./config share

# make

# make test

# make install

# mv /usr/bin/openssl/usr/bin/openssl.OFF

# mv/usr/include/openssl /usr/include/openssl.OFF

//该步骤可能提示无文件,忽略即可

# ln -s /usr/local/ssl/bin/openssl/usr/bin/openssl

# ln -s /usr/local/ssl/include/openssl/usr/include/openssl

//移走原先系统自带的openssl,将自己编译产生的新文件进行链接。

4.配置库文件搜索路径

# echo "/usr/local/ssl/lib" >>/etc/ld.so.conf

# /sbin/ldconfig -v

# openssl version -a

三.卸载原有ssh服务
# rpm qa|grep openssh  //查询系统原安装的openssh包,全部卸载。使用rpm e命令卸载,如果出现报错请添加 nodeps参数如下
# rpm -eopenssh-askpass  --nodeps
四.安装升级SSH

# tar -zxfopenssh-6.6p1.tar.gz

# ./configure--prefix=/usr/ --sysconfdir=/etc/ssh --with-zlib --with-ssl-dir=/usr/local/ssl  --with-md5-passwords --mandir=/usr/share/man

# make

# makeinstall




五.启动服务

进入/usr/local/openssh

# cp -pcontrib/redhat/sshd.init /etc/init.d/sshd(redhat)

# cp pcontrib/suse/rc.sshd /etc/init.d/sshd(suse)

//其他版本操作系统具体查看contrib对应目录和readme。

# chmod+x /etc/init.d/sshd

# chkconfig--add sshd

# cpsshd_config /etc/ssh/sshd_config  (如提示覆盖,yes回车)

# cp sshd/usr/sbin/sshd

# cp p ssh /usr/bin/ssh


#service sshd start  ----

启动SSH服务


#ssh V  ----查看当前版本