linux之间免密操作

为了方便分布式集群操作,主机master需要免密操作两个节点slave1和slave2(slave1和slave2在对应机器已经修改hosts文件)

 首先了解scp的作用,直接将A机的文件复制到B机;

  scp [-P xxxx] A机文件路径 用户名@远程ip:/路径   (-P指定端口,默认22,大写P)

  eg:scp -P 10000 -r /usr/local/test root@127.0.0.2:/usr/local/         -r指定传输文件为文件夹

操作步骤:

 首先测试连接slave1操作:

    [root@master sbin]# ssh slave1
    root@slave1's password:

 这里时需要密码的

 

 

1.生成本机密钥  

    ssh-keygen -t rsa

2.记录远程连接密码

    ssh-copy-id -i ~/.ssh/id_rsa.pub slave1

    ssh-copy-id -i ~/.ssh/id_rsa.pub slave2

 

3.测试操作

    ssh slave1

 

 

然后我们就可以在主机直接复制到不同的节点上了

scp -r /usr/local/product slave:/usr/local    注:这里的-r指的是文件夹,如果缺少参数同时拷贝的还是文件夹,此时会报错regular file

 

方法二:包含本机免密登录设置

 

、配置ssh免密码登录

  2.1、 配置Master无密码登录所有Worker

    2.1.1、在Master节点上生成密码对,在Master上执行以下命令:
      ssh-keygen -t rsa -P ''

      ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

      生成的密钥对:id_rsa和id_rsa.pub,默认存储在"/root/.ssh"目录下。

    2.1.2、在Master节点上做如下配置,把id_rsa.pub追加到授权的key里面去。
      cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    2.1.3、修改ssh配置文件"/etc/ssh/sshd_config"的下列内容:

RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)

    2.1.4、重启ssh服务,才能使刚才设置有效:service sshd restart

    2.1.5、验证无密码登录本机是否成功:ssh Master

转自:https://www.cnblogs.com/nswdxpg/p/8526920.html

posted @ 2019-04-23 10:59  嬴安  阅读(296)  评论(0编辑  收藏  举报