天天看点

Linux OpenSSH-9.0p1最新版升级步骤详细

#安装telnet

yum install xinetd telnet-server telnet -y

#开启服务

systemctl start telnet.socket

service xinetd start

#关闭防火墙(或者开启23端口)

systemctl stop firewalld.service  

systemctl disable firewalld.service  

#安装wget

yum install -y wget

#安装tar

yum install -y tar

#软件包准备

cd /usr/local/src/openssh   #解压目录

wget --no-check-certificate https://www.zlib.net/zlib-1.2.12.tar.gz

wget --no-check-certificate https://www.openssl.org/source/openssl-1.1.1p.tar.gz

wget --no-check-certificate https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz

#解压软件包

tar -zxvf zlib-1.2.12.tar.gz

tar -zxvf openssl-1.1.1p.tar.gz

tar -zxvf openssh-9.0p1.tar.gz

#备份

mv /etc/ssh /etc/ssh.bak

mv /etc/init.d/sshd /etc/init.d/sshd.bak

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

##卸载原有的openssh

rpm -e --nodeps `rpm -qa | grep openssh`

###安装相关依赖包

yum install vim gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel zlib-devel tcp_wrappers-devel tcp_wrappers

#进入zlib解压目录

cd zlib-1.2.12

#编译安装

./configure --prefix=/usr/local/zlib

make && make test && make install

#

ll /usr/local/zlib

ldconfig -v

/sbin/ldconfig

#进入openssl解压目录

cd ..

cd openssl-1.1.1p

#编译安装

./config shared zlib --prefix=/usr/local/ssl

make clean && make -j 4 && make install  

#更新函数库

echo "/usr/lcoal/ssl/lib" >> /etc/ld.so.conf

ldconfig

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

ln -s /usr/local/ssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1

ln -s /usr/local/ssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

#检查是否升级成功

openssl version -a

#进入openssh解压目录

cd ..

cd openssh-9.0p1

#编译安装

./configure --prefix=/usr/local/ssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib --with-selinux

make -j 4 && make install  

#查看目录版本

/usr/local/ssh/bin/ssh -V

#复制新ssh文件

cp -rf contrib/redhat/sshd.init /etc/init.d/sshd

cp -rf contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

mv /etc/ssh/sshd_config /etc/ssh/sshd_config_orig

cp -rf sshd_config /etc/ssh/sshd_config

cp -rf /usr/local/ssh/sbin/sshd /usr/sbin/sshd

cp -rf /usr/local/ssh/bin/ssh /usr/bin/ssh

cp -rf /usr/local/ssh/bin/ssh-keygen /usr/bin/ssh-keygen

#开启sshd

chmod u+x /etc/init.d/sshd

chkconfig --add sshd      ##自启动

chkconfig --list |grep sshd

chkconfig sshd on

#允许root登录

echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config

echo 'Subsystem sftp /usr/local/ssh/libexec/sftp-server'>> /etc/ssh/sshd_config

#重启sshd服务

/etc/init.d/sshd restart

/etc/init.d/sshd status