升级SSH服务-RedHat Linux

2016年8月29日 7558点热度 0人点赞 0条评论

一、◆◆首先配置telnet服务器
以便于远程操作、配置新版本的openssh。
◆在开始升级前要确认系统中安装了GCC 编译器
rpm -qa|grep gcc

二、◆◆升级Zlib
www.zlib.net
./configure --prefix=/usr/local/zlib
make
make install

三、◆◆升级openssl【注:此步骤已不再需要】
www.openssl.org
◆卸载已有的openssl
rpm -e `rpm -qa | grep openssl` --allmatches --nodeps
◆重新配置编译openssl到系统默认目录
./config --prefix=/usr --shared zlib
(安装openssl, 记得加--shared选项, 否则openssh编译的时候可能会找不到新安装的openssl的library, 会报错: openssl的 header和library版本不匹配)
(20151020:增加了zlib选项,可解决最后的错误提示“Zlib not supported: compression tests skipped”)
make clean(有时候这一步很关键)
make
make test(这一步是进行 SSL 加密协议的完整测试,如出现错误就要找出原因,否则可能导致 SSH 不能使用。)
make install
◆如果make时报错如下
c_zlib.c:25:18: 错误:zlib.h:没有那个文件或目录
原因是没有zlib的devel库,需要配置devel库。
◆确认openssl版本
openssl version -a

四、◆◆升级openssh
www.openssh.com
◆备份已有的ssh
mv /etc/ssh /etc/ssh.ljg
◆卸载ssh
rpm -e `rpm -qa|grep openssh` --allmatches --nodeps
◆编译ssh
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-md5-passwords
make
make install
◆配置进系统服务
cp contrib/redhat/sshd.init /etc/init.d/sshd
chkconfig --add sshd
◆修改PAM配置
cp contrib/sshd.pam.generic /etc/pam.d/sshd
这里的lib需要修改为正确的路径,否则会在/var/log/secure里面看到无法找到lib的报错,导致pam无法生效!路径可参见su、rlogin等。
◆确认升级后的版本
ssh -V
◆由于默认没打开PAM支持,需修改/etc/ssh/sshd_config配置
UsePAM yes
PermitRootLogin yes

liking

这个人很懒,什么都没留下

文章评论