Centos 6.x 升级openssh版本
一,安装telnet
升级个ssh,为什么要装telnet?因为很多人在管理服务器的时候,用的就是ssh远程连接,升级ssh失败的话连接会断开,所以必须先装个telnet,用telnet登录上去操作。
yum -y install telnet-server.x86_64
各自系统版本不一样可能telnet server叫不同名字,安装前用 yum search 搜一下就知道了。
装好后,更改配置文件,允许telnet远程连接:
vi /etc/xinetd.d/telnet
将disable = yes改为 disable = no,退出保存。
然后启动telnet服务:
service xinetd start
如果有开防火墙,最好先把防火墙关掉:
service iptables stop
chkconfig iptables off
或者:
然后在客户端登录一下试试,这里注意一点,如果想用root用户登录,还要再改一点配置:
vi /etc/securetty
在末尾添加几行:
pts/0
pts/1
pts/2
pts/3
pts/4
...
最好多加几个,因为你也不知道你的telnet连接对应的是几号。
添加好之后重启xinetd服务,就可以用root登录了。
二,升级ssh
注意,从这里开始,就要用刚刚装好的telnet登录来操作了。
先关闭ssh
service sshd stop
然后安装openssl的开发版,编译openssh时需要它:
yum install -y openssl openssl-devel
1
安装好之后,去https://www.openssh.com/portable.html下载openssh安装包,这里要注意,openssh本来是给FreeBSD开发的,所以这里要下载的是它的Portable版本,这个版本才能在linux下安装,这个版本名字里面都带p1。
此次更新下载openssh-7.8p1.tar.gz,然后运行
tar zxvf openssh-7.8p1.tar.gz
cd openssh-7.8p1
接下来,可以参考官方的安装文档:
完整版安装指南:http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/INSTALL
如果没有特殊需求,就是三个命令:
./configure
make
make install
启动sshd服务
service sshd restart
退出再重新登录,运行
ssh -V
可以查看到openssh已经更新为7.8
最后把telnet删掉,把防火墙恢复起来。