你的位置:首页 > Linux系统
一、更新依赖的包:
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服务在升级完成并测试之后,就可以停止服务或者直接删除。

- 发表评论
- 查看评论
【暂无评论!】发表评论: