openssh的安装需要依赖zlib和openssl,我们系统本身有不需要在下载
安装包准备
openssl-1.0.2o.tar.gz
openssh-7.6.tar.gz
2.查看系统当前安装的版本
# ssh -V
# rpm -qa zlib
# 备份当前的openssl
cp -R /usr/lib64/openssl /usr/lib64/openssl.old
cp -R /usr/bin/openssl /usr/bin/openssl.old
cp -R /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old
#如下两个库文件必须先备份,因系统内部分工具(如yum、wget等)依赖此库,而新版OpenSSL不包含这两个库
cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old
cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old
# 卸载openssl
rpm -qa |grep openssl|xargs -i rpm -e --nodeps {}
# 安装openssl
tar -zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
# 必须加上--shared,否则编译时会因找不到新安装的openssl的类库而报错
./config --prefix=/usr/local/ssl --openssldir=/etc/ssl --shared zlib
make&&make
# 恢复共享库
mv /usr/lib64/libcrypto.so.10.old /usr/lib64/libcrypto.so.10
mv /usr/lib64/libssl.so.10.old /usr/lib64/libssl.so.10
在/etc/ld.so.conf文件的最后面,添加如下内容:
/usr/local/ssl/lib
重新加载ldconfig
11添加OPESSL的环境变量:
在etc/的profile的最后一行,添加:
export OPENSSL=/usr/local/ssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
12退出命令界面,再从新登录。
以上OPENSSL就安装完毕,下面进行一些检查。
依次如下执行:
# cd /usr/local
# ldd /usr/local/openssl/bin/openssl
#ldconfig–v 刷新一下系统所有的配置文件
15查看路径
...]# which openssl
/usr/local/openssl/bin/openssl
16查看版本重新登录终端
...]# openssl version
openssh_7.4p1源码安装
# 备份当前openssh
# mv /etc/ssh /etc/ssh.old
# 卸载当前openssh
# 查看已安装的openssh
# rpm -qa | grep openssh
# 删除
# rpm -qa |grep openssh|xargs -i rpm -e --nodeps {}
# openssh安装前环境配置 (要保证这里的命令都能执行正确)
# tar -zxvf openssh-7.4p1.tar.gz
# cd openssh-7.4p1
# 关联的检查配置项要特别注意
# ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --mandir=/usr/share/man --with-zlib=/usr/local/zlib设置安装路径、系统设置路径、ssl路径、zlib路径、man路径,然后检测环境,无报错进行编译安装
# make
# make install
(拷贝redhat版本的配置文件)
chmod u+x /etc/init.d/sshd
chkconfig --add sshd 开启sshd服务
cp /etc/ssh/sshd_config /etc/ssh/sshd_config(copy) 备份一下sshd设置文件
#cp /opt/sshd_config /etc/ssh/sshd_config 提示是否覆盖,
#cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd 拷贝sshd
#cp /usr/local/openssh/bin/ssh /usr/bin/ssh拷贝ssh
#cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen拷贝ssh-keygen
#service sshd restart
ssh -V
安装包准备
openssl-1.0.2o.tar.gz
openssh-7.6.tar.gz
2.查看系统当前安装的版本
# ssh -V
# rpm -qa zlib
openssh升级过程中需要删除openssh,为了保证主机不失联,需要将准备得软件包考到主机 通过vmware连接
升级openssl# 备份当前的openssl
cp -R /usr/lib64/openssl /usr/lib64/openssl.old
cp -R /usr/bin/openssl /usr/bin/openssl.old
cp -R /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old
#如下两个库文件必须先备份,因系统内部分工具(如yum、wget等)依赖此库,而新版OpenSSL不包含这两个库
cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old
cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old
# 卸载openssl
rpm -qa |grep openssl|xargs -i rpm -e --nodeps {}
# 安装openssl
tar -zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
# 必须加上--shared,否则编译时会因找不到新安装的openssl的类库而报错
./config --prefix=/usr/local/ssl --openssldir=/etc/ssl --shared zlib
make&&make
# 恢复共享库
mv /usr/lib64/libcrypto.so.10.old /usr/lib64/libcrypto.so.10
mv /usr/lib64/libssl.so.10.old /usr/lib64/libssl.so.10
在/etc/ld.so.conf文件的最后面,添加如下内容:
/usr/local/ssl/lib
重新加载ldconfig
11添加OPESSL的环境变量:
在etc/的profile的最后一行,添加:
export OPENSSL=/usr/local/ssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin
12退出命令界面,再从新登录。
以上OPENSSL就安装完毕,下面进行一些检查。
依次如下执行:
# cd /usr/local
# ldd /usr/local/openssl/bin/openssl
#ldconfig–v 刷新一下系统所有的配置文件
15查看路径
...]# which openssl
/usr/local/openssl/bin/openssl
16查看版本重新登录终端
...]# openssl version
openssh_7.4p1源码安装
# 备份当前openssh
# mv /etc/ssh /etc/ssh.old
# 卸载当前openssh
# 查看已安装的openssh
# rpm -qa | grep openssh
# 删除
# rpm -qa |grep openssh|xargs -i rpm -e --nodeps {}
# openssh安装前环境配置 (要保证这里的命令都能执行正确)
# tar -zxvf openssh-7.4p1.tar.gz
# cd openssh-7.4p1
# 关联的检查配置项要特别注意
# ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --mandir=/usr/share/man --with-zlib=/usr/local/zlib设置安装路径、系统设置路径、ssl路径、zlib路径、man路径,然后检测环境,无报错进行编译安装
# make
# make install
(拷贝redhat版本的配置文件)
chmod u+x /etc/init.d/sshd
chkconfig --add sshd 开启sshd服务
cp /etc/ssh/sshd_config /etc/ssh/sshd_config(copy) 备份一下sshd设置文件
#cp /opt/sshd_config /etc/ssh/sshd_config 提示是否覆盖,
#cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd 拷贝sshd
#cp /usr/local/openssh/bin/ssh /usr/bin/ssh拷贝ssh
#cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen拷贝ssh-keygen
#service sshd restart
ssh -V