Linux下公私钥登录

2024-05-16 13:38
文章标签 linux 登录 公私

本文主要是介绍Linux下公私钥登录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发中ssh远程登录linux主机是很常见的操作,但是常见的登录方式是用户名/密码,缺点就是每次都需要输入密码,如果不小心输错了就很抓狂了,稍显麻烦。

另外一种比较常用且安全的免密码登录方式就是私钥登录,目标主机上保存一份公钥,需要登录到该主机上时使用私钥即可登录,可以免去输入密码的麻烦。

如果对于公私钥的概念不太清楚,可以看下这篇文章,个人觉得讲得很好 ------【转载】公钥、私钥、数字签名等知识。

以下为公私钥登录的完整步骤

1、使用ssh-kegen命令生成公私钥

可以看到/root/.ssh目录下已经生成了对应的公私钥对

2、将公钥信息写入到私钥登录时的校验文件

通过查看/etc/ssh/sshd_config中的配置信息发现此校验文件默认情况下是当前用户的.ssh目录下的authorized_keys

上一步看到我机器上没有这个文件,所以需要手动创建,然后将公钥信息写入其中

3、将私钥信息分发到需要使用私钥登录的用户手中

此处作为演示,将私钥文件拷贝到本机上

4、在终端模拟软件上导入私钥进行登录

此处以xShell为例,登录时选择Public Key(U)按钮然后选择上一步得到的私钥,点击确定完成导入

导入后再次击确定即可完成私钥登录,由于前面没有设置私钥的密码,所以此处不用输入密码,即免密码登录

到这一步,我们就完成了私钥登录。当然我们这里没有设置密码,相当于免密码登录。

如果登录失败,可以在远程主机上查看 /var/log/secure及/var/log/audit/audit.log日志来确定哪里出现了问题。

前面第1步的时候提到可以设置私钥密码,如果设置了密码,那使用私钥登录岂不是跟普通的用户名/密码方式登录没啥区别了吗?

搜索了相关资料(参考SSH应该使用密钥还是密码?)后得到的结论是,使用私钥的方式如果不设置密码,一旦私钥落到别人手中则相当危险。而好的密码则相比之下更安全。这两者可以认为是安全性和便捷性的比较,就看用户怎么选择了。

 

这篇关于Linux下公私钥登录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/995067

相关文章

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Linux在线解压jar包的实现方式

《Linux在线解压jar包的实现方式》:本文主要介绍Linux在线解压jar包的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux在线解压jar包解压 jar包的步骤总结Linux在线解压jar包在 Centos 中解压 jar 包可以使用 u

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon