针对某些服务(例如:ansible、部分大数据服务等)需要访问其他服务器,输入命令的访问方式对程序来说不是很友好,所以有必要设置服务器间免密登陆。
可通过ssh-keygen命令生成公钥及私钥
执行ssh-keygen命令,一路敲回车即可。
完成后,会在当前登陆用户的家目录下生成一个ssh的隐藏目录,公钥及私钥默认生成到改路径下。例如:如果是root用户的话,路径为:。
通过ssh-copy-id命令实现
至此即可通过命令免密登陆。
优点
- 可自动再对端主机上生成authorized_keys文件
 - 复制前会比对公钥和authorized_keys文件内容,如果authorized_keys文件中已经包含本机公钥,则不进行复制
 - 默认采用追加的方式添加至authorized_keys文件,不会覆盖原文件
 
将公钥添加到authorized_keys文件
将公钥添加到authorized_keys文件,如果该文件不存在,则需要在公钥目录下手动创建一个authorized_keys文件。创建authorized_keys文件的命令为:,再通过如下命令将公钥追加到authorized_keys文件即可。
再将authorized_keys文件拷贝至拷贝至对端服务器即可
至此即可通过ssh 'root@192.168.222.169’命令免密登陆。
该种方法会直接覆盖对端服务器的authorized_keys文件,执行前请先备份。
操作方法同方法二,将scp实现的步骤通过手动拷贝文件实现。不做赘述。
在对端主机上重新执行一、二两步即可完成双向免密登陆。
- 注意目录权限需为700
 - authorized_keys、id_rsa文件的权限需保持为600
 - id_rsa.pub文件的权限需为644
 
- Are you sure you want to continue connecting (yes/no)?
 
如何取消?
使用带参数的ssh命令跳过StrictHostKeyChecking校验
- ssh登陆慢
 
出现如上问题可以使用: 解决。也可以通过修改文件,将改为即可。同样,也可以使用如下命令针对某个用户单独设置:
到此这篇ssh免密(ssh免密登录)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/18142.html