我们经常使用scp命令在两台不同服务器之间进行文件传输,但每执行一次scp命令时,都需要输入一次密码;使用ssh命令远程连接另一台服务器时,也需要输入密码。频繁输入密码比较麻烦,幸运的是,ssh可帮助我们在两台服务器之间配置免密,避免频繁输入密码的问题。
一、生成密钥通过ssh-keygen生成密钥。
ssh-keygen -t rsa -f /root/.ssh/id_rsa -N ''
执行过后,会在/root/.ssh目录下生成两个文件id_rsa和id_rsa.pub,分别对应密钥和公钥。
二、拷贝密钥通过ssh-copy-id拷贝密钥。
ssh-copy-id root@10.100.50.7
根据提示输入yes和密码继续建立连接,第一次连接还是需要输入密码的,这里的10.100.50.7是另一台服务器的IP地址。
三、免密登录通过ssh登录目标主机。
ssh root@10.100.50.7
此时已不再要求输入密码,直接登录上了。
四、双向免密在另一台服务器上同样执行步骤一、二、三。
五、自身免密在shell中使用ssh登录自己时,也会要求输入密码,可通过如下命令实现自身免密。
cat id_rsa.pub >> authorized_keys
执行过后,再次连接自己,执行
ssh localhost
此时也无需输入密码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)