当前位置: 首页 > news >正文

【Linux网络服务】SSH远程访问及控制

一、openssh服务器

1.1ssh协议

  • SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程 复制等功能;

  • SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令;

  • SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。

  • SSH客户端<--------------网络---------------->SSH服务端

  • 数据传输是加密的,可以防止信息泄漏

  • 数据传输是压缩的,可以提高传输速度

1.2openssh

  • openssH 是实现 SSH 协议的开源软件项目,适用于各种 UNIX、Linux 操作系统。
  • Centos 7系统默认已安装openssh相关软件包,并已将 sshd 服务添加为开机自启动。
  • 执行”systemctl start sshd”命令即可启动 sshd 服务
  • sshd 服务默认使用的是TCP的 22端口
  • sshd 服务的默认配置文件是/etc/ssh/sshd_config
  • ssh_config和sshd_config都是ssh服务器的配置文件,二者区别在于前者是针对客户瑞的配置文件,后者则是针对服务端的配置文件。

客户端常用的ssh连接软件

  • Linux Client: ssh, scp, sftp,slogin ,

  • Windows Client:xshell, MobaXterm,putty, securecrt ,telnet

  • 服务名称 : sshd

  • 服务端主程序: /usr/sbin/sshd

  • 服务端配置文件 : /etc/ssh/sshd_config

  • 客户端配置文件: /etc/ssh/ssh_config

二、配置openssh服务端

2.1sshd_config配置文件的常用选项

vim /etc/ssh/sshd config
Port 22 #监听端口为 22
ListenAddress 0.0.0.0  #监听地址为任意网段,也可以指定openSSH服务器的具体IP
LoqinGraceTime 2m  #登录验证时间为 2 分钟
PermitRootLoqin no   #禁止: root 用户欲录
MaxAuthTries 6    #最大重试次数为 6
PexmitEmptyPasswords no  #禁止空密码用户录
UseDNs no   #禁用 DNS 反向解析,以提高服务器的响应速度
PubkeyAuthentication yes #开启密钥对验证

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、设置白名单与黑名单的两种方法

2.1方法一:修改sshd_config文件

  • Allowusers 添加白名单
  • DenyUsers添加黑名单
  • 白名单与黑名单不可以同时使用
    白名单
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    黑名单
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2.2方法二:设置TCP Wrappers访问策略

2.2.1TCP Wrappers保护机制的方式

  • 由其他网络服务程序调用 libwrap.so.*链接库,不需要运行 tpd 程序。此方式的应用更加泛,也更有效率。
  • 使用 ldd 命令可以查看程序的 ibwrap.so.*链接库Idd $(which ssh)

2.2.2访问策略

  • TCP Wrappers 机制的保护对象为各种网络服务程序,针对访问服务的客户端地址进行访问控制。
  • 对应的两个策略文件为/etc/hosts.allow 和/etc/hosts.deny,分别用来设置允许和拒绝的策略

2.2.3格式

  • <服务程序列表>:<客户端地址列表>
    (1) 服务程序列表
  • ALL:代表所有的服务。
  • 单个服务程序:如”vsftpd”
  • 多个服务程序组成的列表: 如rvsftpd,sshd"。

(2)客户端地址列表

  • ALL:代表任何客户端地址。
  • LOCAL:代表本机地址。
  • 多个地址以逗号分隔
  • 允许使用通配符 “*”和“?”,前者代表任意长度字符,后者仅代表一个字符
  • 网段地址,如“192.168.80.” 或者 192.168.80.0/255.255.255.0

2.24设置白名单与黑名单

查看哪些tcp服务可以被wrappers保护

  • Idd $(which ssh)

在这里插入图片描述
白名单

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 黑名单相反即可,TCP Wrappers会先读取allow文件,如果有则直接允许通过,然后在读取deny文件,如果有则拒绝访问,如果都没有则允许通过

三、scp、sftp服务

3.1scp远程复制

下行复制:将远程主机中的文件复制到本机

在这里插入图片描述
上行复制
在这里插入图片描述
注:复制目录要加-r,加端口号要加-P ,如果有同名文件会直接覆盖不提醒

3.2sftp 远程文件传输协议

  • 由于使用了加密/解密技术,所以传输效率比普通的FTP要低,但安全性更高。操作语法sftp与ftp几乎一样。
sftp> ls
sftp> get 文件名  #下载文件到ftp目录
sftp> put 文件名  #上传文件到ftp目录
sftp> quit		 #退出

