Linux网络服务----SSH

news2024/12/23 10:45:00

文章目录

  • 一 、SSH服务
    • 1.1 什么是SSH服务器?
    • 1.2 常用的SSH软件的介绍
  • 二 、ssh的运用
    • 2.1 存放ssh服务端的配置文件
    • 2.2 ssh在Linux中的密码登录
    • 2.3 利用ssh协议传输文件和获取文件
    • 2.4 sftp远程访问操作
  • 三 、 ssh密钥登录操作
  • 四 、TCP_wapper的原理和运用
    • 4.1 TCP_wapper的原理
    • 4.2 设置黑白名单
  • 总结

一 、SSH服务

1.1 什么是SSH服务器?

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

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

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

和ssh一样的通信协议还有telnet(端口号23),和ssh不一样的是ssh是密文传输数据,而telnet则是铭文传输,所以相对而言ssh的安全性更高一点。

在这里插入图片描述

SSH优点
对通信数据进行加密处理,包括登录名称和登陆的密码,所以安全性很高

1.2 常用的SSH软件的介绍

SSH客户端:putty(开源工具),xshell,CRT

SSH服务端:openSSH(centos7系统默认安装)

centos7 ssh服务启动自检命令: systemctl is-enabled sshd

二 、ssh的运用

我们查看etc/ssh,发现有很多的文件,其中sshd_config 是服务端的配置文件,ssh_config 是客户端的配置文件

在这里插入图片描述

2.1 存放ssh服务端的配置文件

进入/etc/sshd_config文件

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

常用配置项:

#LoginGraceTime 2m            #登录验证时间为两分钟
#PermitRootLogin yes          #允许root用户登录(安全考虑,这里可以设置为no,禁止root用户登录)
#MaxAuthTries 6               #最大重试的次数为6
PasswordAuthentication yes    #允许空密码用户登录
UseDNS  no                    #禁止DNS反向解析,提高服务器的响应速度

2.2 ssh在Linux中的密码登录

ssh [远程主机用户名]@[远程服务器主机名或IP地址] [-p port]

远程连接192.168.5.129的root用户需要输入他的密码才可以完成登录,如果没有-p则设置默认的端口:22 (-p 用于指定端口号)
在这里插入图片描述

2.3 利用ssh协议传输文件和获取文件

scp root@192.168.5.129:/etc/passwd  /root/passwd10.txt    #下行复制,将远程主机中的etc/passwd文件复制到本机
scp -r /etc/ssh  root@192.168.5.129:/opt                 #上行复制,将本机的etc/ssh复制到远程主机,因为是复制目录所以要-r

如果有同名文件将会直接覆盖

下行复制:

在这里插入图片描述

上行复制:

在这里插入图片描述

进入另一个虚拟机查看opt目录下是否有复制的文件

在这里插入图片描述

2.4 sftp远程访问操作

sftp [-P] 用户@服务端IP (当默认端口改变时,可以用-P指定)

在这里插入图片描述

在这里插入图片描述

三 、 ssh密钥登录操作

配置密钥对验证

1、通过ssh-keygen工.具为当前用户创建密钥对文件。可用的加密算法为RSA、ECDSA或DSA等〈ssh-keygen命令的"-t"选项用于指定算法类型)。

useradd admin
echo "123123" l passwd --stdin admin 
su - admin
ssh-keygen -t ecdsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/home/admin/ .ssh/id_ecdsa):       #指定私钥位置,直接回车使用默认位置
created directory '/ home/ admin/ .ssh ' .                              #生成的私钥、公钥文件默认存放在宿主目录中的隐藏目录.ssh/下
Enter passphrase (empty for no passphrase) :                            #设置私钥的密码
Enter same passphrase again :                                           #确认输入
ls -l ~/ .ssh/id ecdsa*                                                 #id_ ecdsa是私钥文件,权限默认为600; id_ecdsa.pub是公钥文件,用来提供给SSH 服务器

2、使用ssh_cpoy-id的方式进行密钥设置

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

进行测试

在这里插入图片描述

四 、TCP_wapper的原理和运用

4.1 TCP_wapper的原理

