Ubuntu18.04设置SSH密钥登录
我们一般使用 VSCode 、MobaXterm、PuTTY等 SSH 客户端来远程管理 Linux 服务器。但是,一般的密码方式登录,容易有密码被暴力破解的问题。所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者禁用 root 账户登录。但是即使是将端口设置为22之外的端口也容易泄露。为了保证服务器安全,此时希望使用密钥方式登录。而且使用秘钥登录能够避免每次登录时反复输入账户密码。
密钥形式登录的原理是:利用密钥生成器制作一对密钥——公钥和私钥。将公钥添加到服务器的某个账户上,然后在客户端利用私钥即可完成认证并登录。这样一来,没有私钥,任何人都无法通过 SSH 暴力破解你的密码来远程登录到服务器。
制作密钥对
使用Ubuntu命令
ssh-keygen

第一步是保存密钥位置
第二步是为秘钥设置一个密码:如果输入的话以为只即使被人有你的秘钥没有你的密码也是无法登录你的服务器的这样会比较保险但也比较繁琐,直接回车表示不设置密码;
第三步是确认密码,如果没有设置的话可以直接回车。后面的信息是给出秘钥保存的位置 和秘钥信息。
最终我们可以看到在 /home目录下的 time目录中生成了一个隐藏目录 .ssh。里面包含两个密钥文件,id_rsa 为私钥,id_rsa.pub 为公钥。
使用Mobaxterm生成密钥


对,没看错,进度条旁边移动鼠标来增加随机性,加速生成密钥

从上到下分别是:公钥、密码(可以没有)、确认密码(可以没有)、保存私钥
我们保存好公钥、密钥打死都不给
Ubuntu 开启密钥登录
将公钥拷贝放到 /root/(可能有用户名)/.ssh/下,并改名为 authorized_keys
赋予权限
chmod 600 authorized_keys
chmod 700 ~/.ssh
配置SSH,打开秘钥登录功能
sudo vim /etc/ssh/sshd_config
# 开启密钥登录
RSAAuthentication yes
PubkeyAuthentication yes#root 用户能否通过 SSH 登录
PermitRootLogin yes
验证密钥可以登录后再增加这个,留一条后路
# 禁用密码登录
PasswordAuthentication no
重启 SSH 服务
service sshd restart
使用Mobaxterm连接

这个文件指定私钥文件
同样的 在pycharm这样连接

