Linux ssh免密登陆设置
使用 ssh-copy-id 命令来设置 SSH 免密登录,并确保所有相关文件和目录权限正确设置,可以按照以下步骤进行:
步骤 1:在源服务器(198.120.1.109)生成 SSH 密钥对
如果还没有生成 SSH 密钥对,首先需要在源服务器上生成它:
ssh-keygen -t rsa -b 2048
按提示操作,可以直接按 Enter 使用默认路径(~/.ssh/id_rsa)和空密码。
完成后,id_rsa 是私钥,id_rsa.pub 是公钥,它们将保存在 ~/.ssh/ 目录下。
步骤 2:使用 ssh-copy-id 将公钥复制到目标服务器(198.120.1.113)
在源服务器 198.120.1.109 上,使用以下命令将源服务器的公钥复制到目标服务器 198.120.1.113:
ssh-copy-id root@198.120.1.113
将 root替换为目标服务器 198.120.1.113 你自己的用户名。
该命令会要求你输入目标服务器的密码,输入正确的密码后,公钥(id_rsa.pub)将被自动复制到目标服务器的 ~/.ssh/authorized_keys 文件中。
步骤 3:确认目标服务器(198.120.1.113)权限设置
确保目标服务器的 ~/.ssh 目录和 authorized_keys 文件权限正确设置,否则免密登录会失败。
登录目标服务器 198.120.1.113:
ssh remote_user@198.120.1.113
确保目标服务器的 ~/.ssh 目录权限为 700,authorized_keys 文件权限为 600:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
~/.ssh 目录的权限需要为 700,确保只有文件所有者可以访问和修改该目录。
authorized_keys 文件的权限需要为 600,确保只有文件所有者可以读取和写入该文件。
步骤 4:确认源服务器(198.120.1.109)权限设置
在源服务器 198.120.1.109 上,确保 ~/.ssh 目录和 id_rsa 文件权限也正确:
登录源服务器 198.120.1.109:
ssh root@198.120.1.109
确保源服务器的 ~/.ssh 目录权限为 700,id_rsa 文件权限为 600:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
~/.ssh 目录的权限需要为 700。
id_rsa 文件的权限需要为 600,确保只有文件所有者可以读取该私钥。
步骤 5:确认免密登录是否成功
现在,你可以测试源服务器是否可以免密登录到目标服务器。执行以下命令,检查是否能够成功登录而不需要输入密码:
ssh root@198.120.1.113
如果一切配置正确,你应该可以直接登录目标服务器,而不需要输入密码。
步骤 6:反向配置(如果需要)
如果你还希望从目标服务器(198.120.1.113)免密登录到源服务器(198.120.1.109),你可以在目标服务器上生成 SSH 密钥,并使用 ssh-copy-id 将目标服务器的公钥复制到源服务器的 authorized_keys 文件中。具体步骤与上面相同。
在目标服务器(198.120.1.113)上生成 SSH 密钥对:
ssh-keygen -t rsa -b 2048
将目标服务器的公钥复制到源服务器的 authorized_keys 文件中:
ssh-copy-id remote_user@198.120.1.109
确保源服务器上的 ~/.ssh 目录和 authorized_keys 文件权限正确设置:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
测试是否可以从目标服务器免密登录到源服务器:
ssh root@198.120.1.109
总结:
ssh-copy-id 命令帮助你将公钥复制到目标服务器的 ~/.ssh/authorized_keys 文件中,以实现免密登录。
确保目标服务器和源服务器的 .ssh 目录和文件权限正确设置:~/.ssh 设置为 700,authorized_keys 和 id_rsa 设置为 600。
使用上述步骤,你可以在两台服务器之间实现 SSH 免密登录。
相关文章:
Linux ssh免密登陆设置
使用 ssh-copy-id 命令来设置 SSH 免密登录,并确保所有相关文件和目录权限正确设置,可以按照以下步骤进行: 步骤 1:在源服务器(198.120.1.109)生成 SSH 密钥对 如果还没有生成 SSH 密钥对,首先…...
CentOS7执行yum命令报错 Could not retrieve mirrorlist http://mirrorlist.centos.org
CentOS7执行yum命令报错 引更新yum源备份原有源创建新的源文件清理并重建缓存 引 CentOS 7 系统无法连接到 CentOS 的官方镜像站点。这通常是由于网络问题或 CentOS 7 已停止维护导致的(2024年6月30日后 CentOS 7 已进入 EOL) 报错明细: 已…...
【漏洞复现】Struts2系列
【漏洞复现】Struts2系列 1. 了解Struts21. Struts2 S2-061 RCE (CVE-2020-17530)1. 漏洞描述2. 影响版本3. 复现过程 1. 了解Struts2 Apache Struts2是一个基于MVC设计模式的Web应用框架,会对某些标签属性(比如 id)的…...
Sentinel源码—5.FlowSlot借鉴Guava的限流算法二
大纲 1.Guava提供的RateLimiter限流使用示例 2.Guava提供的RateLimiter简介与设计 3.继承RateLimiter的SmoothBursty源码 4.继承RateLimiter的SmoothWarmingUp源码 3.继承RateLimiter的SmoothBursty源码 (1)SmoothBursty的初始化流程 (2)SmoothBursty的初始化完成后的变量…...
下载electron 22.3.27 源码错误集锦
下载步骤同 electron源码下载及编译_electron源码编译-CSDN博客 问题1 从github 下载 dugite超时,原因没有找到 Validation failed. Expected 8ea2d0d3c9d9e4615069913207371ffe892dc10fb93975972f2f6e668f2e3b3a but got e3b0c44298fc1c149afbf4c8996fb92427ae41e…...
安卓的桌面 launcher是什么
安卓的桌面Launcher是一种安卓应用程序,它主要负责管理和展示手机主屏幕的界面以及相关功能,为用户提供与设备交互的主要入口。以下是其详细介绍: 功能 主屏幕管理:用户可以在主屏幕上添加、删除和排列各种应用程序图标、小部件…...
基础数学知识-线性代数
1. 矩阵相乘 c i j = a i k ∗ b k j c_{ij} = a_{ik} * b_{kj} cij=aik∗bkj 1. 范数 1. 向量的范数 任意一组向量设为 x ⃗ = ( x 1 , x 2 , . . . , x N ) \vec{x}=(x_1,x_2,...,x_N) x =(x1,x2,...,xN) 如下: 向量的1范数: 向量的各个元素的绝对值之和∥ …...
kubeadm极速部署Kubernetes 1.26.X 版本集群
1.1 Kubernetes 1.26版本集群部署环境准备 1.1.1 主机操作系统说明 序号操作系统及版本备注1CentOS7u9 1.1.2 主机硬件配置说明 需求CPU内存硬盘角色主机名值4C8G100GBmastermaster01值4C8G100GBworker(node)node01值4C8G100GBworker(node)node02 1.1.3 主机配置 1.1.3.1…...
重构未来智能:Anthropic 解码Agent设计哲学三重奏
第一章 智能体进化论:从工具到自主体的认知跃迁 1.1 LLM应用范式演进图谱 阶段技术形态应用特征代表场景初级阶段单功能模型硬编码规则执行文本摘要/分类进阶阶段工作流编排多模型协同调度跨语言翻译流水线高级阶段自主智能体动态决策交互编程调试/客服对话 1.1.…...
互联网大厂Java面试:微服务与分布式系统挑战
互联网大厂Java面试:微服务与分布式系统挑战 在互联网的大潮中,无数程序员怀揣着梦想,希望能在一线大厂找到自己的位置。今天的故事主角是马飞机,一位充满幽默感但技术略显水货的程序员。他来到了一家知名互联网公司参加Java开发…...
Gradle与Idea整合
文章目录 1. Groovy 简介2. Groovy 安装[非必须]3. 在idea中创建java工程 1. Groovy 简介 在某种程度上,Groovy可以被视为Java的一种脚本化改良版,Groovy也是运行在JVM上,它可以很好地与Java代码及其相关库进行交互操作。它是一种成熟的面向对象编程语言…...
基于springboot+vue的校园二手物品交易平台
开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…...
PoCL环境搭建
PoCL环境搭建 **一.关键功能与优势****二.设计目的****三.测试步骤**1.创建容器2.安装依赖3.编译安装pocl4.运行OpenCL测试程序 Portable Computing Language (PoCL) 简介 Portable Computing Language (PoCL) 是一个开源的、符合标准的异构计算框架,旨在为 OpenCL…...
【前端Skill】点击目标元素定位跳转IDE中的源代码
参考:https://juejin.cn/post/7326002010084311079 快手开源项目: https://github.com/zh-lx/code-inspector 目前在umi项目中用到 记录一下umi项目中如何使用 安装 npm i code-inspector-plugin -D --registryhttps://registry.npmmirror.com/ 配…...
OpenCV图像上加数字水印示例
OpenCV计算机视觉开发实践:基于Qt C - 商品搜索 - 京东 14.1 基本概念 当今,生成式人工智能(Artificial Intelligence Generated Content,AIGC)的火爆引燃了数字水印,说实话数字水印并不是一项新的技术&…...
Python爬虫从入门到实战详细版教程Char01:爬虫基础与核心技术
1.1 什么是网络爬虫? 1.1.1 定义与分类 网络爬虫:互联网世界的“信息捕手” 网络爬虫(Web Crawler),又称网络蜘蛛或网络机器人,是一种通过预设规则自动访问网页、提取数据的程序系统。从技术视角看,其核心任务是通过模拟浏览器行为向目标服务器发起请求,解析网页内容…...
使用blob文件流
1.后端 GetMapping(value "/static/**")public void view(HttpServletRequest request, HttpServletResponse response) {// ISO-8859-1 > UTF-8 进行编码转换String imgPath extractPathFromPattern(request);if(oConvertUtils.isEmpty(imgPath) || imgPath&q…...
Day-1 漏洞攻击实战
实训任务1 漏洞攻击实战一 使用 御剑 得到网站后台地址 数据库登录与日志配置 使用默认密码 root:root 登录phpMyAdmin,执行 SHOW VARIABLES LIKE general% 查看日志状态。 开启日志功能:set global general_log "ON";(配图&…...
AOSP Android14 Launcher3——RecentsView最近任务数据加载
最近任务是Launcher中的一个重要的功能,显示用户最近使用的应用,并可以快速切换到其中的应用;用户可以通过底部上滑停顿进入最近任务,也可以在第三方应用底部上滑进最近任务。 这两种场景之前的博客也介绍过,本文就不…...
基于深度学习的校园食堂菜品智能结算系统
校园食堂菜品智能结算系统说明文档 1. 系统概述 本系统是一款基于YOLO深度学习算法的校园食堂菜品智能结算平台,旨在通过计算机视觉技术实现食堂菜品的自动识别与结算,提高结算效率,减少人工成本,优化用户体验。系统采用PyQt5框…...
【UniApp】Vue2 scss 预编译器默认已由 node-sass 更换为 dart-sass
从 HBuilderX 4.56 ,vue2 项目也将默认使用 dart-sass 预编译器。 vue2开发者sass预处理注意: sass的预处理器,早年使用node-sass,也就是vue2最初默认的编译器。 sass官方推出了dart-sass来替代。node-sass已经停维很久了。 另…...
AI 硬件定制:开启智能新时代的钥匙
AI 硬件定制:开启智能新时代的钥匙 在科技飞速发展的当下,人工智能(AI)已不再是遥不可及的概念,它正以惊人的速度融入我们生活的方方面面。从智能手机中的语音助手,到工厂里的自动化生产线,AI 的身影无处不在。而在这股 AI 浪潮中,AI 硬件定制正逐渐崭露头角,成为推动…...
SpringBoot中配置文件的加载顺序
下面的优先级由高到低 命令行参数java系统属性java系统环境变量外部config文件夹的application-{profile}.ym文件外部的application-{profile}.ym文件内部config文件夹的application-{profile}.ym文件内部的application-{profile}.ym文件外部config文件夹的application.ym文件外…...
hooker frida版just_trust_me.js 2025升级 支持boringssl unpinning
曾几何时,我翻版了 Xposed 的 just_trust_me.apk, just_trust_me.js 脚本仿佛是一张通行证,让我们在 SSL Pinning 的高墙前轻松穿越。 但时代变了。BoringSSL、Cronet、静态 inline hook、动态 verify callback……一切都变得更加隐蔽和棘手…...
React Article模块
实现基础文章发布 安装富文本编辑器 使用useEffect钩子函数获取到channelList,对channelList函数进行一个遍历 渲染到option 实现表单校验 1给Form组件绑定onFinish()函数 拼接表单数据 上传封面 onChange函数获得的参数...
机器学习第二篇 多变量线性回归
数据集:世界幸福指数数据集中的变量有幸福指数排名、国家/地区、幸福指数得分、人均国内生产总值、健康预期寿命、自由权、社会支持、慷慨程度、清廉指数。我们选择GDP per Capita和Freedom,来预测幸福指数得分。 文件一:linear,…...
C语言对n进制的处理
先看一道题目: 从键盘获取一个正整数,如果把它转为16进制的数字,那么它是一个几位数呢?如果把它转为28进制又是一个几位数呢? 在讲这个题目之前,我们先要了解进制转换 什么是进制转换? 简单来说,进制就是数位的表示方法。 十进制(常用&am…...
【EasyPan】文件上传、文件秒传、文件转码、文件合并、异步转码、视频切割分析
【EasyPan】项目常见问题解答(自用&持续更新中…)汇总版 文件上传方法解析 一、方法总览 Transactional(rollbackFor Exception.class) public UploadResultDto uploadFile(...)核心能力: 秒传验证:通过MD5文件大小实现文…...
Ubuntu数据连接访问崩溃问题
目录 一、分析问题 1、崩溃问题本地调试gdb调试: 二、解决问题 1. 停止 MySQL 服务 2. 卸载 MySQL 相关包 3. 删除 MySQL 数据目录 4. 清理依赖和缓存 5.重新安装mysql数据库 6.创建程序需要的数据库 三、验证 1、动态库更新了 2、头文件更新了 3、重新…...
Oracle DBA 高效运维指南:高频实用 SQL 大全
大家好,这里是 DBA学习之路,专注于提升数据库运维效率。 目录 前言Top SQL表空间使用率RMAN 备份DataGuard等待事件行级锁在线日志切换用户信息ASM 磁盘组DBLink数据文件收缩AWR 写在最后 前言 作为一名 Oracle DBA,在日常数据库运维工作中&…...
