• Linux- 使用ssh远程连接


    1. Linux上安装ssh

    如果在Linux系统上运行sudo service ssh status提示Unit ssh.service could not be found.,这意味着SSH服务没有安装或者它可能在系统上有一个不同的服务名称。

    下面,我们来介绍ssh的安装步骤:

    1. 安装SSH服务:

      在不同的Linux发行版上,安装命令会有所不同:

      • Debian/Ubuntu:

        sudo apt update
        sudo apt install openssh-server
        
        • 1
        • 2
      • Red Hat/CentOS/Fedora:

        sudo yum install openssh-server
        
        • 1
      • Arch Linux:

        sudo pacman -S openssh
        
        • 1
    2. 启动SSH服务:

      安装后,需要启动SSH服务。

      sudo service ssh start
      
      • 1

      或者对于systemd系统:

      sudo systemctl start sshd
      
      • 1
    3. 设置SSH服务在启动时自动运行:

      如果希望SSH服务在系统启动时自动运行,可以执行:

      sudo systemctl enable sshd
      
      • 1
    4. 再次检查SSH服务的状态:

      现在,可以检查SSH服务的状态,看看它是否正在运行:

      sudo service ssh status
      
      • 1

      或者对于systemd系统:

      sudo systemctl status sshd
      
      • 1

    按照上述步骤,应该能够在Linux机器上安装、启动并运行SSH服务。

    2. 使用ssh远程连接服务器

    在已经在目标机器上安装了SSH服务之后,可以从另一台机器进行连接。在默认的设置中,应该可以使用密码身份验证来连接,但是,使用SSH公钥身份验证通常更为安全和方便。

    以下是如何连接及如何设置公钥身份验证的基本步骤:

    1. 使用密码连接:
    在默认配置下,可以使用以下命令来连接:

    ssh username@target_ip_address
    
    • 1

    会被提示输入密码。输入目标机器上相应用户的密码后,应该能够成功连接。

    2. 设置公钥身份验证:

    公钥身份验证允许我们无需每次输入密码即可连接。

    1. 在本地机器上生成一个SSH密钥对 (如果还没有的话):
    ssh-keygen
    
    • 1

    这会在~/.ssh目录下生成id_rsa (私钥) 和 id_rsa.pub (公钥)。

    1. 将公钥传输到目标机器
    ssh-copy-id username@target_ip_address
    
    • 1

    此命令会自动将公钥(~/.ssh/id_rsa.pub)复制到目标机器的~/.ssh/authorized_keys文件中。

    1. 连接到目标机器
    ssh username@target_ip_address
    
    • 1

    由于已经设置了公钥身份验证,应该可以在不输入密码的情况下直接连接。

    1. [可选] 禁用密码身份验证增加安全性
      如果只想通过SSH公钥身份验证来连接,可以在目标机器的/etc/ssh/sshd_config文件中进行以下修改:
    PasswordAuthentication no
    
    • 1

    然后,重启SSH服务:

    sudo service ssh restart
    
    • 1

    sudo systemctl restart sshd
    
    • 1

    通过使用公钥身份验证,不仅可以提高安全性,还可以更方便地连接,尤其是当我们需要经常连接或进行自动化任务时。

  • 相关阅读:
    Linux:文件权限管理小案例1:警察和土匪游戏
    JimuReport积木报表 v1.6.2 版本正式发布—开源免费的低代码报表
    Ansible的命令及常用模块详解
    上周热点回顾(5.8-5.14)
    Zookeeper的介绍与集群搭建
    Maven环境搭建
    十进制小数 与 二进制小数 互转
    Java版分布式微服务云开发架构 Spring Cloud+Spring Boot+Mybatis 电子招标采购系统功能清单
    react-antD 下拉框组件使用出现的问题(antd版本问题)-menus
    nginx配置多个服务域名
  • 原文地址:https://blog.csdn.net/weixin_43844521/article/details/133715895