天天看点

openssh升级与问题(SUSE11 SP3)

*本例为一次安全加固中操作示例

操作系统:SUSE SP3

版本:从6.2升级之7.2p1

*准备工作

openssh升级依赖依赖openssl、zlib,从官网下载之

#################openssh升级-2016-1-27

1、备份原配置文件

cp/etc/init.d/sshd /ssh5bak

cp/etc/ssh /ssh5bak

2、zlib安装

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

cd zlib-1.2.8

./configure –shared

//这里说明一下以上的–shared参数,shared参数表示使用共享库或者动态库,相对的一种叫做静态库,前者一般后缀位.so,后者一般后缀位.a,linux下常见的库路径为/lib、/lib64、/usr/lib、/usr/lib64. 静态库是将引用库的实际代码也编译进当前编译文件,故高效,后者则比较便利

make && make install

3、安装openssl

tar -zxf openssl-1.0.1.tar.gz

cd openssl-1.0.1

./config shared

make

make install

mv /usr/bin/openssl /usr/bin/openssl.BACKUP

mv /usr/include/openssl /usr/include/openssl.BACKUP

//如果系统存在此文件可忽略

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

//将新编译的程序使用原有的openssl路径,防止其他调用openssl项异常

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

//移走原openssl,将自己编译产生的新文件进行链接。如不存在可忽略

4、配置库文件搜索路径

echo “/usr/local/ssl/lib” >>/etc/ld.so.conf

ldconfig //加载新模块

/sbin/ldconfig -v

openssl version -a

//查看新加载模块

5、安装openssh

rpm –qa|grep openssh | rpm -e {} –nodeps //卸载

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

make&&make install

6、为了平滑过度进行一下步骤切换

进入源码包目录,编写shell脚本执行一下内容,脚本在“后台”运行

文件替换前先停止服务

cp -p contrib/suse/rc.sshd /etc/init.d/sshd

chmod +x /etc/init.d/sshd

chkconfig –add sshd

cp -f -r sshd_config /etc/ssh/sshd_config

//修改root可登录,否则升级后可能root不能登录

cp -f -r /usr/sbin/sshd /usr/sbin/sshd_BACKUP

cp -f -r usr/sbin/ssh /usr/sbin/ssh_BACKUP

cp -f -r sshd /usr/sbin/sshd

cp -f -r ssh /usr/bin/ssh

操作执行完成后在脚本中重启sshd服务

注意问题

attention01:注意里依赖包版本

attention02:注意使用新安装程序路径与原有程序路径保持一致

attention03:在一次安全加固后出现了sftp不能使用,这种问题一般是ssh加密问题,注意在sshd_config再确认一下加密。