Bootstrap

Openssh版本升级9.3p1

一、测试环境

系统版本openssl版本openssh版本
centos7.9OpenSSL 1.0.2kOpenSSH_7.4p1

1.查看操作系统版本信息。

##查看系统发行版信息。
cat /etc/redhat-release

##查看系统版本信息。
cat /proc/version

##查看系统内核信息。
uname -a

2、查看openssl版本。

openssl version

3、查看openssh版本。

ssh -V

在这里插入图片描述

二、初始化

1、安装基础服务。

yum install autoconf bash-completion bind-utils cifs-utils createrepo dstat expect ftp gcc gcc-c++ glibc iotop lrzsz lsof make net-tools nfs-utils openssl openssl-devel openvpn pam-devel pcre-devel python2-pip rsync screen sysstat tcpdump telnet tree unzip vim wget yum-utils zip haveged

三、备份文件

1、安装telnet服务,防止升级中断开连接而连接不上服务器。

##检查是否安装。
rpm -q telnet-server
rpm -q telnet

##安装。
yum install telnet-server  telnet -y

##设置开机自启。
systemctl enable telnet.socket
systemctl start telnet.socket

##防火墙开启23端口,并允许telnet使用root登录。
echo 'pts/0' >>/etc/securetty
echo 'pts/1' >>/etc/securetty

##报错处理,若登陆时查看日志tail /var/log/secure,显示access denied: tty 'pts/3' is not secure !,则执行以下代码。
echo 'pts/3' >>/etc/securetty
systemctl  restart telnet.socket

在这里插入图片描述

四、升级openssl

1、备份原文件。

mv /etc/ssl /etc/ssl_bck_20240618
cp -r /usr/bin/openssl /usr/bin/openssl_bck_20240618

2、下载安装包,解压编译安装。

wget https://www.openssl.org/source/openssl-1.1.1u.tar.gz
tar zxf openssl-1.1.1u.tar.gz 
cd openssl-1.1.1u
./config shared && make && make install
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/
openssl version

在这里插入图片描述

五、升级openssh

1、备份原文件。

 mv /etc/pam.d/sshd /etc/pam.d/sshd-bak
 cp  -r /etc/ssh/ /etc/ssh-bak/

2、下载安装包,解压编译安装。

wget http://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
tar zxf openssh-9.3p1.tar.gz 
cd openssh-9.3p1

##卸载旧版本。
rpm -e --nodeps `rpm -qa | grep openssh`

##编译安装。
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-md5-passwords --with-pam  --with-ssl-dir=/usr/local/lib64/  --with-ssl-engine
make && make install

在这里插入图片描述
3、文件授权。

chmod 600 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ed25519_key

4、复制配置文件。

cp -a contrib/redhat/sshd.init /etc/init.d/sshd
chmod u+x /etc/init.d/sshd

5、还原配置文件。

cp /etc/pam.d/sshd-bak /etc/pam.d/sshd
cp /etc/ssh-bak/sshd_config /etc/ssh/sshd_config

6、添加开机自启。

chkconfig --add sshd
chkconfig sshd on

7、修改配置文件。

vi /etc/ssh/sshd_config

##修改第一处,注释掉。
GSSAPIAuthentication yes
GSSAPICleanupCredentials no


##修改第二处,取消注释。
PermitRootLogin yes			    #允许root帐号远程登录
PasswordAuthentication yes         #开启密码认证方式
UsePAM yes                          #开启UsePAM登录

在这里插入图片描述
在这里插入图片描述
8、关闭selinux,重启服务,查看版本。

setenforce 0
systemctl restart sshd
ssh -V

在这里插入图片描述

六、测试重新连接

1、一定要重新打开一个ssh连接测试,确定能连接上服务器。
在这里插入图片描述

;