TCP_Wrappers有一个TCP的守护进程叫作tcpd。以ssh为例,每当有ssh的连接请求时,tcpd即会截获请求,先读取系统管理员所设置的访问控制文件,符合要求,则会把这次连接原封不动的转给真正的ssh进程,由ssh完成后续工作;如果这次连接发起的ip不符合访问控制文件中的设置,则会中断连接请求,拒绝提供ssh服务。

在这里插入图片描述

4.2 设置黑白名单

在这里插入图片描述

/etc/hosts.allow 设置允许访问 tcp 服务程序的策略(白名单)

/etc/hosts.deny 设置禁止访问 tcp 服务程序的策略 (黑名单)

假设引用
只允许IP地址为192.168.5.129的用户访问sshd服务,其他地址被拒绝。

白名单设置:

vim /etc/hosts.allow
在这里插入图片描述

黑名单设置:

在这里插入图片描述

测试一下

192.168.5.129客户端
在这里插入图片描述

192.168.5.131客户端

在这里插入图片描述

总结

1、熟知ssh密钥生成的过程,用于对ssh访问的加密,符合更安全的远程控制标准
2、当我们获得一台新的服务器时,为了更安全,取消掉root用户的远程访问以及更换ssh的端口号。
3、ssh中有更高效的传输获取功能,可以加以利用。
4、TCP_Wrappers中的黑白名单,可以大量高效的设置可访问服务端的用户及其能够访问的服务。

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

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

相关文章

IP-GUARD能否实现打印指定文件时需经过管理员审批后才能打印?

支持。先设置禁止打印文档的策略,然后设置相关审批流程,再给到客户端相应的申请权限: 1、在控制台-高级-打印控制策略中,给需要进行打印管控的客户端设置以下策略: 动作:禁止 2、在控制台-申请管理-桌面申请管理-审批流程管理中,添加申请类型为打印的审批流程,指定审批人…

通过ADB实现移动端h5项目无线真机调试(超级简单!)

前言 做移动端h5项目的时候,电脑浏览器调试样式和效果,可能和真机展示出来的效果有差距,比如有的手机开启了home键,比如文字大小等样式有偏差。虽然可以通过手机扫描网页二维码在手机上看样式,但是和真机还是有区别。…

每天一道大厂SQL题【Day23】华泰证券真题实战(五)

每天一道大厂SQL题【Day23】华泰证券真题实战(五) 大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题&…

Veritas 与星辰天合的官方一体化方案来了

11>2,XSKY星辰天合联手 Veritas 贡献企业数据管理最佳实践。 近日,XSKY星辰天合以“科技联盟伙伴”身份亮相 2023 Veritas Solution Day,并宣布与 Veritas 推出联合解决方案。双方将携手为大型企业客户带来业界领先的数据存储与保…

CDH中的MySQL升级(RPM包方式)

CDH中的MySQL升级(RPM包方式) 1.下载官网的5.7中最新的版本,地址:MySQL 5.7.41 rpm下载地址 2.解压下载的tar包:tar -xvf mysql-5.7.41-1.el7.x86_64.rpm-bundle.tar 3.备份数据库 3.1 先停止MySQL服务:sy…

【测试开发】第一节.测开入门(附常考面试题)

文章目录 前言 一、什么是测试开发 1.1 常考面试题 二、软件测试的基础概念 2.1 需求 2.2 测试用例 3、BUG 三、生命周期 3.1 软件的生命周期 3.2 软件测试的生命周期 四、软件工程中的几种常见的开发模型 4.1 瀑布模型 4.2 螺旋模型 4.3 增量模型和迭代模型 4.4 敏捷…

【Windows10】〖问题〗Win10默认应用Web浏览器设置里出现两个Microsoft Edge图标,如何删掉空白图标?

〖问题〗Win10默认应用Web浏览器设置里出现两个Microsoft Edge图标,如何删掉空白图标? 问题 出现原因: 空白那个应该是旧版edge,可能是因为你曾经升级最新版Chromium的edge时,旧版本的edge并没有被系统清除干净所…

spring security (史上最全)

