侧边栏壁纸
博主头像
zyixin

当你觉得为时已晚的时候,恰恰是最早的时候

  • 累计撰写 64 篇文章
  • 累计创建 0 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

openssh 和 openssl升级

zyixin
2020-04-23 / 0 评论 / 0 点赞 / 1,713 阅读 / 868 字
温馨提示:
本文最后更新于 2022-07-01,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

环境检查

检查Linux版本信息
cat /etc/redhat-release

检查Telnet服务是否安装,如没有安装,需准备操作系统ISO介质文件进行安装。
rpm -qa | grep telnet-server
telnet

介质准备

Open SSH官方网站安装包下载:
登录http://www.openssh.com/portable.html,下载最新版open ssh安装包

安装telnet服务

安装Telnet服务,防止ssh更新时网络断开无法连接:
安装telnet-server
yum -y install telnet-server

安装xinetd

yum -y install xinetd

配置telnet

注:如果下面telnet文件不存在的话新建一个(如存在的话更改disable=yes)

[root@zyixin ~]$ vi /etc/xinetd.d/telnet

# default: on
# description: The telnet server serves telnet sessions; it uses
#   unencrypted username/password pairs for authentication.
service telnet
{
    disable = yes
    flags       = REUSE
    socket_type = stream
    wait        = no
    user        = root
    server      = /usr/sbin/in.telnetd
    log_on_failure  += USERID
}

配置telnet登录的终端类型,在/etc/securetty文件末尾增加一些pts终端,如下

[root@zyixin ~]$ vim /etc/securetty
pts/0
pts/1
pts/2
pts/3

(注:/etc/securetty文件默认没有写入权限,需要修改权限 chmod 700 /etc/securetty)

关闭防火墙

systemctl status firewalld.service
systemctl stop firewalld.service
systemctl disable telnet.socket

启动服务

启动telnet服务
systemctl start telnet.socket

查看服务状态
systemctl status telnet.socket

查看侦听端口
ss -tnlp | grep 23

安装完成后,将xinetd服务加入开机自启动:
systemctl enable xinetd.service

将telnet服务加入开机自启动:
systemctl enable telnet.socket

Telnet 远程登录测试

telnet IP地址

实施步骤

部署配置Open SSL安装包

安装openssl 依赖包

yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel  pam-devel

备份openssl文件

mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/lib64/openssl /usr/lib64/openssl.old
mv /usr/lib64/libssl.so /usr/lib64/libssl.so.old

解压openssl包

上传openssl软件包到home/setup目录下

cd /home/setup/
tar -zxvf openssl-1.1.1.tar.gz

安装openssl

cd openssl-1.1.1
./config --prefix=/usr/local/openssl && make && make install
编译完成可以echo $?命令看是否有编译错误

配置SSL

设置openssl命令的软链接

ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so

echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
ldconfig -v

验证是否安装成功

openssl version -a >>/tmp/ssh.log

验证ssl 最新版本OpenSSL 1.1.1

openssl version

openssl-version

部署配置Open SSH安装包

解压openssh包

上传openssh软件包到/home/setup目录下

cd /home/setup
tar -zxvf openssh-8.1p1.tar.gz

安装依赖包

yum install -y pam* zlib*

删除原ssh信息 或者 备份ssh信息

如删除:rm -rf /etc/ssh/*
如备份:mv /etc/ssh /etc/ssh_bak
mkdir /etc/ssh
chmod 755 /etc/ssh

配置openssh

cd openssh-8.1p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-md5-passwords --mandir=/usr/share/man --with-pam=enable && make && make install

编译完成可以echo $?命令看是否有编译错误

echo $?

SSH参数配置

修改配置文件最终为如下内容,其他的不要动

cp -p /home/setup/openssh-8.1p1/contrib/redhat/sshd.init /etc/init.d/sshd
cp -p /home/setup/openssh-8.1p1/contrib/redhat/sshd.pam /etc/pam.d/sshd.pam

sed -i "s/#PermitRootLogin prohibit-password/PermitRootLogin yes/g" /etc/ssh/sshd_config

sed -i "s/#UsePAM no/UsePAM yes/g" /etc/ssh/sshd_config

echo 'X11Forwarding yes' >> /etc/ssh/sshd_config

grep "^PermitRootLogin"  /etc/ssh/sshd_config
grep  "UsePAM"  /etc/ssh/sshd_config


chmod +x /etc/init.d/sshd
chkconfig --add sshd
chkconfig sshd on
chkconfig --list sshd

重启SSH服务

systemctl restart sshd

验证测试

ssh -V

0

评论区