rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 操作系统 » Redhat

RedHat 9.0升级openssh

本文系作者原创,转载请保留出处:   一、关闭并卸载RedHat9.0自带的Openssh   1.1 停止服务   #service sshd stop   1.2 卸载Openssh   #rpm -e openssh --nodeps
#rpm -e openssh-server --nodeps
#rpm -e openssh-clients --nodeps
#rpm -e openssh-askpass-gnome
#rpm -e openssh-askpass   二、下载安装最新的openssl和openssh   2.1 下载相关软件包至/usr/local/src目录   http://www.openssl.org/source/openssl-0.9.8e.tar.gz
2.2 安装openssl   #cd /usr/local/src
#tar zxvf openssl-0.9.8e.tar.gz
#cd openssl-0.9.8e
#./config shared zlib
#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   2.3 配置库文件搜索路径   #echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
#ldconfig -v
 
2.4 查看openssl的版本号,以验正是否安装正确   #openssl version -a
OpenSSL 0.9.8e 11 Apr 2007
built on: Sat Mar 24 21:24:41 CST 2007
platform: linux-elf
options:  bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) idea(int) blowfish(idx)
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DSHA1_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM
OPENSSLDIR: "/usr/local/ssl"   三、下载安装最新的openssh   3.1 下载相关软件包至/usr/local/src目录   3.2 安装   #cd /usr/local/src
#tar zxvf openssh-4.6p1.tar.gz
#cd openssh-4.6p1
#./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-ssl-dir=/usr/local/ssl --with-md5-passwords --mandir=/usr/share/man
#make
#make install   3.3 查看openssh版本号,验正安装结果   # ssh  -v
OpenSSH_4.6p1, OpenSSL 0.9.8e 11 Apr 2007
usage: ssh [-1246AaCfgkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec]
           [-D [bind_address:]port] [-e escape_char] [-F configfile]
           [-i identity_file] [-L [bind_address:]port:host:hostport]
           [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
           [-R [bind_address:]port:host:hostport] [-S ctl_path]
           [-w local_tun[:remote_tun]] [user@]hostname [command]   四、启动并验正服务的开启状况   4.1 启动服务   #/usr/sbin/sshd   4.2 查看监听端口中是否有22   #netstat -tnlp | grep :22
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      21018/sshd   4.3 尝试从本机通过ssh登录   # ssh root@localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
RSA key fingerprint is 03:eb:80:fe:07:d9:9d:00:1c:15:37:93:d1:d3:8e:6d.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
root@localhost's password:
Last login: Wed Apr 11 11:29:04 2007 from localhost.localdomain
==============================================================================         在开始升级之前一定要确认系统中已经安装了 GCC 编译器!

一、安装 Zlib
1、下载最新版本 Zlib
Zlib 官方网站:http://www.zlib.net/
目前最新版本的 Zlib 是 zlib-1.2.3.tar.gz
# cd /usr/local/src
# wget -c http://www.zlib.net/zlib-1.2.3.tar.gz
2、编译安装 Zlib
# tar xzvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
# ./configure --prefix=/usr/local/zlib
# make
# make install
这样,就把 zlib 编译安装在 /usr/local/zilib 中了。

二、升级 OpenSSL
1、下载最新版本 OpenSSL
OpenSSL 的官方网站:
目前最新版的 OpenSSL 是 openssl-0.9.8i
# cd /usr/local/src
# wget -c http://www.openssl.org/source/openssl-0.9.8i.tar.gz
2、编译安装 OpenSSL
# tar xzvf openssl-0.9.8i.tar.gz
# cd openssl-0.9.8i
# ./Configure --prefix=/usr/local/openssl
# make
# make test (这一步是进行 SSL 加密协议的完整测试,如果出现错误就要一定先找出原因,否则一味继续可能导致 SSH 不能使用!)
# make install

三、升级 OpenSSH
1、下载最新版本 OpenSSH
OpenSSH 的官方网站:
目前最新版的 OpenSSH 是 openssh-5.1p1
# cd /usr/local/src
# wget -c 2、编译安装 OpenSSH
# tar xzvf openssh-5.1p1.tar.gz
# cd openssh-5.1p1
# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/openssl --with-md5-passwords
(注意,如果 configure 时提示 PAM 有错误,那一般是因为系统中没有安装 pam-devel RPM 包,找到安装光盘,安装 pam-devel 就可以解决啦)
# make
# make install
这样就完成了整个升级 SSH 的工作,在升级完成后,我们还需要修改一下 OpenSSH 的配置文件进一步提升安全性。
通过以上步骤完成的升级工作,OpenSSH 的配置文件在 /etc/ssh 下,其中 SSH Server 的配置文件是 sshd_config。
# vi /etc/ssh/sshd_config
找到:
CODE:
#Protocol 2,1

修改为:
CODE:
Protocol 2

这样就禁用了 ssh v1 协议,只使用更安全的 ssh v2 协议。
找到:
CODE:
X11Forwarding yes

修改为:
CODE:
X11Forwarding no

禁用 X11 转发。
修改后保存退出。
● 生成ssh服务管理脚本
进入ssh解压目录
#cd contrib/redhat  
#cp sshd.init /etc/init.d/sshd
#chmod +x /etc/init.d/sshd
#chkconfig --add sshd
最后,启动 SSH 服务使修改生效:
# /etc/init.d/sshd restart
重启后确认一下当前的 OpenSSH 和 OpenSSL 是否正确:
# ssh -v
如果看到了新的版本号就没问题啦!

顶一下
(0)
踩一下
(0)