centos7离线升级openssh,漏洞修复

centos7离线升级openssh,漏洞修复

1. 安装telnet

yum -y install xinetd telnet-server

配置/etc/xinetd.d/telnet

cat > /etc/xinetd.d/telnet <<EOF

service telnet

{

disable = yes

flags = REUSE

socket_type = stream

wait = no

user = root

server = /usr/sbin/in.telnetd

log_on_failure += USERID

}

EOF

配置telnet登录的终端类型

cat >> /etc/securetty <<EOF

pts/0

pts/1

pts/2

pts/3

EOF

启动telnet

systemctl enable xinetd –now

systemctl enable telnet.socket –now

2. 下载安装包

wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz

wget https://www.openssl.org/source/openssl-1.1.1j.tar.gz –no-check-certificate

wget http://www.zlib.net/zlib-1.2.12.tar.gz

3. 安装zlib

tar -zxvf zlib-1.2.12.tar.gz

cd zlib-1.2.12

./configure –prefix=/usr/local/zlib

make && make install

4. 安装openssl

tar -zxvf openssl-1.1.1j.tar.gz

cd openssl-1.1.1j

./config –prefix=/usr/local/ssl -d shared

make && make install

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

ldconfig -v

openssl version -a

5. 安装openssh

tar -zxvf openssh-8.8p1.tar.gz

cd openssh-8.8p1

./configure –prefix=/usr/local/openssh –with-zlib=/usr/local/zlib –with-ssl-dir=/usr/local/ssl

make && make install

配置文件备份和修改

#sshd_config文件修改

echo ‘PermitRootLogin yes’ >>/usr/local/openssh/etc/sshd_config

echo ‘PubkeyAuthentication yes’ >>/usr/local/openssh/etc/sshd_config

echo ‘PasswordAuthentication yes’ >>/usr/local/openssh/etc/sshd_config

# 备份原有文件,并将新的配置复制到指定目录

mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config

mv /usr/sbin/sshd /usr/sbin/sshd.bak

cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd

mv /usr/bin/ssh /usr/bin/ssh.bak

cp /usr/local/openssh/bin/ssh /usr/bin/ssh

mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak

cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen

mv /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak

cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

# 修改systemd参数(去掉Type或改为Type=simple)

vim /usr/lib/systemd/system/sshd.service

[Unit]

Description=OpenSSH server daemon

Documentation=man:sshd(8) man:sshd_config(5)

After=network.target sshd-keygen.service

Wants=sshd-keygen.service

[Service]

#Type=notify

Type=simple

EnvironmentFile=/etc/sysconfig/sshd

ExecStart=/usr/sbin/sshd -D $OPTIONS

ExecReload=/bin/kill -HUP $MAINPID

KillMode=process

Restart=on-failure

RestartSec=42s

[Install]

WantedBy=multi-user.target

重启sshd服务

systemctl daemon-reload

systemctl restart sshd

systemctl status sshd

# 验证是否升级成功

ssh -V

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
上一篇 2022年7月12日 15:26
下一篇 2022年7月12日 15:26

相关推荐

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息