复习linux——ssh服务

SSH服务

ssh:安全的远程登录,实现加密通信,代替传统的telnet协议
具体的软件实现
openssh:ssh协议的开源实现
dropbear:另一个ssh协议的开源项目的实现

ssh公钥交换原理
客户端发起连接请求——客户端得到服务端的公钥——客户端生成自己的公钥或会话ID并用服务端公钥加密发送给服务端——服务端用自己的私钥解密计算出客户端的公钥——双方各自持有自己的公钥私钥和对方的公钥

openssh服务

服务端

程序:/usr/sbin/sshd
Unit文件:/usr/lib/systemd/system/sshd.service

客户端

ssh命令是ssh客户端,允许实现对远程系统经验证地加密安全访问
当用户远程连接ssh服务器时,会复制ssh服务器/etc/ssh/ssh_host*key.pub文件中的公钥到客户机的~/.ssh/know_hosts
ssh客户端配置文件:/etc/ssh/ssh_config

ssh命令

格式:ssh [user@]host[COMMAND]    ssh [-l user] host [COMMAND]
常用选项
-p 远程服务器监听的端口
-b 指定连接的源IP
-v 调试模式
-C 压缩方式
-X 支持x11转发
-t 强制伪tty分配
-o option
-i <file> 指定私钥文件路径,实现基于key验证,默认使用文件:~/.ssh/*dsa

其它ssh客户端工具

scp命令

scp [options] SRC ... DEST/
常用选项
-C 压缩数据流                  -r 递归复制               -p 包持原文件的属性信息
-q 静默模式                -P PORT 指明remote host的监听的端口

rsync命令

实现高效率的远程系统之间复制文件,使用安全的shell连接作为传输方式,比scp更快,基于增量数据同步,即只复制两方不同的文件
常用选项:
-n 模拟复制过程            -v 显示详细过程         -r 递归复制目录树           -p 保留权限
-t  保留修改时间戳        -g  保留组信息            -o 保留所有者信息         
-l 将软链接文件本身进行复制      -L  将软链接文件执行的文件复制
--progress 显示进度     --bwlimit  限速以KB为单位

sftp命令

自动登陆ssh工具 sshpass

sshpass用于非交互SSH的密码验证,一般用在sh脚本中,无须再次输入密码
格式:sshpass [option] command parameters
常见选项
-p password
-f  filename   跟保存密码的文件名,密码是文件内容的第一行
-e  将环境变量SSHPASS作为密码

ssh登陆验证方式

基于用户和口令登录验证

客户端发起ssh请求,服务器会把自己的公钥发送给用户——用户会根据服务器发来的公钥对密码进行加密——服务器用自己私钥解密,如果密码正确,则用户登录成功

基于密钥的登陆方式

在客户端生成一对密钥——将客户端的公钥拷贝到服务端——当客户端再次发送一个连接请求——服务端得到客户端的请求后,会到authorized_keys中查找,如果有相应,就会生成一个字符串——服务端使用客户端拷贝过来的公钥进行加密然后发送给客户端——得到服务端发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端——服务端接收到客户端发来的字符串后,进行比对,如果一致,允许免密码登陆

实现基于密钥登陆方式

在客户端生成密钥对

ssh-keygen -t rsa [-P 'password'] [-f "~/.ssh/id_rsa]

把公钥文件传输至远程服务器对应用户的家目录

ssh-copy-id [-i [identity_file]] [user@]host

重设私钥口令

ssh-keygen -p

ssh服务器配置

服务器端:sshd
服务器端的配置文件:/etc/ssh/sshd_config

ssh服务的最佳实践

建议使用非默认端口
禁止使用protocol version 1
限制可登录用户
设定空闲超时时长
利用防火墙设置ssh访问策略
仅监听特定的IP地址
使用基于密钥的认证
禁止使用空密码
禁止root用户直接登陆
限制ssh的访问频度和并发在线数
经常分析日志

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

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

相关文章

PIC单片机项目(5)——基于PIC16F877A的多功能防盗门

1.功能设计 本次设计的功能如下&#xff1a;如果红外对管检测到有人经过&#xff0c;LCD1602可以显示&#xff0c;我设计的是显示字符串“someone”。 如果有人强行破门&#xff0c;FSR402压力传感器会检测到压力过大&#xff0c;然后触发蜂鸣器报警&#xff0c;LCD1602也显示“…

物奇平台消息发收功能实现

物奇平台消息发收功能实现 是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 1 外设中断消息发送方法

实验4.2 默认路由和浮动静态路由的配置

实验4.2 默认路由和浮动静态路由的配置 一、任务描述二、任务分析三、具体要求四、实验拓扑五、任务实施1.路由器的基本配置。2.配置默认路由&#xff0c;实现全网互通。3.配置浮动静态路由&#xff0c;实现链路备份。 六、任务验收七、任务小结八、知识链接1&#xff0e;默认路…

SpringBoot整合SpringDataJpa QueryDSL和原生态SQL

1.导入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.0…

【1) 40个powershell命令,掌握它们让你成为新一代命令行大神 2) mkdir, rmdir commands】

40 commands of poershell & mkdir, rmdir I) 40个powershell命令&#xff0c;掌握它们让你成为新一代命令行大神1.1&#xff09; URL1.2&#xff09;Basic 40 commands of powershell1.2.1) get-command1.2.1.1&#xff09;describe1.2.1.2&#xff09;mkdir dir_name, rm…

2023 英特尔On技术创新大会直播 |AI小模型更有性价比

前言&#xff1a; 今年是引爆AI的一年&#xff0c;从幼儿园的小朋友到80岁的老奶奶都认识AI&#xff0c;享受AI带来的便捷&#xff0c;都在向市场要智能&#xff0c;但AI的快速发展离不开底层硬件设施的革新。 英特尔是全球知名的半导体公司&#xff0c;专注于计算机处理器和芯…

pip基本操作指令大全

以下是一些pip的基本操作指令及其用途&#xff1a; 安装包&#xff1a; pip install package_name 安装指定的Python包。如果你想安装特定版本&#xff0c;可以这样指定&#xff1a; pip install package_nameversion_number 升级包&#xff1a; pip install --upgrade pack…

JavaScript 从基础到进阶 02:控制流程与函数

控制流程与函数 条件语句1. if语句2. else if语句3. switch语句 循环语句1. for循环2. while循环3. do...while循环 控制流程的关键概念1. break语句2. continue语句3. 标签&#xff08;label&#xff09; 总结函数的定义1. 函数声明2. 函数表达式 函数的调用函数的参数形参和实…

Goby 漏洞发布| Apusic 应用服务器 createDataSource 远程代码执行漏洞

漏洞名称&#xff1a;Apusic 应用服务器 createDataSource 远程代码执行漏洞 English Name&#xff1a;Apusic Application Server loadTree Remote Code Execution Vulnerability CVSS core: 9.8 影响资产数&#xff1a; 31410 漏洞描述&#xff1a; 金蝶 Apusic 应用服务…

死锁的原理、产生条件及避免死锁的方法,银行家算法的简介和实现

死锁的原理及避免死锁的方法 死锁的原理 死锁是指在多个进程或线程之间&#xff0c;由于彼此互相持有对方所需资源而无法继续执行的情况。死锁发生的原因通常是由于多个进程同时请求资源&#xff0c;但由于资源分配不当或者竞争条件等问题&#xff0c;导致彼此之间陷入僵局无…

第三节TypeScript 基础类型

1、typescript的基础类型 如下表&#xff1a; 数据类型 关键字 描述 任意类型 any 生命any的变量可以赋值任意类型的值 数字类型 number 整数或分数 字符串类型 string 使用单引号&#xff08;‘’&#xff09;或者双引号&#xff08;“”&#xff09;来表示字符串…

企业数字化转型如何影响企业 ESG 表现 —来自中国上市公司的证据(数据复现+代码)

数据来源&#xff1a;自主整理 时间跨度&#xff1a;2010-2020年 数据范围&#xff1a;中国沪深 A 股上市公司 数据指标&#xff1a; 类型 变量 符号 变量定义 证券代码 stkcd 年份 year 股票简称 name 被解释变量 ESG ESG 华证ESG季度评级赋值1-9分&#xff0c;取…

xxl-job 分布式调度学习笔记

1.概述 1.1什么是任务调度 业务场景&#xff1a; 上午10点&#xff0c;下午2点发放一批优惠券 银行系统需要在信用卡到期还款日的前三天进行短信提醒 财务系统需要在每天凌晨0:10分结算前一天的财务数据&#xff0c;统计汇总 不同系统间的数据需要保持一致&#xff0c;这时…

flask 之上传与下载

from flask import Flask, render_template, request, send_from_directory, redirect, url_for import osapp Flask(__name__)# 上传文件存储路径 UPLOAD_FOLDER uploads app.config[UPLOAD_FOLDER] UPLOAD_FOLDERapp.route(/) def index():# 确保上传文件夹存在if not os.…

【工业智能】音频信号相关场景

【工业智能】音频信号相关场景 DcaseDcase introduction&#xff1a;dcase2024有10个主题的任务&#xff1a; ASD硬件设备产品商 方法制造业应用场景 zenodo音频事件检测 与计算机视觉CV相对应&#xff0c;计算机听觉computer audition&#xff0c;简称CA。 Dcase 这里推荐一个…

牛客BC115 超级圣诞树

万众瞩目 在上一篇我们介绍了一个圣诞树的打印&#xff0c;而这道题与上次不同的是他的基本单位是一直在变的 我建议先把上一个搞懂在写这道题这个。 牛客网BC114 圣诞树-CSDN博客 ok那么正文开始 题目如下 今天是圣诞节&#xff0c;牛牛要打印一个漂亮的圣诞树送给想象中…

Unity 通过代码将一张大图切成多个小图的方法

在Unity 中要通过代码将一张贴图切割成多张小图&#xff0c;可以使用以下方法&#xff1a; /// <summary>/// 把一张图片切割成多张使用/// </summary>/// <param name"texture">原图</param>/// <param name"rows">切割的行…

[DNS网络] 网页无法打开、显示不全、加载卡顿缓慢 | 解决方案

[网络故障] 网页无法打开、显示不全、加载卡顿缓慢 | 解决方案 问题描述 最近&#xff0c;我在使用CSDN插件浏览 MOOC 网站时&#xff0c;遇到了一些网络故障。具体表现为&#xff1a; MOOC 中国大学慕课网&#xff1a;www.icourse163.org点击CSDN插件首页的 MOOC&#xff08…

VSCode调试Vue项目

前言 代码在某个平台运行时&#xff0c;会将运行时的状态通过某种方式暴露出来。这些状态信息可以通过某种方式传递给开发工具&#xff0c;以便进行UI的展示和交互。这样的交互可以辅助开发者排查问题、梳理流程&#xff0c;并更好地了解代码的运行状态。这就是我们通常所说的调…

Excel如何将行的值转换为列值?

问题:Excel如何将行的值转换为列值?(如图左表变成右表) 1.用 SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2, 条件2], ...)函数 比如:=SUMIFS($C$2:$C$8,$A$2:$A$8,H3,$B$2:$B$8,"快车") 2.直接用简单的透视表 (1)随机点击目标目标表格任何位置,点击插入…