zoukankan      html  css  js  c++  java
  • Linux升级openssh过程

    Linux升级openssh过程

    之前由于有需要升级到openssh,现在整理下。

    1.先安装telnet-server,防止升级openssh过程中出现意外再也无法使用ssh远程。

    参考:Linux配置telnet远程登入

    2.升级openssl。

    参考:Linux升级openssl版本

    3.升级openssh过程。

    下文详解。

    4.确定没问题后禁用telnet-server等服务。

    openssh升级

    官网下载:http://www.openssh.com/       点左下角的链接下载:For other systems:Linux

    安装依赖包:

    前边升级openssl已经安装过了。

    yum install  -y gcc gcc-c++ glibc make autoconf pcre-devel  pam-devel automake makedepend perl-Test-Simple perl zlib zlib-devel

      

    备份openssh:

    mv /usr/bin/ssh /usr/bin/ssh.bak
    mv /usr/sbin/sshd /usr/sbin/sshd.bak
    mv /etc/ssh /etc/ssh.bak
    
    [root@dm8 ~]# ssh -V
    OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017
    [root@dm8 ~]# mv /usr/bin/ssh /usr/bin/ssh.bak
    [root@dm8 ~]# mv /usr/sbin/sshd /usr/sbin/sshd.bak
    [root@dm8 ~]# mv /etc/ssh /etc/ssh.bak

      

    解压编译和安装:

    tar -zxvf openssh-8.7p1.tar.gz
    cd openssh-8.7p1
    ./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam --with-ssl-engine
    make
    make install
    echo $?
    ssh -V
    vi /etc/ssh/sshd_config
        添加或修改:
        PermitRootLogin yes
        PasswordAuthentication yes
        UseDNS no
    cp -a ./contrib/redhat/sshd.init /etc/init.d/sshd
    cp -a ./contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
    systemctl stop sshd.service   ##不会影响已经连接的会话
    mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak
    systemctl daemon-reload
    /etc/init.d/sshd start
    cp /run/systemd/generator.late/sshd.service  /usr/lib/systemd/system/sshd.service
    systemctl daemon-reload
    systemctl restart sshd
    systemctl status sshd
    systemctl enable sshd
    
    
    [root@dm8 soft]# tar -zxvf openssh-8.7p1.tar.gz
    [root@dm8 soft]# cd openssh-8.7p1
    [root@dm8 openssh-8.7p1]# ./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam --with-ssl-engine
    [root@dm8 openssh-8.7p1]# make
    [root@dm8 openssh-8.7p1]# make install
    [root@dm8 openssh-8.7p1]# echo $?
    [root@dm8 openssh-8.7p1]# ssh -V
    OpenSSH_8.7p1, OpenSSL 1.1.1k  25 Mar 2021
    [root@dm8 openssh-8.7p1]# vi /etc/ssh/sshd_config
      添加或修改:
      PermitRootLogin yes
      PasswordAuthentication yes
      UseDNS no
    [root@dm8 openssh-8.7p1]# cp -a ./contrib/redhat/sshd.init /etc/init.d/sshd
    [root@dm8 openssh-8.7p1]# cp -a ./contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
    [root@dm8 openssh-8.7p1]# systemctl stop sshd.service
    [root@dm8 openssh-8.7p1]# mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak 
    [root@dm8 openssh-8.7p1]# systemctl daemon-reload
    [root@dm8 openssh-8.7p1]# /etc/init.d/sshd start 
    [root@dm8 openssh-8.7p1]# cp /run/systemd/generator.late/sshd.service /usr/lib/systemd/system/sshd.service 
    [root@dm8 openssh-8.7p1]# systemctl daemon-reload 
    [root@dm8 openssh-8.7p1]# systemctl restart sshd 
    [root@dm8 openssh-8.7p1]# systemctl status sshd 
    [root@dm8 openssh-8.7p1]# systemctl enable sshd

    注意:cp -a ./contrib/redhat/sshd.init /etc/init.d/sshd这条指令运行后同时会产生/etc/rc.d/init.d/sshd文件,实际这个是同一个文件。

    若正常升级,则停止telnet服务并移除。

    systemctl stop telnet.socket
    systemctl stop xinetd
    systemctl disable xinetd 
    systemctl disable telnet.socket

      

    参考链接:

    https://www.cnblogs.com/wangyang0210/p/12552040.html

    https://blog.csdn.net/f4112cd/article/details/111151709

    http://www.jinbuguo.com/openssh/openssh_install.html

    https://www.cnblogs.com/ocp-100/p/10677387.html

  • 相关阅读:
    Swoole 学习笔记 03
    MySQL 索引概念
    MySQL使用存储过程创建百万级别测试数据
    MySQL 慢日志查询的设置
    Hyper中的 Request和Response
    PHPStorm deployment 工具的使用
    Hyperf 命令行
    Hyperf 事件机制
    Hyperf jsonrpc 服务的搭建
    PHPstorm的使用
  • 原文地址:https://www.cnblogs.com/PiscesCanon/p/15175910.html
Copyright © 2011-2022 走看看