Linux远程管理—SSH协议

SSH协议是远程连接的安全性协议,该协议可以有效防止远程管理过程中的信息泄漏,是西安传输数据加密,能够防止DNS和IP欺骗,传输数据压缩,加快传输速度。

安全验证方法有口令验证和密钥验证两种实现手段,该协议在Linux和Mac系统中内置,Windows则需要手动安装。

连接方法

使用ssh 用户名@IP地址的方式进行远程连接,示例如下图:
ssh远程连接
连接命令后可加指令,获得返回结果,完成后自动断开连接;-p端口号通过指定端口远程连接。

远程文件管理

通过scp工具实现,scp -r递归复制 -p保留文件属性 本地目录 用户名@IP:目的地址将本地文件复制到远程主机上,scp -r递归复制 -p保留文件属性 用户名@IP:目的地址 本地目录 将远程主机文件复制到本地。

ssh自带了sftp功能,建立连接后可通过getput方法传输文件,示例如下图:
sftp获取文件

配置文件

ssh协议的配置文件存储在/etc/ssh/sshd_config文件中,其中大部分设置默认为注释状态,需要手动配置,一些常用设置如下:

Port 22								默认的sshd服务端口
ListenAddress 0.0.0.0				设定sshd服务器监听的IP地址
Protocol 2							SSH协议的版本号
HostKey /etc/ssh/ssh_host_key		SSH协议版本为1时,DES私钥存放的位置
HostKey /etc/ssh/ssh_host_rsa_key	SSH协议版本为2时,RSA私钥存放的位置
HostKey /etc/ssh/ssh_host_dsa_key	SSH协议版本为2时,DSA私钥存放的位置
PermitRootLogin yes					设定是否允许root管理员直接登录
StrictModes yes						当远程用户的私钥改变时直接拒绝连接
MaxAuthTries 6						最大密码尝试次数
MaxSessions 10						最大终端数
PasswordAuthentication yes			是否允许密码验证
PermitEmptyPasswords no				是否允许空密码登录(很不安全)
PubkeyAuthentication				是否允许密钥登录

密钥验证

基于非对称加密理论,采取公钥加密私钥解密的方式进行验证,我们首先需要生成密钥对,通过ssh-keygen命令即可实现,然后使用ssh-copy-id 目的地址命令,将公钥发送给远程主机,
创建并发送密钥
然后将远程主机配置文件中允许密钥登录设置为yes,并将密码登录设置为no,然后使用主机直接连接,可见如下提示:
密钥登录成果
并没有输入密码而直接登录成果。

我们使用的远程管理工具mobaxterm中同样可以设置密钥登录,在工具中的密钥生成器可以生成密钥,如下图:
密钥生成器
该密钥生成借助鼠标移动作为随机参数,增大安全性,但安装不要傻等,得没事动动鼠标。

随后就获得了密钥对:
获得密钥对
随后手动在.ssh目录下新建authorized_keys文件,并将密钥复制到其中,然后在会话的高级工具中选择使用私钥进行连接
选择私钥选项

总结

ssh是用于安全远程连接的协议,借助该协议可以实现远程操作和文件传输功能,安全验证有口令和密钥两种手段。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/878113.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

线上剧本杀小程序,线上游戏新体验

剧本杀作为当下热门的社交型游戏方式,成为了大众社交娱乐的选择,为大众带来新的游戏体验。在数字化发展时期,线上剧本杀为大众带来了新鲜的游戏体验,它打破了时间空间限制,让玩家在手机上体验虚拟游戏,通过…

Python的可选导入 optional import

Python的可选导入:提升代码可读性与简洁性的利器 在Python编程中,我们常常会使用到各种库和模块。为了方便使用这些库和模块,我们需要通过导入语句将其引入到我们的程序中。然而,随着项目规模的增大,导入语句可能会变…

Oracle发邮件时SMTP服务器配置方法与步骤?

Oracle发邮件功能如何配置?如何优化Oracle发信性能? 为了实现自动化报告和通知,Oracle发邮件功能变得尤为重要。通过配置SMTP服务器,Oracle可以轻松地发送电子邮件。AokSend将详细介绍如何配置Oracle发邮件时的SMTP服务器&#x…

音频处理新纪元:深入探索PyTorch的torchaudio

音频处理新纪元:深入探索PyTorch的torchaudio 在深度学习领域,音频数据的处理和分析正变得越来越重要。PyTorch,作为一个强大的机器学习库,通过其torchaudio扩展包,提供了一套完整的工具来处理和分析音频数据。本文将…

IDEA 编译项目时卡在Parsing java,最终报out of memory

今天在项目运行的时候莫名其妙报错: 报错内容: java.lang.OutOfMemoryError: GC overhead limit exceeded原因: 通常是因为堆内存太小,无法有效管理正在创建和销毁的对象。 解决方法: 在 IDEA 的安装目录下找到 bi…

