版权声明:作者写博是为了总结经验,和交流学习之用。 如需转载,请在文章页面明显位置给出原文连接。谢谢!如有问题,请留言! https://blog.csdn.net/changqing5818/article/details/84309486
SSH免密登录配置
前提:两用户已存在
用户A:user_a
用户B:user_b
先要求从user_a到用户user_b进行ssh和scp免密登录。
登录用户user_a
1、 检查/home/user_a/.ssh目录下是否已存在id_rsa.pub
[user_a@vmhost ~]$ ls /home/user_a/.ssh
- user_a用户下生成密钥,所有设置都使用默认,直接三个回车
[user_a@vmhost ~]$ ssh-keygen -t rsa
释义:
Enter file in which to save the key (/home/user_a/.ssh/id_rsa)文件保存的位置,默认为当前"用户身份"的主文件夹下的.ssh文件夹下的id_rsa
Enter passphrase (empty for no passphrase) 输入连接密码,默认为空
Enter same passphrase again 再次输入密码,默认为空
我们可以查看一下当前用户主目录下的.ssh文件夹
[user_a@vmhost ~]$ cd ~/.ssh
[user_a@vmhost .ssh]$ ll
total 12
-rw-------. 1 user_a user_a 1675 Jul 22 13:38 id_rsa
-rw-r--r--. 1 user_a user_a 393 Jul 22 13:38 id_rsa.pub
-rw-r--r--. 1 user_a user_a 402 Jul 22 12:35 known_hosts
可以发现下面有两个文件:id_rsa
和id_rsa.pub
,其中id_rsa.pub
是公钥,id_pub
是私钥
2、 将id_rsa.pub内容手动拷贝到主库服务器user_b用户的/home/user_b/.ssh/authorized_keys
文件中,如果authorized_keys文件不存在,手动创建该文件,最后进行权限赋予
# 切换到用户user_b
[user_a@vmhost ~]$ su – user_b
# 将用户user_a的公钥拷贝至.ssh目录下
[user_b@vmhost ~]$ scp -p [email protected]:/home/user_a/.ssh/id_rsa.pub /home/user_b/.ssh/authorized_keys
[user_b@vmhost ~]$ cd /home/user_b/.ssh/
[user_b@vmhost .ssh]$ chmod 600 authorized_keys
3、登录测试:从user_a登录至user_b
[user_a@vmhost ~]$ ssh [email protected]
常见问题
SSH免密登录配置成功后不生效
1) authorized_keys
是个文件,不是目录
第一次操作时,没有仔细看,先创建了目录authorized_keys
,然后将id_rsa.pub
拷贝到authorized_keys
目录下,导致ssh登录失败
2)/home/user_b
目录的属主和权限配置不当
SSH不希望home目录和~/.ssh目录对组有写权限
正常情况下,新建的用户目录权限是: drwxr-xr-x
,即:755
先查看user_b用户目录的权限:
[root@vmhost ~]# ll /home/
drw-r--r--. 1 user_b user_b 402 Jul 22 12:35 user_b
于是执行以下命令进行更改:
chmod 755 /home/user_b
参考文章:https://blog.csdn.net/lisongjia123/article/details/78513244
扫描二维码关注公众号,回复:
6079697 查看本文章