服务器的密码不是一成不变的,为避免密码变更对服务器间调用的影响,可以设置服务器的免密登录。
下面以A登录B服务器为例。讲述如何实现这一过程。
使用命令ssh-keygen -t rsa
在A机器上执行,生成密钥:
[cff@myxls98 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/cff/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /cff/.ssh/id_rsa.
Your public key has been saved in /cff/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:3AZRz6YEtvNNwADIrtCfDcRQasG8glmfRrF9t6ANSwE cff@myxls98
The key's randomart image is:
+---[RSA 2048]----+
| .=J=o.=+o |
| .B= o +.+ |
| ..+= + * o = |
|.+.oo+ A O * |
|o..o=+o B * . |
| .oo . . |
| |
| |
| |
+----[SHA256]-----+
一路enter即可。
在A机器上执行,执行命令ssh-copy-id -i ~/.ssh/id_rsa.pub B机器ip
,输入B的密码即可。
成功之后,在B机器的~/.ssh/authorized_keys
文件中,会增加id_rsa.pub文件的内容。
ssh-copy-id命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上,ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh
, 和~/.ssh/authorized_keys
设置合适的权限。
这一步也可以手动去完成,但是会有点麻烦:
scp id_rsa.pub
.ssh/authorized_keys
若不存在,手动创建: cat id_rsa.pub >> authorized_keys
.ssh
目录的权限必须是700 ,chmod 700 .ssh
chmod 600 authorized_keys
在A机器上执行:
ssh user@B机器ip
不需要输入密码了。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有