Linux ssh 免密登录配置

参考资料

  1. ~/.ssh/configについて
  2. ~/.ssh/configを使ってSSH接続を楽にする
  3. .ssh/configファイルでSSH接続を管理する

目录

  • 一. 密钥生成
    • 1.1 生成工具
      • 1.1.1 OpenSSH
      • 1.1.2 Git
    • 1.2 生成命令
    • 1.3 注意事项
    • 1.4 解决路径中的用户名乱码
  • 二. 将公钥配置到目标服务,免密登录
    • 2.1 方式1 ssh-copy-id命令行工具
    • 2.2 方式2 手动添加
    • 2.3 效果
  • 三. 免密登录config文件配置
    • 3.1 效果
  • 四. 服务器端公钥位置修改


一. 密钥生成

1.1 生成工具

1.1.1 OpenSSH

⏹Win10系统默认安装了,OpenSSH

在这里插入图片描述

⏹在C:\Windows\System32\OpenSSH\路径中,可以看到可执行文件。

在这里插入图片描述

1.1.2 Git

⏹如果系统中安装了Git,那么在默认的安装路径C:\Program Files\Git\usr\bin中也可找到ssh可实行文件。

在这里插入图片描述

1.2 生成命令

⏹在命令行窗口,输入下面的命令,即可生成一对公钥和私钥。

  • -C:为密钥添加注释,通常用于标识密钥。如果忽略此选项,则会使用用户名@主机名来当做密钥注释添加到密钥中。

  • -f:用户指定密钥生成的路径和密钥名称,默认情况下,密钥将保存到

    • ~/.ssh/id_rsa(私钥)
    • ~/.ssh/id_rsa.pub(公钥)
# windows中
ssh-keygen -t rsa -C "fengyehong123@example.com" -f C:\Users\用户名称\.ssh\ubuntu22_key# linux中
ssh-keygen -t rsa -C "fengyehong123@example.com" -f ~/.ssh/id_rsa

1.3 注意事项

⏹在Windows中,如果当前的用户名中包含汉字,在未指定密钥生成的路径的情况下,会乱码。

在这里插入图片描述

⏹使用Git自带的ssh工具进行生成,可以避免汉字用户名的乱码问题,但是默认情况下Win10自带的OpenSSH,在环境变量中的权限高于Git中的权限,所以直接在命令行中输入ssh-keygen命令,调用的是OpenSSH的ssh命令,并非Git中的命令。

在这里插入图片描述

1.4 解决路径中的用户名乱码

⏹方式1:指定生成密钥的路径中不包含汉字

在这里插入图片描述

⏹方式2:直接使用git命令行窗口进行生成(此时使用的是git的ssh工具)

在这里插入图片描述

⏹方式3:修改环境变量,降低OpenSSH工具的优先顺(此时使用的是git的ssh工具)

在这里插入图片描述


二. 将公钥配置到目标服务,免密登录

2.1 方式1 ssh-copy-id命令行工具

⏹通过ssh-copy-id指定本地公钥的路径,传输到目标服务器上

ssh-copy-id -i ~/.ssh/id_rsa.pub apluser@192.168.118.136

⏹下图所示,通过Git的命令行窗口,将公钥配置到目标服务器上

在这里插入图片描述

⏹公钥传输完毕之后,在目标服务器的~/.ssh/authorized_keys路径中可以看到。

在这里插入图片描述

2.2 方式2 手动添加

⏹可以将公钥上传到服务器,然后添加到authorized_keys文件中

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

⏹由于是手动添加,所以需要在服务器端重启一下ssh服务

/etc/init.d/ssh restart

2.3 效果

⏹如果我们的私钥存储在当前用户的.ssh文件夹中,输入ssh apluser@192.168.118.136即可免密登录。

在这里插入图片描述

⏹如果我们的私钥并不存储在当前用户的.ssh文件夹中,指定私钥的位置,即可完成免密登录。

ssh apluser@192.168.118.136 -i 私钥的位置

在这里插入图片描述


三. 免密登录config文件配置

⏹config

Host ubuntu_22HostName 192.168.118.136User apluserPort 22StrictHostKeyChecking no# 指定密钥的位置IdentityFile D:\id_rsa

3.1 效果

⏹如下图所示,直接通过配置文件中的别名,完成免密登录。

在这里插入图片描述


四. 服务器端公钥位置修改

⏹在服务器端的/etc/ssh/sshd_config文件中,有关于认证文件的配置
如果不想让公钥存储在默认路径下,可修改AuthorizedKeysFile的相关内容,指定公钥路径

apluser@ubuntu221:~$ ls -l /etc/ssh/sshd_config
-rw-r--r-- 1 root root 3255 Aug  9 02:33 /etc/ssh/sshd_config
apluser@ubuntu221:~$
apluser@ubuntu221:~$ grep AuthorizedKeysFile /etc/ssh/sshd_config
#AuthorizedKeysFile     .ssh/authorized_keys .ssh/authorized_keys2

⏹修改sshd_config配置文件,需要root用户权限

在这里插入图片描述

  • %h:当前用户的主目录

在这里插入图片描述

⏹修改完毕之后,同样需要在服务器端重启一下ssh服务,确保配置文件实时反映。

/etc/init.d/ssh restart

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

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

相关文章

Spring Boot集成encache快速入门Demo

1.什么是encache EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的 CacheProvider。 Ehcache 特性 优点 快速、简单支持多种缓存策略:LRU、LFU、FIFO 淘汰算法缓存数据有两级:内存和磁盘&a…

Linux bash脚本 远程开发环境配置

参考资料 太香了,VSCode远程开发插件,值得一试Visual Studio Code で Remote SSH する。Managing extensions 目录 一. 远程开发必备二. 连接远程开发服务器三. 安装远程开发插件 一. 远程开发必备 ⏹ VSCode插件 Remote - SSH 通过使用 SSH 链接虚拟…

C++之多态篇(超详细版)

1.多态概念 多态就是多种形态,表示去完成某个行为时,当不同的人去完成时会有不同的形态,举个例子在车站买票,可以分为学生票,普通票,军人票,每种票的价格是不一样的,当你是不同的身…

如何高效删除 MySQL 日志表中的历史数据?实战指南

在处理高并发的物联网平台或者其他日志密集型应用时,数据库中的日志表往往会迅速增长,数据量庞大到数百GB甚至更高,严重影响数据库性能。如何有效管理这些庞大的日志数据,特别是在不影响在线业务的情况下,成为了一项技…

使用Windows远程桌面连接Linux

要在Kali Linux上使用Windows远程桌面连接(MSTSC.exe),你可以通过配置xrdp服务来实现。以下是在Kali Linux上设置xrdp以便Windows远程桌面连接的具体步骤: 一、安装xrdp和Xfce桌面环境 更新软件包列表: 打开终端&…

Python和C++混淆矩阵地理学医学物理学视觉语言模型和算法模型评估工具

🎯要点 优化损失函数评估指标海岸线检测算法评估遥感视觉表征和文本增强乳腺癌预测模型算法液体中闪烁光和切伦科夫光分离多标签分类任务性能评估有向无环图、多路径标记和非强制叶节点预测二元分类评估特征归因可信性评估马修斯相关系数对比其他准确度 Python桑…

基于C++和Python的进程线程CPU使用率监控工具