相关文章:
Ubuntu18.04设置SSH密钥登录
我们一般使用 VSCode 、MobaXterm、PuTTY等 SSH 客户端来远程管理 Linux 服务器。但是,一般的密码方式登录,容易有密码被暴力破解的问题。所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者禁用 root 账户登录。但是即…...
自动化运维管理工具----------Ansible模块详细解读
目录 一、自动化运维工具有哪些? 1.1Chef 1.2puppet 1.3Saltstack 二、Ansible介绍 2.1Ansible简介 2.2Ansible特点 2.3Ansible工作原理及流程 2.3.1内部流程 2.3.2外部流程 三、Ansible部署 3.1环境准备 3.2管理端安装 ansible 3.3Ansible相关文件 …...
零基础代码随想录【Day27】|| 39. 组合总和,40.组合总和II, 131.分割回文串
目录 DAY27 39. 组合总和 解题思路&代码 40.组合总和II 解题思路&代码 131.分割回文串 解题思路&代码 DAY27 39. 组合总和 力扣题目链接(opens new window) 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有…...
实验15 MVC
二、实验项目内容(实验题目) 编写代码,掌握MVC的用法。 三、源代码以及执行结果截图: inputMenu.jsp: <% page contentType"text/html" %> <% page pageEncoding "utf-8" %> &…...
《Python编程从入门到实践》day21
# 昨日知识点回顾 设置背景颜色 在屏幕中央绘制飞船 # 今日知识点学习 12.5 重构:方法_check_events()和_update_screen() 12.5.1 方法_check_events() import sys import pygame from Settings import Settings from Ship import Shipclass AlienInvasion:"…...
上位机图像处理和嵌入式模块部署(树莓派4b镜像烧录经验总结)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 陆陆续续也烧录了好多次树莓派的镜像了,这里面有的时候很快,有的时候很慢。特别是烧录慢的时候,也不知道是自己…...
简单数据加解密,JS和JAVA同时实现
前端Vue调用Java后端接口中的数据进行加密,以避免敏感数据泄露。 现在实现一个高性能加密方法,用来对数据进行加密后传输。算法包括JS的加密和解密方法,也包括Java的加密解密方法。 可以在前端加密,后端解密。也可以在后端加密&…...
Android Framework中PackageManagerService的深度剖析
摘要 Android操作系统的核心服务之一——PackageManagerService(PMS),扮演着至关重要的角色,负责维护系统中所有应用程序的生命周期管理。本文旨在全面探讨PMS的功能特性、工作流程、实际应用场景,并对其进行优劣分析,以期为开发者…...
(AI Web、ChatGPT Native、Ai Loading、AI Tools、知豆AI)
目录 1、AI Web 2、ChatGPT Native 3、Ai Loading 4、AI Tools 5、知豆AI 1、AI Web...
VBA 批量处理Excel文件
目录 一. 批量创建Excel文件1.1 VBA的方式1.2 Powershell方式 二. 批量删除文件三. 批量重命名文件四. 合并多个Excel数据到一个Excel文件中 一. 批量创建Excel文件 1.1 VBA的方式 Sub CreateFiles()Dim strPath As String, strFileName As StringDim i As Long, rDim pathSe…...
PG实例连接访问控制
实例访问控制可以控制来自于不同主机,不同用户是否允许访问指定的数据库,以及验证方式。 与oracle中的连接管理器的功能相同,之前有写过一篇oracleCMAN连接管理器的配置实操: 配置oracle连接管理器(cman)…...
2024-05-07 商业分析-如何在社会层面做一个更好的工具人-记录
摘要: 2024-05-07 商业分析-如何成为一个靠谱的工具人 如何在社会层面做一个更好的工具人 那么今天讲的这个主题呢,对吧?你们一看啊,就觉得这个就不应该我讲是吧啊,但是呢这个逻辑呢我还得跟你们讲一下啊,就是如何成为…...
C++设计模式-创建型设计模式
设计模式 设计模式是什么 设计模式是指在软件开发中,经过验证的,用于解决在特定环境下,重复出现的,特定问题的解决方案;其实就是解决问题的固定套路。但是要慎用设计模式,有一定的工程代码量之后用它比较…...
code-server容器webpack的ws无法连接解决方法
TLDR 通过指定client的wsrul去连接ws devServer.client.webSocketURL ‘wss://<Forwarded uri>/ws’ 拓扑 1、code-server: 用于编写代码、启动webpack dev-server 服务;[https://<domain>:8001] 2、webpack: 用于浏览dev-server服务;[ht…...
leetcode47-Permutations II
分析 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 题目 由于元素是重复的,要求返回不重复的,所以一定会有…...
246 基于matlab的交流电机动态方程
基于matlab的交流电机动态方程,用于交流电机动态分析。输入电机的额定功率(kW)、电机的额定转速(r/min)、转子外径(m)、铁心长(m)转子槽数、电机极对数 等参数,输出转速变化、力矩变化等结果。程序已调通,可直接运行。 246 交流电机动态 转速…...
7天入门Android开发之第2天——四大组件之活动
一、活动是什么 活动(Activity)是 Android 应用程序中的一个重要组件,它代表用户界面上的单个窗口,通常会填充整个屏幕。通过活动,可以创建各种各样的用户界面,并控制界面的行为。活动可以包含各种 UI 元素…...
自然语言(NLP)
It’s time for us to learn how to analyse natural language documents, using Natural Language Processing (NLP). We’ll be focusing on the Hugging Face ecosystem, especially the Transformers library, and the vast collection of pretrained NLP models. Our proj…...
学习java第六十天
Advice的类型: (1)前置通知(Before Advice):在连接点(Join point)之前执行的通知。 (2)后置通知(After Advice):当连接点退…...
OpenFeign修改HttpClient为Apache HttpClient 5
OpenFeign中http client 如果不做特殊配置,OpenFeign默认使用JDK自带的HttpURLConnection发送HTTP请求, 由于默认HttpURLConnection没有连接池、性能和效率比较低。所以修改为Apache HttpClient 5。 总结为两步: 加依赖改yml 具体操作请往…...
实战指南:基于快马平台与Touchgal,从零开发移动端手写绘图应用
今天想和大家分享一个实战项目:基于Touchgal开发移动端手写绘图应用。这个项目特别适合需要复杂手势交互的场景,比如绘图软件、地图导航等。下面我会详细介绍整个开发流程和关键实现点。 项目初始化与环境搭建 首先需要创建一个基础的HTML5项目结构。画…...
黑客为什么不攻击微信钱包?
黑客为什么不攻击微信钱包? 现在人人手机里都装着微信和支付宝,里面都或多或少存了些钱。怎么从来没听说谁的钱被技术牛逼黑客惦记走? 是黑客没攻击过?还是黑客不敢攻击?其实都不是。阿里巴巴首席风险官郑俊芳就说过&…...
从make clean到build.prop:揭秘Android系统属性生成的完整链条
从make clean到build.prop:揭秘Android系统属性生成的完整链条 当你通过adb shell getprop ro.build.display.id查看设备版本号时,是否好奇过这个字符串背后的生成逻辑?在Android编译系统中,从Makefile执行到最终生成build.prop文…...
FeignClient调用接口参数为null?可能是这个阿里规范在作怪
FeignClient参数丢失陷阱:从布尔类型序列化到企业级解决方案 微服务架构下,FeignClient作为声明式HTTP客户端,其简洁的API设计让远程调用如同本地方法般自然。但当你的DTO对象中那个精心设计的isActive字段在服务端始终显示为null时ÿ…...
云计算算力价格波动:行业重构与竞争新格局
云计算价格反转:从价格战到集体涨价2025年4月,阿里云率先发起价格战,京东云、腾讯云、华为云等纷纷跟进,“最高降幅达60%”的口号让行业陷入价格混战。然而,到了2026年3月,市场风向突变,谷歌云、…...
写段代码教会你什么是HOOK技术?HOOK技术能干什么?
起因是我想在搞一些操作windows进程的事情时,老是需要右键以管理员身份运行,感觉很麻烦。就研究了一下怎么提权,顺手瞄了一眼Windows下用户态权限分配,然后也是感谢《深入解析Windows操作系统》这本书给我偷令牌的灵感吧ÿ…...
springboot+vue基于web的在线试题库考试系统的设计系统
目录同行可拿货,招校园代理 ,本人源头供货商功能模块设计技术实现要点扩展功能建议安全注意事项项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作同行可拿货,招校园代理 ,本人源头供货商 功能模块设计 后端(SpringB…...
提示工程代码审查避坑指南:10个容易犯的低级错误
提示工程代码审查避坑指南:10个容易犯的低级错误 引言:为什么提示工程需要“代码审查”? 在AI时代,提示词(Prompt)是人类与大语言模型(LLM)沟通的“桥梁”。就像程序员写代码需要评审…...
【Skills开发实战指南】第01篇:Skills开发入门:AI助手的能力扩展革命
快速导航 读完本文,你将获得: ✅ 深入理解Skills是什么以及为什么需要它✅ 掌握Skills在AI编程工具中的核心价值✅ 了解Skills的完整生态和应用场景✅ 明确Skills开发的学习路径和资源✅ 准备好开始你的第一个Skills开发项目 一、Skills是什么…...
TDAD:测试驱动的AI智能体开发
Test-Driven AI Agent Definition (TDAD) 论文核心原理解析与实例说明 TDAD 提示词演化逻辑与完整实例 TDAD的提示词演化,完全遵循测试驱动的闭环迭代逻辑:由TestSmith生成的visible tests(可见测试用例)作为唯一迭代标尺,PromptSmith智能体通过「失败用例根因分析→提示…...
