龙空技术网

CentOS 7升级OpenSSH

运维开发战斗经验分享 1298

前言:

眼前小伙伴们对“centos打开telnet服务”大概比较关切,同学们都需要了解一些“centos打开telnet服务”的相关内容。那么小编同时在网上收集了一些有关“centos打开telnet服务””的相关知识,希望兄弟们能喜欢,我们快快来了解一下吧!

导读

为什么需要升级OpenSSH?

OpenSSH 7.4以下版本存在严重漏洞:

OpenSSH 远程权限提升漏洞(CVE-2016-10010)OpenSSH J-PAKE授权问题漏洞(CVE-2010-4478)Openssh MaxAuthTries限制绕过漏洞(CVE-2015-5600)若当前的OpenSSL>=1.0.1可以不用升级OpenSSL升级方式本次我们选择升级到openssh-8.1p1整个的升级操作是server和client都要升级本次升级的方式采用编译安装升级准备

1.准备编译环境

yum install pam-devel zlib-devel openssl openssl-devel wget gcc -y

2.升级过程中,SSH服务不可用,因此需要安装及配置telnet

yum -y install telnet-server* telnet

3.配置telnet server服务

#允许root用户通过telnet登录mv /etc/securetty /etc/securetty.old #启动telnet服务 systemctl start telnet.socket#使telnet服务开机启动,防止意外重启systemctl enable telnet.socket

4.服务器防火墙开放23端口

5.测试telnet能否正常登入系统

telnet xxx.xxx.xxx.xxx
开始安装

1.下载源码软件包

wget 

2.解压源码包并执行编译安装

#解压源码包tar zxvf openssh-8.1p1.tar.gzcd openssh-8.1p1#开始编译安装./configuremakemake install

安装完毕之后sshd将会安装到/usr/local/sbin/目录下。而ssh、ssh-keygen等命令都会安装到/usr/local/bin目录下。

操作系统的PATH路径是优先选择/usr/local/的,所以普通命令都可以使用到最新的,但是server端的sshd我们还需要做额外的配置。

3.修改sshd启动脚本

#/usr/lib/systemd/system/sshd-keygen.service将ExecStart=/usr/sbin/sshd-keygen替换为:ExecStart=/usr/local/bin/sshd-keygen#/usr/lib/systemd/system/sshd.service将ExecStart=/usr/sbin/sshd $OPTIONS替换为:ExecStart=/usr/local/sbin/sshd $OPTIONS#/usr/lib/systemd/system/sshd@.service将ExecStart=-/usr/sbin/sshd -i $OPTIONS替换为:ExecStart=-/usr/local/sbin/sshd -i $OPTIONSka

快速替换脚本:

sed -i 's?ExecStart=/usr/sbin/sshd-keygen $OPTIONS?ExecStart=/usr/local/sbin/sshd-keygen $OPTIONS?g' /usr/lib/systemd/system/sshd-keygen.servicesed -i 's?ExecStart=/usr/sbin/sshd $OPTIONS?ExecStart=/usr/local/sbin/sshd $OPTIONS?g' /usr/lib/systemd/system/sshd-keygen.servicesed -i 's?ExecStart=/usr/sbin/sshd $OPTIONS?ExecStart=/usr/local/sbin/sshd $OPTIONS?g' /usr/lib/systemd/system/sshd@.service
安装完成

安装完成后,重启SSH相关服务即可

标签: #centos打开telnet服务 #centos7端口23