ssh远程登录

ssh协议

                ---基于 tcp 的 22 号端口

确认是否有ssh包:

[root@server ~] rpm -qa | grep ssh

openssh-clients-8.7p1-24.el9_1.x86_64

openssh-server-8.7p1-24.el9_1.x86_64

1、 ssh的验证过程

第一阶段:版本协商以及tcp三次握手

第二阶段:秘钥和算法协商阶段

​                  服务端发送公钥文件,客户端主机无条件确认公钥(服务端确认客户端身份--内网)

​                  内部通过DH交换算法协商对称算法

第三阶段:认证阶段(客户端验证服务端)

通过用户名和密码验证

通过用户名和公钥验证(更安全)

 第四阶段:会话链接传输阶段

2、对ssh服务端的配置

【注】ssh服务安装包openssh-server

[root@server1 ~]# vim /etc/ssh/sshd_config   --- 配置ssh文件

17.Port 22  #监听端口,默认监听22端口 【默认可修改】

18.AddressFamily any #IPV4和IPV6协议家族用哪个,any表示二者均有

19.ListenAddress 0.0.0.0 #指明监控的地址,0.0.0.0表示本机的所有地址 【默认可修改】

20.ListenAddress :: #指明监听的IPV6的所有地址格式

48.LoginGraceTime 2m #登录的宽限时间,默认2分钟没有输入密码,则自动断开连接

49.PermitRootLogin yes #是否允许管理员远程登录,'yes'表示允许

51.MaxAuthTries 6 #最大认证尝试次数,最多可以尝试6次输入密码。之后需要等待某段时间后才能再次输入密码

52.MaxSessions 10 #允许的最大会话数

59.AuthorizedKeysFile .ssh/authorized_keys #选择基于密钥验证时,客户端生成一对公私钥之后,会将公钥放到.ssh/authorizd_keys里面

79.PasswordAuthentication no #是否允许支持基于口令的认证

129.UseDNS no #是否反解DNS,如果想让客户端连接服务器端快一些,这个可以改为no

146.Subsystem sftp /usr/libexec/openssh/sftp-server #支持 SFTP ,如果注释掉,则不支持sftp连接

154.AllowUsers user1 user2 #登录白名单(默认没有这个配置,需要自己手动添加),允许远程登录的用户。如果名单中没有的用户,则提示拒绝登录

3、实验配置

实验1:修改ssh服务的端口号

[root@server1 ~]# vim /etc/ssh/sshd_config 

Port 2222

[root@server1 ~] systemctl disable firewalld

[root@server1 ~] setenforce  0   ---  用于临时关闭 SELinux

[root@server1 ~] getenforce   --- 查看 SELinux当前执行模式
Permissive    --- 当前SELinux是宽松模式,可以进行一些违规操作

[root@server1 ~] systemctl restart sshd

实验2:拒绝root用户远程登陆  

#请保持服务器上至少有一个可以远程登陆的普通远程账号

[root@server1 ~]# vim /etc/ssh/sshd_config 

PermitRootLogin no

#重启服务后生效,使用时使用普通用户进行登陆,需要使用root用户时再切换

实验3:允许特定用户ssh登陆,其他用户都无法登陆  

[root@server1 ~]# vim /etc/ssh/sshd_config 

AllowUsers USERNAME
#USERNAME为你允许登陆的账号【需要在系统中useradd该账号】
#如果是多个用户,中间用空格隔开

#重启ssh服务后生效

实验四:公钥验证,免密登录

服务器地址: 192.168.146.129

一、Linux -- Linux:

客户端地址:192.168.146.131

1、生成非对称密钥:[root@localhost ~]# ssh-keygen -t rsa --- 用rsa算法生成密钥

密钥已成功生成

2、将当前主机的.ssh/id_rsa.pub文件发送到129主机的/.ssh/authorized_keys:

 ssh-copy-id 192.168.146.129

3、确定发起ssh连接不需要任何验证: ssh 192.168.146.129

二、Windows -- Linux:

注释:使用Xshell和Xftp实现

1、打开Xshell如图选择新建用户密钥生成向导

2、一直下一步

3、密钥名称任意,因为做免密,所以不设置密码

4、选择保存本地(能找到即可)

生成如图文件:

5、打开Xftp

将需要设置免密的服务器和Windows主机连接

如图将之前生成的server.pub发送到Linux的/root/.ssh目录下

再如下改名:[root@server ~]# mv .ssh/server.pub   .ssh/authorized_keys

最后就可以在登录root时选择公钥验证了

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WebServer 跑通/运行/测试(详解版)

