无密码ssh登录linux

简介

ssh是常见的远程登录linux的方式,大部分时候需要输入用户名密码登录。本文介绍如何无密码登录linux,适用于mac和linux,windows不清楚。
不过这不是什么新的知识,基本上大家都知道。
除了可以用于ssh登录外,还可以用于scp拷贝。

模拟环境

假设存在3台电脑,A、B和S,A和B都需要通过ssh登录s。前提这三台都是Linux。其中A上面的用户是aa,B上面的用户是bb,S上面的用户是ss。

在A上面的操作

ssh-keygen -t rsa 

一直回车就好。
程序执行之后,会生成文件~/.ssh/id_rsa.pub
这个文件看一下一般都是如下内容:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9PMQ6vrOnRfjrMTFsYXCnA66TJ1CEHNlPB8TY+Zannv5SmU16kfray/piuNTV955iidjY4JADuEdD34ZaGCPodcpoXvmGVphQmreeDuL8jizB8MWrYGZwEhIySFplCVUIgS3fzE1cpyKr3z8+RnEkO4Tah+R2edORh+kwk3SSHx+hT82gm/lPXzJViy966pePd1csGRo16ylQOxJRNc6ye7ak0Q0UtFVz1gySFifLKYHB84PJMnGtAg92PIwFIO0dobO7LMdwVRspiF+YUa3C93habPNDxUlEyYm+GQk9glpWC/U9RMx6U2kptbS2L9yUXmPUxr7UcjzLRdWHlKN1 zhaochunhui1985@gmail.com

把这个文件复制到S上去。

scp /home/aa/.ssh/id_rsa.pub ss@S:/home/ss/.ssh/a.keys

注意,上面的aa ss和S都要替换成相应的用户和ip地址。

在S上面的操作

登录到S上面,执行如下命令:

cat a.keys >> authorized_keys
rm a.keys

命令的意思是把a的key追加到authorized_keys后面

A可以无密码登录

再次从A登录S就可以了。

在B和S上面操作

在B和S上面做同样的操作,可以完成B无密码登录S。

原文地址:https://www.cnblogs.com/wardensky/p/7756242.html