Host Setup, User Setup, SSH Configuration
This commit is contained in:
parent
78bf4efed1
commit
0402882891
5 changed files with 116 additions and 0 deletions
23
README.md
Normal file
23
README.md
Normal file
|
@ -0,0 +1,23 @@
|
|||
# NibTech Shared Role - Host
|
||||
|
||||
This role is intended to setup and maintain a host.
|
||||
|
||||
## Tasks
|
||||
|
||||
### Root Tasks
|
||||
|
||||
The following tasks are run as the root user, and are generally only ran once.
|
||||
|
||||
**Users**: Creates various user accounts used. This set of tasks requires the
|
||||
root user.
|
||||
|
||||
**SSH**: Configures the SSH daemon and user setup. Hardens the SSH
|
||||
configuration, and adds user keys.
|
||||
|
||||
**Packages**: Installs required packages
|
||||
|
||||
### Deploy Tasks
|
||||
|
||||
The following tasks are run as the deploy user, and are run on-demand.
|
||||
|
||||
**Update**: Handles updating an existing host
|
27
files/nibtech-sshd.conf
Normal file
27
files/nibtech-sshd.conf
Normal file
|
@ -0,0 +1,27 @@
|
|||
# Note that while many of these are the defaults, this file is loaded after
|
||||
# other drop-in configuration files, and so ensures that the defaults are still
|
||||
# the defaults.
|
||||
|
||||
# Authentication
|
||||
# Dis-allow password authentication [Default: yes]
|
||||
# Dis-allow root login [Default: prohibit-password]
|
||||
# Dis-allow empty password login attempts [Default: no]
|
||||
# Disable keyboard-interactive authentication [Default: yes]
|
||||
PasswordAuthentication no
|
||||
PermitRootLogin no
|
||||
PermitEmptyPasswords no
|
||||
KbdInteractiveAuthentication no
|
||||
|
||||
# Enable PAM ("If UsePAM is enabled, you will not be able to run sshd as a
|
||||
# non-root user" -- handy!) [Default: no]
|
||||
# WARNING: 'UsePAM no' is not supported in RHEL and may cause several problems
|
||||
UsePAM yes
|
||||
|
||||
# Disable X11 Forwarding [Default: no]
|
||||
X11Forwarding no
|
||||
|
||||
ClientAliveInterval 300
|
||||
ClientAliveCountMax 2
|
||||
|
||||
# Restrict to only NibTech logins
|
||||
AllowGroups nibtech
|
20
tasks/main.yml
Normal file
20
tasks/main.yml
Normal file
|
@ -0,0 +1,20 @@
|
|||
# NibTech::Host::Tasks::main
|
||||
# This role does host setup
|
||||
# Role repository:
|
||||
---
|
||||
|
||||
- name: Setup Users
|
||||
ansible.builtin.include_tasks: users.yml
|
||||
tags: ['users']
|
||||
|
||||
- name: Setup SSH
|
||||
ansible.builtin.include_tasks: ssh.yml
|
||||
tags: ['ssh']
|
||||
|
||||
- name: Setup Packages
|
||||
ansible.builtin.include_tasks: packages.yml
|
||||
tags: ['packages']
|
||||
|
||||
- name: Perform System Update
|
||||
ansible.builtin.include_tasks: update.yml
|
||||
tags: ['update']
|
18
tasks/ssh.yml
Normal file
18
tasks/ssh.yml
Normal file
|
@ -0,0 +1,18 @@
|
|||
# NibTech::Host::Tasks::ssh
|
||||
# This role does host setup
|
||||
# This task configures SSH
|
||||
# Role repository:
|
||||
---
|
||||
|
||||
- name: Install SSH
|
||||
ansible.builtin.package:
|
||||
name: "openssh"
|
||||
state: "present"
|
||||
|
||||
- name: Add Custom SSHD Configuration File
|
||||
ansible.builtin.copy:
|
||||
src: "nibtech-sshd.conf"
|
||||
dest: "/etc/ssh/sshd_config.d/90-nibtech.conf"
|
||||
owner: "root"
|
||||
group: "root"
|
||||
mode: "0600"
|
28
tasks/users.yml
Normal file
28
tasks/users.yml
Normal file
|
@ -0,0 +1,28 @@
|
|||
# NibTech::Host::Tasks::users
|
||||
# This role does host setup
|
||||
# This task configures users, groups, and permissions
|
||||
# Role repository:
|
||||
---
|
||||
|
||||
- name: Configure Service Group
|
||||
ansible.builtin.group:
|
||||
name: "nibtech"
|
||||
state: "present"
|
||||
|
||||
- name: Configure Ansible Deploy User
|
||||
ansible.builtin.user:
|
||||
name: "nibtech-deploy"
|
||||
system: true
|
||||
group: "nibtech"
|
||||
shell: "/bin/bash"
|
||||
create_home: true
|
||||
home: "/opt/ansible"
|
||||
|
||||
- name: Configure NibTech Admin User
|
||||
ansible.builtin.user:
|
||||
name: "nibtech-admin"
|
||||
append: true
|
||||
groups: "['wheel','nibtech']"
|
||||
shell: "/bin/bash"
|
||||
create_home: true
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue