mikysal78.ninux_common
役割 Ninux Common
これは、基本的なパッケージやサービスをインストール、設定するための役割で、一部のカスタマイズが含まれています。 Commonでは主に以下を設定します:
- sshポート
- ユーザーとssh鍵
- バナー
- エイリアスやターミナルの色のためのプロファイルを設定
要件
DebianへのAnsibleのインストール
以下の行を /etc/apt/sources.list に追加し、Ansibleをインストールするためのコマンドを実行します。
deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
$ sudo apt-get update
$ sudo apt-get install ansible
役割の変数
- defaults/main.yml には以下の変数が定義されています:
- デフォルト以外のSSHポート
- IPv4フォワード(/etc/sysctl.confでのフォワードの有効化または無効化)
- sudoersに追加するユーザー
- vars/main.yml にはインストールされるパッケージがリストされています。
- task/main.yml ではsshdの設定ファイルにハードニングが行われます(注意:パスワードによる認証が無効になります)。
例のプレイブック
Ansible Galaxyからプレイブックをダウンロードします。
ansible-galaxy install mikysal78.ninux_common
プレイブックの例は次のとおりです(hostsはcommonまたはローカルに設定できます。inventory(hosts)ファイルを参照してください):
- hosts: all
become: "{{ sudo | default('yes') }}"
roles:
- mikysal78.ninux_common
vars:
# common
common_ipv4_forward: 1
common_ssh_port: 2400
# common役割のための変数
users:
- name: michele
authorized:
- ./keys/michele.pub
プレイブック内に「keys」ディレクトリを作成し、ユーザーの公開鍵を格納します。 例の構文でhosts(inventory)ファイルを作成します:
[common]
tux.basilicata.nnxx ansible_user=root ansible_port=22 ansible_host=10.27.22.5
[locale]
mikytux ansible_user=root ansible_connection=local
注意:私の習慣では、オペレーティングシステムのインストール後すぐに、rootユーザーのサーバーに私の公開鍵をアップロードします。 役割がデフォルトでSSHポートを2400に設定することを忘れないでください。複数回実行する場合は、inventory(hosts)内で変更する必要があります。
ライセンス
BSD