Linux取消SSH登录密码的方法


有时我们想要通过其他的账户进行登录SSH,通常我们在登录的时候需要重新输入密码。不过对于一些不想记太多密码的用户来说,这样就显得有些麻烦了,那么该怎么才能不输入密码进行登录呢?

解决方法:

1. 你需要以用户aliceA的身份登录到hostA上。

2. 使用ssh-keygen生成一对rsa公私钥,生成的密钥对会存放在~/.ssh目录下。

$ ssh-keygen -t rsa

3. 使用下面的命令在目标主机hostB上的aliceB用户目录下创建~/.ssh目录。如果在aliceB@hostB上已经存在.ssh目录,这一步会被略过。

$ ssh aliceB@hostB mkdir -p .ssh

4. 将hostA上用户aliceA的公钥拷贝到aliceB@hostB上,来实现无密码ssh。

$ cat .ssh/id_rsa.pub | ssh aliceB@hostB ‘cat 》》 .ssh/authorized_keys’

自此以后,从aliceA@hostA上ssh到aliceB@hostB上再也不需要输入密码。(小编译注:上述的创建目录并复制的操作也可以通过一个 ssh-copy-id 命令一步完成:ssh-copy-id -i ~/.ssh/id_rsa.pub aliceB@hostB)

疑难解答

1. 即使在密钥认证生效后,你可能仍然需要输入SSH密码。如果遇到这种情况,请检查系统日志(如/var/log/secure)以查看是否出现下面的异常。

Authentication refused: bad ownership or modes for file /home/aliceB/.ssh/authorized_keys

在这种情况下,密钥认证的失败是由于~/.ssh/authorized_keys文件的权限或拥有者不正确。一般情况,如果这个文件对除了你之外的所有用户都可读,就会出现这个错误。用下面的方式改变文件的权限以修正错误。

$ chmod 700 ~/.ssh/authorized_keys


上一篇:Linux设置wget下载http/https代理的方法

下一篇:Linux下如何使用命令行访问Gmail


LinuxSSH免密码登录 LinuxSSH无密码登录 LinuxSSH登录
Copyright © 2002-2019 测速网 www.inhv.cn 皖ICP备2023010105号
测速城市 测速地区 测速街道 网速测试城市 网速测试地区 网速测试街道
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!

热门搜索 城市网站建设 地区网站制作 街道网页设计 大写数字 热点城市 热点地区 热点街道 热点时间 房贷计算器