RedHat7或CentOS7升级OpenSSL、OpenSSH

RedHat7或CentOS7升级OpenSSL、OpenSSH

  • 为什么要升级OpenSSH
  • 准备工作
  • 安装telnet
  • 更改配置
  • 使用telnet登陆
  • 开始升级
    • 用Xshell登陆 模式更改为ssh,确定能正常登陆后执行以下步骤。
  • 关闭Telnet 及善后
  • 到此OpenSSH就升级成功了,有什么问题的小伙伴欢迎来问,感谢评论、打赏!!!!

为什么要升级OpenSSH

在企业级应用开发中,服务器是必不可少硬件设施,而Linux是大多数企业服务器应用系统,OpenSSH是SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。
OpenSSH在每次版本更新后都会暴露出旧版本的一些漏洞,一些不法分子就会利用这些漏洞攻击服务器造成不必要的损失,所以升级OpenSSH是很有必要切必须要做的一件事!!!!!!

准备工作

查看系统是否已安装telnet

1.命令: rpm -qa | grep telnet
telnet-0.17-48.el6.x86_64
telnet-server-0.17-48.el6.x86_64

telnet 是挂在 xinetd 底下的,所以同时查看是否安装了xinetd服务

2.命令: rpm -qa | grep xinetd
xinetd-2.3.14-39.el6_4.x86_64

安装telnet

1.rpm -ivh xinetd-2.3.14-29.el6.x86_64.rpm
2.rpm -ivh telnet-0.17-47.el6_3.1.x86_64.rpm
3.rpm -ivh telnet-server-0.17-47.el6_3.1.x86_64.rpm

更改配置

1.设置开机启动
命令:chkconfig telnet on

2.编辑 telnet 文件
命令:vim /etc/xinetd.d/telnet
找到 disable = yes ,将 yes 改成 no
改完后保存,启动服务
命令:service xinetd restart

3.编辑/etc/pam.d/login
命令:vim /etc/pam.d/login
注释掉如下内容:“#auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so”
注释后保存

4.编辑/etc/securetty
命令:vim /etc/securetty
添加:
pts/1
pts/2
pts/3
pts/4
pts/5
添加后保存

5.iptables防火墙会阻止telnet,所以需要在iptables允许,用如下命令
查看防火墙状态:service iptables status
当你启动telnet服务后,你可以用netstat -tunlp命令来查看telnet服务所使用的端口,可以发现有23。使用下面命令开启这些端口:
iptables -I INPUT -p tcp --dport 23 -jACCEPT
iptables -I INPUT -p udp --dport 23 -jACCEPT
service iptables save //保存
service iptables restart //重启防火墙
或者来点狠的!!关闭防火墙!
service iptables stop

使用telnet登陆

1.Xshell登陆 模式更改为telnet

开始升级

1.查看系统当前软件版本
命令:ssh -V

2.升级OpenSSL

(1)备份
命令:mv /usr/lib64/openssl /usr/lib64/openssl.old
命令:mv /usr/bin/openssl /usr/bin/openssl.old
命令:mv /etc/pki/ca-trust/extracted/openssl /etc/pki/ca-trust/extracted/openssl.old
命令:cp /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.10.old
命令:cp /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.10.old

(2)卸载当前openssl
命令:rpm -qa | grep openssl(查找版本)
命令:rpm -e --nodeps openssl-?(?号以查找到的版本为准)ssh

(3)解压openssl源码并编译安装
命令:tar -zxvf openssl-?(?以预安装的版本为准)
命令:cd openssl-?(?以预安装的版本为准)
命令:./config --prefix=/usr --openssldir=/etc/ssl --shared zlib
命令:make
命令:make test
命令:make install
命令:openssl version -a

2.升级OpenSSH

(1)备份当前openssh
命令:mv /etc/ssh /etc/ssh.old

(2)卸载当前openssh
命令:rpm -qa | grep openssh(查找版本,注:删除所有查到的openssh)
命令:rpm -e --nodeps openssh-server-?(?号以查找到的版本为准)
命令:rpm -e --nodeps openssh-clients-?(?号以查找到的版本为准)

(3)解压openssh_?源码并编译安装(?以预安装的版本为准)
命令:tar -zxvf openssh-?(?以预安装的版本为准)
命令:cd openssh?(?以预安装的版本为准)
命令:./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-openssl-includes=/usr --with-privsep-path=/var/lib/sshd
命令:make
命令:make install

(4) openssh安装后环境配置
命令:install -v -m755 contrib/ssh-copy-id /usr/bin
命令:install -v -m644 contrib/ssh-copy-id.1 /usr/share/man/man1
命令:install -v -m755 -d /usr/share/doc/openssh
命令:install -v -m644 INSTALL LICENCE OVERVIEW README* /usr/share/doc/openssh*
命令:ssh -V #验证是否升级成功

(5)启⽤OpenSSH服务
在openssh编译⽬录执⾏如下⽬录
命令:echo ‘X11Forwarding yes’ >> /etc/ssh/sshd_config
命令:echo “PermitRootLogin yes” >> /etc/ssh/sshd_config
命令:cp -p contrib/redhat/sshd.init /etc/init.d/sshd
命令:chmod +x /etc/init.d/sshd
命令:chkconfig --add sshd
命令:chkconfig sshd on
命令:chkconfig --list sshd
命令:service sshd restart

用Xshell登陆 模式更改为ssh,确定能正常登陆后执行以下步骤。

关闭Telnet 及善后

编辑/etc/pam.d/login
命令:vim /etc/pam.d/login
放开注释掉的内容:“auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so”

命令:chkconfig telnet off #关闭telnet的开机启动
命令:chkconfig xinetd off #关闭xinetd的开机启动
命令:service xinetd stop #关闭xinetd服务

到此OpenSSH就升级成功了,有什么问题的小伙伴欢迎来问,感谢评论、打赏!!!!

你可能感兴趣的:(RedHat7或CentOS7升级OpenSSL、OpenSSH)