centos6.5离线升级openssh5.3至8.0

目录

1.openssh下载地址

2.安装openssh依赖

3.升级openssh8.0


1.openssh下载地址

https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/openssh-8.0p1.tar.gz

2.安装openssh依赖

由于是内网环境不能连接外网,升级openssh所需的依赖包不能直接yum下载,因此首先我们需要解决安装需要的依赖问题。离线安装依赖包的方式很多,比如挂载映像文件做本地仓库、外网下载rpm包再离线安装等。

这里我们选择rpm安装。在外网环境使用yum命令加上 --downloadnly 参数,将依赖包只下载不安装到本地保存,再上传至内网使用 yum 命令的 localinstall 使用本地rpm包安装,如下:   

# 安装yum-downloadonly,启用--downloadonly
yum -y install yum-downloadonly

# 下载相关依赖包到/opt目录
yum -y install --downloadonly --downloaddir=/opt gcc-c++ openssl-devel pam-devel

# 将所有依赖包转移到内网/opt目录,使用localinstall离线本地安装
yum -y localinstall gcc-c++ openssl-devel pam-devel /opt/*

3.升级openssh8.0

openssh-8.0p1.tar.gz 这个包我也是放在内网的/opt下,升级过程如下:

注意:如果是远程连接服务器,且不方便现场操作服务器的,升级之前建议先安装telnet防止ssh升级失败连接不上,否则会很麻烦。

           下面操作确保上一步没错再执行下一步。

# 升级前确认版本
ssh -V

# 进入/opt
cd /opt/

# 解压并进入openssh目录
tar -xvf openssh-8.0p1.tar.gz && cd openssh-8.0p1

# 先备份原来的ssh目录,否则下面编译会出错
mv /etc/ssh /etc/ssh_bak

# 编译安装
./configure --prefix=/usr/ --sysconfdir=/etc/ssh  --with-zlib --with-md5-passwords --with-pam && make install

# 检查编译是否异常,0正常否则异常
echo $?

# 备份原有目录
mv /etc/init.d/sshd /etc/init.d/sshd_bak
mv /etc/pam.d/sshd /etc/pam.d/sshd.pam_bak

# 将编译好的文件复制到相关目录下并重命名
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

# 设置允许root登录,否则将无法登录
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config

# 查看升级后版本
ssh -V

# 重启sshd 
service sshd restart

# 打开另一个终端测试连接,当前终端不要退出

猜你喜欢

转载自blog.csdn.net/ct_666/article/details/111414113