ABB巨资收购一家电气龙头,为当年卖给日立电气业务回血

导语 大家好,我是社长,老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 战略扩张:ABB携SEAM集团深耕电气服务市场 在电气服务领域,ABB再次展现了其强大的市场扩张能力。近日,ABB宣布…

实现uniapp h5 网页跳转微信小程序

文章目录 前言一、实现uniapp网页跳转微信小程序二、具体步骤1.获取小程序的token2.获取小程序跳转链接3.总的示例模板 总结 前言 最近的项目中有用到,算是踩坑后的记录吧 微信官方文档参考:获取token 微信官方文档参考:获取url scheme 提示…

C# 实现WebScoket客户端

C# 实现WebScoket客户端 含登录授权功能 using System; using System.Text; using System.Threading; using System.Collections.Concurrent; using System.Net.WebSockets; using Newtonsoft.Json.Linq; using System.Net; using System.IO;using MultiCore.ViewModel;namesp…

【CanMV K230】外接传感器

【CanMV K230】外接传感器 外接LED灯 B站视频链接 抖音链接 我们后面主要做是机器视觉。K230能帮我们捕捉到图像信息。更多小功能需要我们自己来做。 比如舵机抬杆,测温报警等 都需要我们外接传感器。 本篇就来分享一下如何使用K230外接传感器 首先需要知道K230…

栈OJ题——有效的括号

文章目录 一、题目链接二、解题思路三、解题代码 一、题目链接 有效的括号 题目描述:给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。括号匹配。 二、…

Windows Edge浏览器对Web Authentication API的支持分析与实践应用

随着网络技术的发展,Web安全认证方式也在不断进步。Web Authentication API(通常称为WebAuthn)是一个现代的Web标准,旨在提供更安全、更便捷的认证机制。它支持多种认证方式,包括生物识别技术、硬件令牌和手机认证等。…

Pycharm module ‘serial‘ has no attribute ‘Serial‘

已经pip install serial 已经提示安装成功了,提示没有Serial的属性,经过查询 ,发现安装的模块不对,应该安装pyserial模块。 解决步骤 第一步:卸载serial pip uninstall serial 第二步:安装pyserial pip u…

【2025校招】4399 NLP算法工程师笔试题

目录 1. 第一题2. 第二题3. 第三题 ⏰ 时间:2024/08/19 🔄 输入输出:ACM格式 ⏳ 时长:2h 本试卷分为单选,自我评价题,编程题 单选和自我评价这里不再介绍,4399的编程题一如既往地抽象&#xff…

高级调度1

一.初始化容器InitContainer 1.定义 initContainers 是 Kubernetes Pod 中的一个功能,用于在主容器启动之前执行初始化任务。initContainers 与主容器的作用不同,它们在主容器启动之前运行,并且可以完成准备工作,如下载依赖、配…

Nginx: 反向代理之upstream模块以及完整配置反向代理示例

upstream模块 对于upstream模块而说,它默认已经被编译进Nginx中了想禁用的话,通过 –without-http_upstream_model 这样一个参数来明确的禁用 1 )基本用法 1.1 upstream 语法: upstream name { … }默认值:无上下文…

xss-labs通关攻略 11-15关

第十一关:less-11 步骤一:利用burp抓包 步骤二:添加referer:click me!" type"button" οnmοuseοver"alert(/xss/)进行放包 第十二关:less-12 步骤一:利用burp抓包 步骤二:修改User A…

springboot集成elasticsearch(7.17.22)

官方文档地址:Javadoc | Elasticsearch Java API Client [7.17] | Elastic springboot版本2.1.3 1.pom文件 以下是如何使用maven作为依赖关系管理器配置依赖关系。将以下内容添加到pom.xml文件中: 注:版本号一定要和elasticsearch的版本号…

IDEA2022配置JDK1.8版本与Maven3.3依赖包

第一步: 根据window / linux环境,安装不同IDEA2022 和 下载不同JDK1.8。 Maven依赖包可在不同环境共用,但需要更换Maven依赖包中conf > settings.xml。 第二步: 配置IEDA中JDK1.8版本 File > Project Structure > Proj…

如何使用JMeter的JSON提取器解析JSON响应

在性能测试和API测试中,经常需要处理JSON格式的数据。Apache JMeter提供了一个强大的工具——JSON提取器,用于从JSON响应中提取特定的值。本文将通过一个实际的例子,演示如何使用JMeter的JSON提取器来解析JSON响应。 背景 假设我们收到了一…

gevent 入门篇

gevent 入门篇 并发编程模型主要有: 多进程,多线程,事件驱动, 协程. gevent 是基于协程的异步框架,它需要依赖于greenlet.gevent有什么样的优势? 先来通过一个简单的例子对比同步执行一个方法和使用gevent的异步方式. 普通的单线程同步执行任务 import timedef sync_task()…