ansible

概要 [#qce7832d]

秘密鍵にてSSHで接続できるユーザーを作り、sudo権限を付与するためのplaybookです。

事前準備 [#p936d6a9]

passwordの箇所には下記コマンドでMD5によるパスワードを作る。

 # openssl passwd -salt なんでも良い -1 ここにパスワード
 表示されたパスワードを下のHOGEHOGEHOGEに記述する

playbook [#l082d99f]

 - hosts: all
  sudo: true    <--もしくは下のsu: trueを追加する
  su: true
  su_user: HOGEHOGE
  vars:
    password: HOGEHOGEHOGE
  tasks:
    - name: add a new user
      user: name=ユーザー名 password={{password}} shell=/bin/bash state=present
 
    - name: add a sudo user
      lineinfile: "dest=/etc/sudoers backup=yes state=present regexp='^ユーザー名' line='wlansible ALL=(ALL) NOPASSWD: ALL'"
 
    - name: add a user to ssh config
      lineinfile: "dest=/etc/ssh/sshd_config backup=yes state=present regexp='^AllowUsers ユーザー名' line='AllowUsers ユーザー名'"
    - name: service restart sshd
      service: name=sshd state=restarted
 
    - name: create directory
      file: path=/home/ユーザー名/.ssh state=directory owner=ユーザー名 group=ユーザー名 mode=0700
 
    - name: copy file
      copy: src=  
/ansible/tmp/authorized_keys dest=/home/ユーザー名/.ssh/authorized_keys owner=ユーザー名 group=ユーザー名 mode=0700