openEuler:ssh 管理和安全

ssh 简介

ssh 为 secure shell,是一种网络安全协议,通过加密和认证的方式实现远程安全登录,文件传输等服务。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
但是在近期,OpenSSH 爆出首个远程执行漏洞 CVE-2024-6387 ,这个漏洞允许攻击者在特定条件下绕过身份验证或者执行未被授权的操作

OpenSSH 是一个完整的、开源的 SSH 协议实现工具包

ssh 的三个套件

  1. SSH 服务器(sshd):SSH 服务器程序(sshd)是在远程主机上运行的服务端守护进程。它监听来自 SSH 客户端的连接请求,验证客户端的身份,并建立安全的通信会话。sshd 是 SSH 的核心部分之一
  2. SSH 客户端(ssh):SSH 客户端用于从本地计算机连接到远程服务器。它使用 SSH 协议进行加密通信,确保数据在传输过程中不被截获和篡改
  3. SSH 密钥生成工具(ssh-keygen):ssh-keygen 用于生成公钥/私钥对,增强 SSH 登录的安全性。使用密钥对进行身份验证比传统的密码验证更加安全和方便
    在这里插入图片描述

SSH 服务端配置文件

服务器端配置

SSH 服务器端系统配置文件放于 /etc/ssh 目录下
用户配置文件放于 ~/.ssh 目录下
主要配置文件有 sshd_config

常用参数
  • Port:指定 SSH 服务器监听的端口。默认端口为 22
  • ListenAddress:监听地址,通常设置为 0.0.0.0 以监听所有地址
  • PermitRootLogin:是否允许 root 用户通过 SSH 登录。出于安全考虑,通常禁用 root 远程登录
  • PasswordAuthentication:是否允许使用密码认证。通常在使用基于密钥的认证时禁用密码认证以提高安全性
  • PubkeyAuthentication:是否允许使用公钥认证。通常与 PasswordAuthentication 配合使用,确保只有拥有私钥的用户可以登录

可以使用 sshd -T 查看所有配置信息
在这里插入图片描述

SSH 服务管理

SSH 服务以守护进程(deamon)形式执行,所以我们可以使用 systemctl 来进行管理
常用命令:

# 查看服务状态
systemctl status sshd.service
# 启动服务
systemctl start sshd.service
# 停止服务
systemctl stop sshd.service

具体可以查看openEuler:系统服务的配置和管理这篇文章

SSH 客户端配置及操作

配置文件

默认位置:~/.ssh/config
以下是一个配置文件的基本示例:

Host alias
    HostName remote_host_IP
    User username
    Port port_number
    IdentityFile ~/.ssh/private_key
    Compression yes
    ForwardAgent yes

常用文件传输工具

SSH 是一种强大的网络安全协议,用于远程登录和文件传输。通过配置 SSH 客户端和服务器,可以有效地管理远程访问和数据传输。scpsftp 是两种常用的文件传输工具,各有特点,适用于不同的场景。

scp

scp 命令用于在本地计算机和远程计算机之间安全地复制文件和目录。scp 通过 SSH 协议进行加密传输。
从服务器下载文件到本地测试:
在这里插入图片描述

详细用法参考

sfpt

sftp 是一种交互式文件传输工具,提供比 scp 更丰富的文件操作功能。
启动 SFTP 会话:

sftp username@remotehost

进入交互界面后,我们可以使用 bash 类似的操作指令

  • ls :查看文件
  • cd:切换工作目录
    要方便的传输文件可以使用 getput 指令
    在这里插入图片描述
  • 12
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值