你的位置:首页 > Linux系统

CentOS 5 升级openssl和openssh到新版

2014-03-02 浏览:(7393) Linux系统 评论(0)

一、更新依赖的包:

yum install -y zlib pam pam-devel

二、下载所需的安装包

wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz

wget https://mirrors.evowise.com/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz

三、编译安装openssl及验证

3.1、

tar xzvf openssl-1.0.2l.tar.gz
cd openssl-1.0.2l/
./config shared zlib --prefix=/usr/local/openssl
make
make install

3.2、

mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak

3.3、

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

3.4、

echo /usr/local/openssl/lib >> /etc/ld.so.conf
ldconfig -v

3.5、

openssl version -a

OpenSSL 1.0.2l  25 May 2017
built on: reproducible build, date unspecified
platform: linux-x86_64
options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) idea(int) blowfish(idx) 
compiler: gcc -I. -I.. -I../include  -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -O3 -Wall -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DRC4_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM -DECP_NISTZ256_ASM
OPENSSLDIR: "/usr/local/openssl/ssl"

四、编译安装openssh及验证

4.1、为了防止出现问题不能连接服务器,我们在安装操作前先开启telnet服务

4.1.1、

yum install telnet telnet-server

4.1.2、

vi /etc/xinetd.d/telnet

disable         = yes 修改为 disable         = no

4.1.3、

/etc/init.d/xinetd start

4.1.4、注意:如果你开启了防火墙,请把23端口开放或只允许你的IP连接,telnet不允许root帐号直接登录,所以如果你没有普通用户帐号的话要提前创建一个。

4.1.5、测试连接

telnet xxx.xxx.xxx.xxx 23

输入用户名和密码登录成功即可。

4.2、

tar xzvf openssh-7.5p1.tar.gz
cd openssh-7.5p1/
./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/openssl/ --with-pam --with-zlib --with-md5-passwords
make
make install

4.2.1、

mv /etc/init.d/sshd /etc/init.d/sshd.old
cp opensshd.init /etc/init.d/sshd
chmod +x /etc/init.d/sshd

4.2.2、修改新版本openssh的服务端口

vi /usr/local/openssh/etc/sshd_config

#Port 22 修改为你想要的端口号,如果开启了防火墙,先开放你要修改的那个端口号,这里我们将默认端口修改为Port 2222 并启动新版本的openssh服务

/etc/init.d/sshd start

然后使用ssh工具测试是否可以正常连接服务器,注意默认配置文件不允许root帐号登录,如果你想允许root帐号登录,请修改配置文件里的#PermitRootLogin prohibit-password为PermitRootLogin yes,然后重启新版openssh服务/etc/init.d/sshd restart

4.2.3、上一步测试成功的话就可以把老版本的openssh服务停止了

/etc/init.d/sshd.old stop
mv /usr/bin/ssh /usr/bin/bak_ssh
ln -s /usr/local/openssh/bin/ssh /usr/bin/ssh
ssh -V
OpenSSH_7.5p1, OpenSSL 1.0.2l  25 May 2017
chkconfig --add sshd
chkconfig sshd on

到此openssl和openssh就已经升级成功了,老版本的管理脚本也可以删除了,rm -f /etc/init.d/sshd.old ,如果你想继续使用22端口,把新版的openssh配置文件里的端口号改为22,重启sshd服务即可,前面安装的telnet服务在升级完成并测试之后,就可以停止服务或者直接删除。

  • 发表评论
  • 查看评论
【暂无评论!】

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。