在这里插入图片描述

四、配置密钥对验证

(1)在客户端创建密钥对
ssh-keygen -t rsa
-t指定算法类型

在这里插入图片描述

(2)把公钥文件发送给服务端主机,即可完成密钥验证登录

ssh-copy-id -i id_rsa.pub dn@192.168.243.99# ssh-copy-id 可以指定在指定用户的家目录中生成公钥文件的目录和文件,并且目录权限700,文件权限600,只有这样密钥验证才能使用# -i 指定公钥文件

在这里插入图片描述
在这里插入图片描述

(3)客户端主机即可通过密钥验证登录,无需输出密码,密钥验证时一对一的,安全性比密码登录更高

在这里插入图片描述

4.2无交互式密钥登录的种方法

方法一:

  • 在生成密钥文件时设置私钥密码为空即可完成免交互登录
    方法二:
    通过创建ssh会话代理 (只在当前会话有效)
ssh-agent bash
ssh-add

相关文章:

【Linux网络服务】SSH远程访问及控制

一、openssh服务器 1.1ssh协议 SSH&#xff08;Secure Shell&#xff09;是一种安全通道协议&#xff0c;主要用来实现字符界面的远程登录、远程 复制等功能&#xff1b; SSH 协议对通信双方的数据传输进行了加密处理&#xff0c;其中包括用户登录时输入的用户口令&#xff1…...

AutoGPT的出现,会让程序员失业吗?

最近&#xff0c;一个叫AutoGPT的模型火了&#xff0c;在GitHub上线数周Star数就直线飙升。截至目前&#xff0c;AutoGPT的Star数已经达到87k&#xff0c;马上接近90k&#xff0c;超过了PyTorch的65k。 根据AutoGPT的命名&#xff0c;就可以发现其神奇之处在于“auto”&#x…...

微信小程序php+vue 校园租房指南房屋租赁系统

本着诚信的原则&#xff0c;平台必须要掌握出租方必要的真实可信的信息&#xff0c;这样就可以防止欺诈事件的发生&#xff0c;事后也可以联系找到出租方。并且租金等各方面规范标准化&#xff0c;在这易租房诚信可信的平台让承租方与出租方充分有效对接&#xff0c;既方便了承…...

水果FL Studio21最新中文完整版下载更新及内容介绍

简单总结一下&#xff0c;本次小版本更新最重要的内容&#xff0c;我个人认为是对于M1芯片的适配。其余的比如EQ2&#xff0c;3x这些我们很熟悉的插件虽说也有更新&#xff0c;但是估计并没有特别大的改动。我个人的话会先放一段时间&#xff0c;等下次有其他更让我感兴趣的内容…...

