openssh升级

这篇博文其实和前两篇是有关联的,只是中间稍微有点时间间隔,今天把我对openssh升级情况做一个简单的回顾,并将具体细节记录如下。

​通过xshell远程连接服务器,用rz命令,上传本地三个安装文件至服务器:

​文件放在了/usr/zlf/目录下

接下来就是看看目前ssh的版本,ssh -V,查看之后,做个记录

因为接下来的安装会用到gcc,所以,下一步要查下服务器是否安装了gcc,直接在光标处输入gcc,根据反馈信息即可判定。如果装了,那就皆大欢喜,直接略过;如果没装,那就要安装了。

————————————————————————————————

安装gcc:

安装之前,我们要知道什么是GCC?

GCC是一个用于linux系统下编程的编译器。是一个用于编程开发的自由编译器。最初,GCC只是一个C语言编译器,它是GNU C Compiler 的英文缩写。随着众多自由开发者的加入和GCC自身的发展,如今的GCC已经是一个包含众多语言的编译器了。其中包括 C,C++,Ada,Object C和Java等。所以,GCC也由原来的GNU C Compiler变为GNU Compiler Collection。也就是 GNU编译器家族的意思。当然,如今的GCC借助于它的特性,具有了交叉编译器的功能,即在一个平台下编译另一个平台的代码。

​怎么安装?

有人说联网装,我的联网装不上,估计是因为​rhel版本造成的问题,因为rhel是收费的

​挂载系统镜像用于安装gcc.

cd到文件中找到对应的安装包,一般在:挂载点 /packages/​下

rpm -ivh glibc-common-2.12-1.132.el6.x86_64.rpm 

rpm -ivh kernel-headers-2.6.32-431.el6.x86_64.rpm

rpm -ivh libgcc-4.4.7-4.el6.x86_64.rpm

rpm -ivh glibc-2.12-1.132.el6.x86_64.rpm

rpm -ivh libgomp-4.4.7-4.el6.x86_64.rpm

rpm -ivh nscd-2.12-1.132.el6.x86_64.rpm

rpm -ivh glibc-headers-2.12-1.132.el6.x86_64.rpm

rpm -ivh glibc-devel-2.12-1.132.el6.x86_64.rpm

rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm

rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm

rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm

rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm

注:以上是安装gcc,请按顺序安装。另外,rpm命令功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是Red Hat Package Manager(简称RPM)。此工具包最先是由Red Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。ivh都是rpm命令的参数,可以从rpm --help里找到说明。 意思是显示安装进度和详细信息

rpm -ivh libstdc++-4.4.5-6.el6.x86_64.rpm

# rpm -ivh libstdc++-devel-4.4.5-6.el6.x86_64.rpm

# rpm -ivh gcc-c++-4.4.5-6.el6.x86_64.rpm

注:以上是安装gcc-c++(在此可以不安装)

————————————————————————————————

安装完gcc之后,我们就要开始安装openssh升级文件了,但是在安装之前,是不是要先卸载了之前的版本呢?

——————————————————————————————————​

​卸载:​

​停止sshd服务

/sbin/service sshd stop

​卸载系统中原有的openssh

#rpm -qa|grep openssh

​#rpm -e openssh --nodeps

#rpm -e openssh-server --nodeps

#rpm -e openssh-clients --nodeps

#rpm -e openssh-askpass

#rpm -qa|grep openssh

查看后已经卸载完成​

——————————————————————————————————​

安装:

——————————————————————————————————

1、解压安装包zlib:

tar -xvf zlib-1.2.8 tar.gz

cd解压后的zlib-1.2.8下

​配置:

./configure

编译安装:

make&make install

2、解压并安装​openssl

tar -zxvf openssl-1.0.2h.tar.gz

cd openssl-1.0.2h

配置:

./config --prefix=/usr/local/ssl shared zlib-dynamic enable-camellia​

​编译:

make depend​

安装:

​make && make install

额外配置必须(为OpenSSH升级做准备)

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

mv /usr/include/openssl /usr/include/openssl.bak  (文件可能不存在,可忽略)

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

ln -s /usr/local/ssl/include/openssl /usr/include/openssl (

ln用于建立硬连接 ln -s 用于建立符号连接(又称软连接))

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

ldconfig -v 

升级成功

openssl version -a

3、解压并安装openssh

tar -zxvf openssh-7.3p1.tar.gz

cd openssh-7.3p1

配置:​

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

编译安装:​

make && make install

——————————————————————————————————​

重启sshd服务:

service sshd restart

提示sshd服务不存在,原因是由于安装完成后,/etc/init.d/内没有sshd文件,需要从openssh-7.3p1/contrib/sshd.init复制到/etc/init.d/下,并命名为sshd

cp openssh-7.3p1/contrib/redhat/sshd.init etc/init.d/sshd​ 复制完成之后

用ssh  -V(此处V为大写)​可查看安装的openssh的版本信息

默认ssh安装之后只能普通用户连接使用,如果需要root权限直接连进来,需要用到下面的命令:

echo " PermitRootLogin yes " >> /etc/ssh/sshd_config && echo " PasswordAuthentication yes " >> /etc/ssh/sshd_config

虽然完成了安装,但是在重启服务器之后,使用ssh仍然存在远程连不上的情况,后来我们就在​/etc/selinux/config中修改了一些参数(将config文件中的SELINUX后设置为disable):

​vi /etc/selinux/config

---SELINUX=disabled

此时尝试远程连接后成功。​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值