首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在大量主机上管理authorized_keys

在大量主机上管理authorized_keys文件时,可以使用配置管理工具,如Ansible、Puppet或Chef等,以实现自动化管理和配置。

配置管理工具可以将公钥集中存储,并在多台主机上自动同步,实现统一管理。同时,配置管理工具还可以确保主机的配置符合预期,并且可以方便地管理多台主机。

例如,使用Ansible管理authorized_keys文件的方法如下:

  1. 在Ansible控制端创建一个YAML文件,例如authorized_keys.yml,并添加以下内容:
代码语言:txt
复制
---
- name: Manage authorized_keys
  hosts: all
  vars:
    authorized_keys_file: /root/.ssh/authorized_keys
    authorized_keys:
      - "{{ lookup('file', '~/keys/id_rsa.pub') }}"
  tasks:
    - name: Ensure .ssh directory exists
      file:
        path: "{{ authorized_keys_file | dirname }}"
        state: directory
        owner: root
        group: root
        mode: 0700

    - name: Add authorized_keys
      lineinfile:
        path: "{{ authorized_keys_file }}"
        line: "{{ item }}"
        state: present
      with_items: "{{ authorized_keys }}"
  1. 在Ansible控制端的hosts文件中添加要管理的主机,例如:
代码语言:txt
复制
[all]
192.168.1.100
192.168.1.101
  1. 执行以下命令运行playbook:
代码语言:txt
复制
ansible-playbook authorized_keys.yml

这样,Ansible会将本地~/keys/id_rsa.pub文件中的公钥添加到远程主机的/root/.ssh/authorized_keys文件中。

除了Ansible之外,Puppet、Chef等配置管理工具也可以实现类似的功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券