详解MacOs免密登录CentOs操作步骤

MacOs免密登录CentOs

环境

本文操作的环境如下:

  • CentOs 7
  • MacOs10.12.6

生成秘钥

首先在本机生成秘钥,打开终端,输入:

ssh-keygen -t rsa -C xxxxx@qq.com

后面的邮箱随意就可以

然后一直按回车键,执行结束后会在当前用户根目录下面生成一个.ssh的隐藏文件夹

我们查看一下这个文件夹

wangjianfengdeiMac:~ wangjianfeng$ cd ~/.ssh
wangjianfengdeiMac:.ssh wangjianfeng$ ls
id_rsa   id_rsa.pub known_hosts
wangjianfengdeiMac:.ssh wangjianfeng$ 

可以看到,里面生成了3个文件,其中id_rsa是私钥文件,id_ras.pub是公钥文件,known_hosts文件不用管

上传秘钥

在ssh目录执行一下命令:

cat id_rsa.pub > authorized_keys

将公钥内容复制到authorized_keys中.

接下来登录远程服务器,创建.ssh文件夹

wangjianfengdeiMac:.ssh wangjianfeng$ ssh root@xxx.xxx.xxx.xxx
root@xxx.xxx.xxx.xxx's password: 
Last login: Sat Mar 3 15:03:08 2018 from xx.xx.xx.xxx
[root@VM_0_14_centos ~]# mkdir ~/.ssh

退出登录后通过scp把authorized_key复制到服务器中的.ssh目录下

wangjianfengdeiMac:.ssh wangjianfeng$ scp authorized_keys root@xxx.xxx.xxx.xxx:/root/.ssh/authorized_keys
root@xxx.xxx.xxx.xxx's password: 
authorized_keys                      100% 394  73.1KB/s  00:00  

然后尝试登录远程服务:

这里有可能会出现两种个情况:

  • 登录成功:说明配置成功了
  • 需要密码才能登录成功

如果需要密码才能登录的话,就是配置还未生效。通过以下步骤来尝试:

  • 登录服务端
  • 检查.ssh目录的文件权限以及authorized_keys的文件权限

.ssh应该是700,authorized_keys应该是600

通过以下命令修改

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

如果做了上述操作还不能成功的话,请运行以下命令来查看失败原因:

tail /var/log/secure -n 20

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。