IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

SSH无密码登录

AgilePHP 2011-06-01 23:44:27 累计浏览 5,523 次
本机暂存

一直都有用到这个,但是每次用都要去查一下,干脆现在记下来。

除了通过交互式的方式输入用户名和密码以为,SSH中还可以通过一种“公私钥”的方式进行登录,具体的原理为:

  • 首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)
  • 然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥
  • 当ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了

具体的实现方法如下:
user@ubuntu:~$ ssh-keygen -t rsa -P “”
Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Created directory ‘/home/user/.ssh’.
Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.
The key fingerprint is:
9b:82:ea:58:b4:e0:35:d7:ff:19:66:a6:ef:ae:0e:d2 hadoop@ubuntu
The key’s randomart image is:
[...snipp...]

user@ubuntu:~$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

主要就是红色的命令,一个是生成公私钥对,类型是rsa,当然也可以是dsa啥的。然后第二条命令就是把公钥放到受信公钥文件里。这个时候使用

ssh user@localhost

就可以直接登录不用再输入密码了。当然配置多台机器用scp搞一下就成,这里我就不详说了。

同分类推荐文章

  1. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)
  2. WARNING: detected duplicate paths to the same disk导致crs无法正常启动故障解决 (2026-05-24 22:24:49)
  3. Terraform 极简入门:从 AWS-CLI 到基础设施即代码(IaC) (2026-05-20 08:00:00)

查看更多 DevOps 文章 →

建议继续学习

  1. Linux如何统计进程的CPU利用率 (累计阅读 16,210)
  2. 我的 RHCA 之路 (累计阅读 13,930)
  3. Linux内存点滴 用户进程内存空间 (累计阅读 13,058)
  4. 给程序员新手的一些建议 (累计阅读 13,025)
  5. Linux 性能监控、测试、优化工具 (累计阅读 12,955)
  6. 关于linux内存free的一些事情 (累计阅读 12,755)
  7. 高效Linux用户需要了解的命令行技能 (累计阅读 12,750)
  8. ps - 按进程消耗内存多少排序 (累计阅读 12,609)
  9. Google怎么用linux (累计阅读 12,472)
  10. find命令的一点注意事项 (累计阅读 11,787)