logo NodeSeekbeta

手动更新OpenSSH(规避远程代码执行漏洞CVE-2024-6387)

12
  • @芷理 #4

    是不是debian 12 apt update && apt upgrade 就行了?
    ssh -V
    查到版本是OpenSSH_9.2p1 Debian-2+deb12u3

  • 感谢分享,我也发一下我用的,参考了楼主的。

    运行大概需要1-3分钟。运行完成会显示9.8p的SSH版本。

    这是一条命令,不要分开输入,整体复制后,丢进SSH就行。

    sudo apt-get -y update && \
    sudo apt-get install -y build-essential zlib1g-dev libssl-dev && \
    wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz && \
    tar -xzf openssh-9.8p1.tar.gz && \
    cd openssh-9.8p1 && \
    ./configure && \
    make && \
    sudo make install && \
    sudo systemctl restart ssh && \
    echo 'export PATH=/usr/local/bin:/usr/local/sbin:$PATH' >> ~/.bashrc && \
    source ~/.bashrc && \
    ssh -V
    
    
  • @-- #12
    你这个还有问题,你运行

    ps -ef | grep sshd
    

    你会发现使用的还是旧版本的路径ssh,还要修改服务启用新的ssh路径

  • @heian9119 #13

    感谢提醒。是需要在下面这样操作吗

    sudo sed -i 's|ExecStartPre=/usr/sbin/sshd|ExecStartPre=/usr/local/sbin/sshd|; s|ExecStart=/usr/sbin/sshd|ExecStart=/usr/local/sbin/sshd|; s|ExecReload=/usr/sbin/sshd|ExecReload=/usr/local/sbin/sshd|' /lib/systemd/system/ssh.service
    确认修改内容:

    grep -E 'ExecStartPre|ExecStart|ExecReload' /lib/systemd/system/ssh.service
    重新加载服务:

    sudo systemctl daemon-reload
    sudo systemctl restart sshd
    列出正在运行的SSH进程(确认是否是 /usr/local/sbin/sshd)

    ps -ef | grep sshd

  • @-- #14
    需要额,因为不执行,其实后台还在运行旧版的SSH

  • @heian9119 #15
    好的,感谢。

    sudo sed -i 's|ExecStartPre=/usr/sbin/sshd|ExecStartPre=/usr/local/sbin/sshd|; s|ExecStart=/usr/sbin/sshd|ExecStart=/usr/local/sbin/sshd|; s|ExecReload=/usr/sbin/sshd|ExecReload=/usr/local/sbin/sshd|' /lib/systemd/system/ssh.service && \
    grep -E 'ExecStartPre|ExecStart|ExecReload' /lib/systemd/system/ssh.service && \
    sudo systemctl daemon-reload && \
    sudo systemctl restart sshd && \
    ps -ef | grep sshd
    
    
  • openwrt 咋更新哟

12

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72787位seeker

🎉欢迎新用户🎉