认证与授权(Authentication and Authorization) 一般意义来说的应用访问安全性,都是围绕认证(Authentication)和授权(Authorization)这两个核心概念来展开的。 即: 首先需要确定用…

计算机组成原理——第七章输入输出系统(下)

还君明珠双泪目,恨不相逢未嫁时 文章目录 前言7.3.2 中断的作用和原理7.3.3 多重中断7.3.4 程序中断方式7.3.5 DMA 方式 前言 本节除了对时间的计算考察比较多之外,其他的方面也有考察,同时中断的考点在操作系统中也有考察,机组里…

〖Python网络爬虫实战⑯〗- 网页解析利器parsel

订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列(零基础小白搬砖逆袭) 说明:本专栏持续更新中,目前专栏免费订阅,在转为付费专栏前订阅本专栏的,可以免费订阅付…

【hello Linux】进程控制

目录 1. 进程创建 2. 进程终止 3. 进程常见的退出方法 4. 进程等待 5. 进程等待的方法 6. 获取子进程status Linux🌷 1. 进程创建 fork 函数初识 在 linux 中 fork 函数是非常重要的函数,它可以从已存在进程中创建一个新进程。 新进程便是我们所说的子进…

从0到1搭建react 工程化前端项目

一、npm init 初始化包管理 1.在使用该命令之前,创建一个文件夹,例如:reactDemo2.使用在电脑终端命令行工具中,找到1创建的文件夹,并转到改文件夹指定目录;3.执行 npm init4.如图所示: 5.执行命…

云看消博会:政策、技术、玩家造就的数字化革命

配图来自Canva可画 会展作为展示地域经济、文化、技术等软硬实力的最佳舞台,在塑造城市品牌形象、加速地域经济发展中发挥着重要的促进作用。近几年,在数字经济浪潮的推动下,会展产业走上了网联化、数字化、智能化的道路,催生了不…

上货避坑指南 私域上货选品工具 无货源选品上货 采集商品详情数据API分享 详情图 sku信息

电商开店之后,第一件事就是上货了,上货其实也是有技巧的。 上传商品时我们一定要注意细节,不可忽略一些重要细节,所以商家们在上传商品前,不可忽略是否预售、标题、主图、详情页、保证金、上架时间这几个细节。 详情…

PHP实现输入数值计算幂次,输入工资,判断个人所得税的金额这两个程序的代码

目录 前言 一、输入数值计算幂次 1.1运行流程(思想) 1.2代码段 1.3运行截图 二、输入工资,判断个人所得税的金额 2.1运行流程(思想) 2.2代码段 2.3运行截图 前言 1.因多重原因,本博文有两个代码程…

【动手学深度学习】使用块的网络(VGG)

使用块的网络(VGG) 本文为李沐老师《动手学深度学习》一书的学习笔记,原书地址为:Dive into Deep Learning。 另,给自己练习时没有gpu资源的小伙伴推荐下kaggle数据科学网站,每周免费训练时长30h。 1 网络结…

Compose TextField

TextField​ Composable fun TextField(value: String,onValueChange: (String) -> Unit,modifier: Modifier Modifier,enabled: Boolean true,readOnly: Boolean false,textStyle: TextStyle LocalTextStyle.current,label: Composable (() -> Unit)? null,place…

unity,物理材质2d

介绍 2D物理材质(Physics Material 2D)是Unity中用于设置2D游戏对象的物理特性的一种方式。2D物理材质可以控制2D游戏对象的摩擦力、弹性系数等物理属性,从而影响其在物理引擎中的运动行为。以下是2D物理材质的详细介绍: 方法 摩擦力 2D物理材质的主要…

Qt+FFmpeg简单实现录屏并保存为MP4视频

一、前言 最近需要实现一个录屏功能,网上查了好多资料,最可靠的方案当然还是用FFmpeg实现,但是也踩了很多坑,包括FFmpeg版本问题,vs2019里相关编译问题,FFmpeg也不太熟悉,很多代码不太容易看懂&…

springboot+vue学生毕业离校系统(源码+说明文档)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的学生毕业离校系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 💕💕作者:风…