利用vim写入文件内容
vim update-ssh_version_v2.0.sh
写入一下内容,保存退出
先按esc,再按shift:(冒号)wq回车
#!/bin/bash SSH_VERSION=$(ssh -V 2>&1) SSHD_VERSION=$(sshd -V 2>&1) # 使用 awk 提取版本号中的第一段数字 SSH_VERSION_NUMBER=$(echo $SSH_VERSION | awk -F'[ _,]' '{print $2}' | grep -oE '[0-9]+\.[0-9]+') SSHD_VERSION_NUMBER=$(echo $SSHD_VERSION | awk -F'[ _,]' '{print $2}' | grep -oE '[0-9]+\.[0-9]+') OLD_SSH_VERSION="${SSH_VERSION_NUMBER}" OLD_SSHD_VERSION="${SSHD_VERSION_NUMBER}" ###以下9.8修改成https://www.openssh.com/里最新的版本 NEW_SSH_VERSION="9.8" cp /usr/bin/ssh /usr/bin/ssh.bak cp /usr/sbin/sshd /usr/sbin/sshd.bak sed -i "s#OpenSSH_$OLD_SSH_VERSION#OpenSSH_$NEW_SSH_VERSION#g" /usr/sbin/sshd sed -i "s#OpenSSH_$OLD_SSH_VERSION#OpenSSH_$NEW_SSH_VERSION#g" /usr/bin/ssh
解释: OLD_SSH_VERSION="${SSH_VERSION_NUMBER}" 老的版本ssh通过ssh -V查看当前版本 OLD_SSHD_VERSION="${SSHD_VERSION_NUMBER}" sshd的老版本,通过sshd -V查看当前版本 NEW_SSH_VERSION="9.8" ssh官网的最新版本,改成成和官网最新的版本即可
执行
bash update-ssh_version_v2.0.sh