👂 椿 - 沈以诚 - 单曲 - 网易云音乐 目录 🎂前言 🌼跑通 (1)系统环境 (2)克隆源码 (3)安装和配置 Mysql (4)写 sql 语句 (5&…

LeetCode114二叉树展开为链表(相关话题:后序遍历)

题目描述 给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。 示例…

LabVIEW通过视频识别开发布氏硬度机自动化测量系统

LabVIEW通过视频识别开发布氏硬度机自动化测量系统 概述: 在当前的工业检测与自动化领域,对于精确测量技术的需求日益增长。特别是在材料硬度测试领域,布氏硬度机的自动化测量出现在越来越多的使用中。展示了一个基于LabVIEW开发的布氏硬度…

工业异常检测AnomalyGPT-训练试跑及问题解决

写在前面,AnomalyGPT训练试跑遇到的坑大部分好解决,只有在保存模型失败的地方卡了一天才解决,本来是个小问题,昨天没解决的时候尝试放弃在单卡的4090上训练,但换一台机器又遇到了新的问题,最后决定还是回来…

详谈Python的开发工具

Python作为一种流行的编程语言,在开发过程中需要使用各种工具来提高效率、简化工作流程和改善开发体验。在本文中,我们将介绍一些常用的Python开发工具,包括文本编辑器、集成开发环境(IDE)、虚拟环境管理工具、包管理器…

【数据结构与算法】之数组系列-20240113

这里写目录标题 一、66. 加一二、121. 买卖股票的最佳时机三、136. 只出现一次的数字四、268. 丢失的数字五、350. 两个数组的交集 II 一、66. 加一 简单 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位&…

这可能是最全面的Java集合面试八股文了

内容摘自我的学习网站:topjavaer.cn 常见的集合有哪些? Java集合类主要由两个接口Collection和Map派生出来的,Collection有三个子接口:List、Set、Queue。 Java集合框架图如下: List代表了有序可重复集合&#xff0c…

第 10 章 树结构的基础部分

文章目录 10.1 二叉树10.1.1 为什么需要树这种数据结构10.1.2 树示意图10.1.3 二叉树的概念10.1.4 二叉树遍历的说明10.1.5 二叉树遍历应用实例(前序,中序,后序)10.1.6 二叉树-查找指定节点10.1.7 二叉树-删除节点10.1.8 二叉树-删除节点 10.2 顺序存储二叉树10.2.1 顺序存储二…

《2023年终总结》

笔者来回顾一下2023年的个人成长。 2023年总的来说,工作和生活都相对比较顺利。 工作上领导给予了肯定的评价,升职加薪,对我的鼓舞很大; 生活上和女朋友的感情越来越好,生气频率降低,也能相互理解&#xf…

《Spring》--使用application.yml特性提供多环境开发解决方案/开发/测试/线上--方案2

阿丹-有话说: 第二种多环境的配置选择解决方案,这个更加的灵活没在配置方面都选择了一种yml的书写方式。 原理: 在Spring Boot中,spring.profiles.active 属性用于指定当前应用程序应激活哪个环境配置。当Spring Boot应用启动时…

Centos7.9忘记Root密码找回

Centos7.9忘记Root密码找回 1. 背景2. 目的3. 具体操作3.1 重启系统3.2 增加代码3.3 单用户模式3.4 单用户模式3.5 修改密码3.6 创建文件3.7 重启验证 1. 背景 由于物理主机上安装了多个虚拟机,部分虚拟机忘记了root密码,前段时间刚好要用这个虚拟机&…

【MySQL】创建和管理表

文章目录 前置 标识符命名规则一、MySQL数据类型二、创建和管理数据库2.1 创建数据库2.2 使用数据库2.3 修改数据库2.4 删除数据库 三、创建表3.1 创建方式一3.2 创建方式二3.3 查看数据表结构 四、修改表4.1 增加一个列4.2 修改一个列4.3 重命名一个列4.4 删除一个列 五、重命…

嘘……快进来!这儿有最新版Microsoft照片程序的安装秘籍!(附安装引导程序下载)

网管小贾 / sysadm.cc 最近啊有不少小伙伴向我反馈,自个的 Windows 10 系统里边居然没有 Microsoft 照片 程序。 我觉得有点不可思议,为啥呢,因为他们的电脑是新买的! 你看哈,系统是 22H2 最新版,安装日期…

云卷云舒:独立式向量数据库?数据库向量式插件?

云卷云舒:算力网络云原生(下):云数据库发展的新篇章-CSDN博客https://blog.csdn.net/bishenghua/article/details/135050556 圈内人都知道,2023 年是向量数据库的元年,最初起源于 2023年3月英伟达的黄仁勋…

分布式链路追踪专栏,分布式链路追踪:Skywalking集群管理设计

SkyWalking 是一个开源 APM 系统,包括针对 Cloud Native 体系结构中的分布式系统的监视,跟踪,诊断功能。核心功能如下: 服务、服务实例、端点指标分析; 根本原因分析,在运行时分析代码; 服务拓…

本地一键部署grafana+prometheus

本地k8s集群内一键部署grafanaprometheus 说明: 此一键部署grafanaPrometheus已包含: victoria-metrics 存储prometheus-servergrafanaprometheus-kube-state-metricsprometheus-node-exporterblackbox-exporter grafana内已导入基础的dashboard【7个…

PXIe-6396国产替代,8路AI(18位,14 MS/s/ch),2路A​O,24路DIO,PXI多功能I/O模块

PXIe,8路AI(18位,14 MS/s/ch),2路A​O,24路DIO,PXI多功能I/O模块 PXIe-6396是一款同步采样的多功能DAQ设备。该模块提供了模拟 I/O、数字I/O、四个32位计数器和模拟和数字触发。板载NI-STC3定时…

GAN生成对抗网络介绍

GAN简介 GAN 全称是Generative Adversarial Networks,即生成对抗网络。 “生成”表示它是一个生成模型,而“对抗”代表它的训练是处于一种对抗博弈状态中的。 一个可以自己创造数据的网络! 判别模型与生成模型 判别模型(Discr…

MobaXterm连接服务器步骤

双击该软件 选择Session 点击SSH 填写服务器的IP地址、服务器的用户名称、Port这个端口号一般都是这个,但有些可能例外,自己注意一下,最后点击OK就行 这个五角星点击一下,就可以看到您自己刚才的配置。 鼠标左键双击&…

python基础-base64编码理解

目录 1、base64是什么 2、base64有什么用 3、base64如何用 4、理解base64 5、扩展 1、base64是什么 base64 就是包括字母a-z,A-Z,数字0-9,符号“”,“/”一共64个字符的字符集;还有一个‘’ 字符,占位补充; …