文章目录 0. 概述1. 数据可视化示例2. 设计思路2.1 系统架构2.2 设计优势 3. 流程图3.1 C录制程序3.2 Python解析脚本 4. 数据结构说明4.1 CpuUsageData 结构体 5. C录制代码解析5.1 主要模块5.2 关键函数5.2.1 CpuUsageMonitor::Run()5.2.2 CpuUsageMonitor::ComputeCpuUsage(…

大数据技术:Hadoop、Spark与Flink的框架演进

大数据技术,特别是Hadoop、Spark与Flink的框架演进,是过去二十年中信息技术领域最引人注目的发展之一。这些技术不仅改变了数据处理的方式,而且还推动了对数据驱动决策和智能化的需求。在大数据处理领域,选择合适的大数据平台是确…

有些硬盘录像机接入视频汇聚平台EasyCVR后通道不显示/显示不全,该如何处理?

EasyCVR视频监控汇聚管理平台是一款针对大中型项目设计的跨区域网络化视频监控集中管理平台。该平台不仅具备视频资源管理、设备管理、用户管理、运维管理和安全管理等功能,还支持多种主流标准协议,如GB28181、RTSP/Onvif、RTMP、部标JT808、GA/T 1400协…

排序算法剖析

文章目录 排序算法浅谈参考资料评价指标可视化工具概览 插入排序折半插入排序希尔排序冒泡排序快速排序简单选择排序堆排序归并排序基数排序 排序算法浅谈 参考资料 数据结构与算法 评价指标 稳定性:两个相同的关键字排序过后相对位置不发生变化时间复杂度空间复…

数据挖掘-padans初步使用

目录标题 Jupyter Notebook安装启动 Pandas快速入门查看数据验证数据建立索引数据选取⚠️注意:排序分组聚合数据转换增加列绘图line 或 **(默认):绘制折线图。bar:绘制条形图。barh:绘制水平条形图。hist&…

QT将QBytearray的data()指针赋值给结构体指针变量后数据不正确的问题

1、问题代码 #include <QCoreApplication>#pragma pack(push, 1) typedef struct {int a; // 4字节float b; // 4字节char c; // 1字节int *d; // 8字节 }testStruct; #pragma pack(pop)#include <QByteArray> #include <QDebug>int main() {testStruct …

leetcode练习 路径总和II

给你二叉树的根节点 root 和一个整数目标和 targetSum &#xff0c;找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum 22 输出&a…

告别传统互动:AI数字人正全面进入人类社会

大家好&#xff0c;我是Shelly&#xff0c;一个专注于输出AI工具和科技前沿内容的AI应用教练&#xff0c;体验过300款以上的AI应用工具。关注科技及大模型领域对社会的影响10年。关注我一起驾驭AI工具&#xff0c;拥抱AI时代的到来。 今天我们来聊聊AI数字人&#xff01; 当我…

全网最详细kubernetes中的资源

1、资源管理介绍 在kubernetes中&#xff0c;所有的内容都抽象为资源&#xff0c;用户需要通过操作资源来管理kubernetes。 kubernetes的本质上就是一个集群系统&#xff0c;用户可以在集群中部署各种服务。 所谓的部署服务&#xff0c;其实就是在kubernetes集群中运行一个个的…

C语言基础(7)之操作符(1)(详解)

目录 1. 各种操作符介绍 1.1 操作符汇总表 2. 移位操作符 2.1 移位操作符知识拓展 —— 原码、反码、补码 2.2 移位操作符讲解 2.2.1 右移操作符 ( >> ) 2.2.2 左移操作符 ( << ) 3. 位操作符 3.1 & (按位与) 3.2 | (按位或) 3.3 ^ (按位异或) 3.4…

gm/ID设计方法学习笔记(一)

前言&#xff1a;为什么需要gm/id &#xff08;一&#xff09;主流设计方法往往侧重于强反型区&#xff08;过驱>0.2V&#xff09;&#xff0c;低功耗设计则侧重于弱反型区&#xff08;<0&#xff09;&#xff0c;但现在缺乏对中反型区的简单和准确的手算模型。 1.对于…

10月2日笔记(内网资源探测篇)

内网资源探测 在内网渗透中&#xff0c;测试人员往往需要通过各种内网扫描技术来探测内网资源的情况&#xff0c;为后续的横向渗透做准备&#xff0c;通常需要发现内网存活的主机&#xff0c;并探测主机的操作系统、主机开放了哪些端口、端口上运行了哪些服务、服务的当前版本…

SQL SERVER 从嫌弃存储到爱上存储过程我给存储过程开发了版本控制工具和远程调试功能...

优缺点 SQL SERVER 爱上存储过程我给存储过程开发了版本控制工具和远程调试功能 先说说 存储过程的优缺点吧存储过程的优点 提高执行效率&#xff1a;存储过程是预编译的&#xff0c;执行速度较快&#xff0c;减少了网络传输量。 减少开发工作量&#xff1a;存储过程可以将复杂…

数据结构——对顺序线性表的操作

大家好啊&#xff0c;今天给大家分享一下对于顺序线性表的相关操作&#xff0c;跟随我的步伐来开始这一篇的学习吧&#xff01; 如果有知识性错误&#xff0c;欢迎各位指正&#xff01;&#xff01;一起加油&#xff01;&#xff01; 创作不易&#xff0c;希望大家多多支持哦…