linux ssh 升级安装方法
一、安装 Zlib
1、下载最新版本 Zlib
Zlib 官方网站:http://www.zlib.net/
# 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 的官方网站:http://www.openssl.org
# cd /usr/local/src
# wget -c http://www.openssl.org/source/openssl-0.9.8d.tar.gz
2、编译安装 OpenSSL
# tar xzvf openssl-0.9.8d.tar.gz
# cd openssl-0.9.8d
# ./Configure --prefix=/usr/local/openssl
# make
# make test(这一步很重要哦!是进行 SSL加密协议的完整测试,如果出现错误就要一定先找出哪里的原因,否则一味继续可能导致最终 SSH 不能使用,后果很严重哦!)
# make install
三、安装 OpenSSH
1、下载最新版本 OpenSSH
OpenSSH 的官方网站:http://www.openssh.com
# cd /usr/local/src
# wget -c ftp://ftp.it.net.au/mirrors/OpenBSD/OpenSSH/portable/openssh-4.5p1.tar.gz
2、编译安装 OpenSSH
# tar xzvf openssh-4.5p1.tar.gz
# cd openssh-4.5p1
# ./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修改为:
Protocol 2这样就禁用了 ssh v1 协议,只使用更安全的 ssh v2 协议。
X11Forwarding yes修改为:
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
如果看到了新的版本号就没问题啦!
独自等待补充:
在实践过程中,发现了如下问题:
1、提示Starting sshd:WARNING: initlog is deprecated and will be removed in a future release
根据国外的网站上面得到的信息是更改 initlog -c "$SNMPD $OPTIONS" && success || failure
为"$SNMPD $OPTIONS" && success || failure 也就是去掉前面的initlog -c 结果还是解决不了问题。
再查资料发现编译安装的ssh在启动服务的时候 需要更改文件路径而且一定注意修改路径,不然报错。
#[ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
KEYGEN=/usr/local/bin/ssh-keygen
SSHD=/usr/local/sbin/sshd
RSA1_KEY=/usr/local/etc/ssh_host_key
RSA_KEY=/usr/local/etc/ssh_host_rsa_key
DSA_KEY=/usr/local/etc/ssh_host_dsa_key
请大家根据自己的实际情况更改!!