Linux系列——配置SSH免密登录

 在进行配置之前需要先关闭防火墙、配置hosts映射。

具体参见:Linux系列——常规基础操作

下面重点说明如何配置SSH:

1、编辑sshd服务配置文件,开启免密验证, vi /etc/ssh/sshd_config

   打开文件后,去掉以下3行的"#"注释  

   RSAAuthentication yes

   PubkeyAuthentication yes

   AuthorizedKeysFile   .ssh/authorized_keys

   重启 sshd 服务,使用命令:/sbin/service sshd restart

 

2、创建免密登录账号

   使用如下命令创建:

   useradd  xxxuser  //创建用户

   passwd   xxxpwd   //设置登录密码

 

3、生成密钥 

   切换到新建账号xxxuser, sudo xxxuser

   执行命令:ssh-keygen -t rsa 回车后生成如下两个文件(注意待生成文件路径~/.ssh/)

   id_rsa  //私钥

   id_rsa.pub  //公钥

 

4、复制公钥文件id_rsa.pub到要访问该公钥机器的所有目标机器(相互访问时都需要对方的公钥文件)

   使用命令复制:(多台机器时,每台都需要,这里可使用任何方式把公钥文件复制到即可)

   scp ~/.ssh/id_rsa.pub 目标用户@目标机器:/XXX(具体路径自己要记住)

 

5、将复制过来的待访问机器的公钥导入本机认证文件(这步要在目标机器上做)

   使用如下命令:(多个时,分别追加)

   cat 目标用户@目标机器:/XXX/id_rsa.pub >> /本机目录/.ssh/authorized_keys

Linux系列——配置SSH免密登录_第1张图片

 

6、设置文件访问权限

   使用如下命令:

   chmod 700 目标机器路径/.ssh

   chmod 600 目标机器路径/.ssh/authorized_keys

 

7、在目标机器上访问源机器

   使用如下命令:

   ssh 机器名 或 ip, 第一次需要确认,以后就会直接登录进入源机器

 

便利方式:一次性将所有待访问的机器公钥都导入到本机认证文件,然后使用scp命令分发到各个机器,这样这些目标机器都能相互免密登录

Linux系列——配置SSH免密登录_第2张图片

你可能感兴趣的:(Linux系列——配置SSH免密登录)