springboot+vue小区物业管理系统(源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的小区物业管理系统。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 &#x1f495;&#x1f495;作者&#xff1a;风…...

GEEer成长日记二十三:chatGPT可以帮我们提取水体边缘吗?

欢迎关注公众号&#xff1a;GEEer成长日记 目录 01 首先&#xff0c;chatGPT是什么&#xff1f; 02 进入正题&#xff0c;如何进行边缘检测&#xff1f; chatGPT推出之后&#xff0c;引发了激烈的讨论&#xff0c;今天带各位看看它在GEE方面能为我们做什么。原本想着它可以…...

程序员阿里三面无理由挂了,被HR一句话噎死,网友:这可是阿里啊

进入互联网大厂一般都是“过五关斩六将”&#xff0c;难度堪比西天取经&#xff0c;但当你真正面对这些大厂的面试时&#xff0c;有时候又会被其中的神操作弄的很是蒙圈。 近日&#xff0c;某位程序员发帖称&#xff0c;自己去阿里面试&#xff0c;三面都过了&#xff0c;却被…...

js面试题

在全局作用域下声明了一个变量 arr, 它的初始值是一个空数组 第二段代码&#xff0c;循环计数器变量i的初始值为0&#xff0c;循环条件是i的值小于2&#xff0c; 也就是说当i的值为0或者1时&#xff0c; 循环条件才能成立 才能够进入到循环体 当i的值为2时循环条件不成立&…...

SpringCloud --- Gateway服务网关

一、简介 Spring Cloud Gateway 是 Spring Cloud 的一个全新项目&#xff0c;该项目是基于 Spring 5.0&#xff0c;Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关&#xff0c;它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。 二、为…...

【java】CGLIB动态代理原理

文章目录 1. 简介2. 示例3. 原理4. JDK动态代理与CGLIB动态代理区别&#xff08;面试常问&#xff09; 1. 简介 CGLIB的全称是&#xff1a;Code Generation Library。 CGLIB是一个强大的、高性能、高质量的代码生成类库&#xff0c;它可以在运行期扩展Java类与实现Java接口&a…...

ArcGIS Pro、Python、USLE、INVEST模型等多技术融合的生态系统服务构建生态安全格局

第一章、生态安全评价理论及方法介绍 一、生态安全评价简介 ​ 二、生态服务能力简介 ​ 三、生态安全格局构建研究方法简介 ​ 第二章、平台基础一、ArcGIS Pro介绍1. ArcGIS Pro简介2. ArcGIS Pro基础3. ArcGIS Pro数据编辑4. ArcGIS Pro空间分析5. 模型构建器6. ArcGIS Pro…...

openstack安装应答文件时报错处理

环境&#xff1a;centos7 在执行packstack --answer-file./answer.ini命令后&#xff0c;一般需要几分钟才能完成&#xff0c;如何在applying IP controler.pp时报错&#xff0c;需要注意以下几点&#xff1a; 0.关闭firewalld和selinux&#xff08;必须&#xff09; system…...

SpringBoot整合MongoDB

文章目录 一、环境准备二、集合操作三、文档操作3.1 实体类3.2 添加文档3.3 查询文档3.4 修改文档3.5 删除文档 提示&#xff1a;以下是本篇文章正文内容&#xff0c;MongoDB 系列学习将会持续更新 一、环境准备 ①添加 SpringData 依赖&#xff1a; <dependency><…...

线程同步机制与互斥锁

线程同步机制 在多线程编程&#xff0c;一些敏感数据不允许被多个线程同时访问&#xff0c;此时就使用同步访问技术&#xff0c;保证数据在任何时刻&#xff0c;最多有一个线程访问&#xff0c;以保证数据的完整性。也可以这里理解:线程同步&#xff0c;即当有一个线程在对内存…...

Python算法设计 - 编码加密

一、编码加密 编码加密应用十分广泛&#xff0c;特别是在大数据时代&#xff0c;也因此信息安全变得尤为重要 有时我会读到“OTP是一种无法被破解的加密方式”&#xff0c;当然&#xff0c;文末会附上一个完全被破解的OTP加密的例子 问题在于&#xff0c;人们经常会觉得完美的…...

数据结构和算法学习记录——平衡二叉树(基本介绍、平衡因子、平衡二叉树的定义、平衡二叉树的高度)

目录 基本介绍 平衡因子 平衡二叉树 平衡二叉树的高度 基本介绍 什么是平衡二叉树&#xff1f; 以一个例子来解释一下&#xff1a; 搜索树结点按不同的插入次序&#xff0c;将会导致不同的深度和平均查找长度ASL 在二叉搜索树中查找一个元素&#xff1a; &#xff08…...

【浓缩概率】浓缩概率思想帮我蒙选择题的概率大大提升!

今天在学习的时候遇到一个很有趣的思想叫作浓缩概率&#xff0c;可以帮我们快速解决一下概率悖论问题&#xff01; 什么是概率 计算概率有下面两个最简单的原则&#xff1a; 原则一、计算概率一定要有一个参照系&#xff0c;称作「样本空间」&#xff0c;即随机事件可能出现…...

两小时让你全方位的认识文件(一)

想必友友们在生活中经常会使用到各种各样的文件&#xff0c;那么我们是否了解它其中的奥秘呢&#xff0c;今天阿博就带领友友们深入地走入文件&#x1f6e9;️&#x1f6e9;️&#x1f6e9;️ 文章目录 一.为什么使用文件二.什么是文件三.文件的打开和关闭四.文件的顺序读写 一…...

基于Java+Springboot+vue网上商品订单转手系统设计和实现

基于JavaSpringbootvue网上商品订单转手系统设计和实现 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码联系方式…...

旅游-商场购物

标题 前言必学场景词汇及用法售货员接待促销活动选购商品询问材质与质量试穿衣服杀价修改衣服结账售后服务退换货情境常用单词化妆品类别护肤品类别护肤品功能前言 加油 必学场景词汇及用法 售货员接待 1.be of service to sb 服务某人 Hello, ma’am. Could I be of serv…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...