每次黑框框登陆机器都需要输入密码,只要对方识别我,就不需要输入密码了,不是吗?那怎么让对方识别呢?请看...
一、环境模拟
假设2台机器:A 和 B
我们目前在A机器上,想登陆到B机器。且不想输入密码。即(A --> B)
二、理论知识
加密原则是有一个公钥,一个私钥。公钥顾名思义,给别人的;私钥是自己留着的。
三、实现步骤
1. 在A机器上,用ssh-keygen命令生成一个公钥(id_rsa.pub)和一个私钥(id_rsa),默认的存放路径在~/.ssh/目录下。
2. 把A机器上的公钥内容拷贝到B机器上的~/.ssh/authorized_keys文件里,添加在后面。
3. 在A机器上直接ssh user@serverB 就可以免密码登陆B了。
四、注意事项
1. 如果A机器是登陆B机器的root账户,那A机器公钥就要拷贝到B机器的root账户下的authorized_keys文件里。即:登陆什么账户就拷贝到什么账户下的authorized_keys文件里。
2. 第“三、实现步骤”下的第“2”步也可以在A机器上使用ssh-copy-id命令实现拷贝。例如:ssh-copy-id -i ~/.ssh/id_rsa.pub user@server