Add user management
This commit is contained in:
parent
91569d6082
commit
11283c7760
|
@ -0,0 +1,152 @@
|
|||
sudo apt update && sudo apt upgrade -y
|
||||
apt install ansible -y
|
||||
ansible --version
|
||||
ip a
|
||||
ssh-keygen -t rsa -b 4096
|
||||
ssh-copy-id root@142.93.63.131
|
||||
ssh root@142.93.63.131
|
||||
ssh-copy-id root@142.93.63.131
|
||||
nano /etc/ansible/host
|
||||
ansible status
|
||||
systemctl status ansible
|
||||
apt install ansible -y
|
||||
systemctl status ansible
|
||||
ls
|
||||
cd /
|
||||
ls
|
||||
systemctl status ansible
|
||||
cd /etc/
|
||||
ls
|
||||
cd ..
|
||||
ansible --version
|
||||
nano /etc/ansible/host
|
||||
mkdir /etc/ansible
|
||||
ls
|
||||
|
||||
ls
|
||||
cd ansible/
|
||||
nano host
|
||||
ansible all -m ping
|
||||
cd /
|
||||
ansible all -m ping
|
||||
cat /etc/ansible/hosts
|
||||
cd /etc/ansible/
|
||||
cat host
|
||||
sudo mv /etc/ansible/host /etc/ansible/hosts
|
||||
ls
|
||||
ansible all -m ping
|
||||
ls
|
||||
cd /
|
||||
ls
|
||||
cd etc/
|
||||
ls
|
||||
cd ansible/
|
||||
ls
|
||||
nano hosts
|
||||
cd /
|
||||
ssh-copy-id adel@142.93.63.131
|
||||
ssh-copy-id adel@67.205.166.16
|
||||
ssh-copy-id adelya@67.205.166.16
|
||||
ansible all -m ping
|
||||
cd ansible/
|
||||
cd /etc/ansible/
|
||||
ls
|
||||
nano hosts
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml -1 142.93.63.131 -u root -k
|
||||
ansible-playbook playbook.yml -I 142.93.63.131 -u root -k
|
||||
ansible-playbook playbook.yml -i 142.93.63.131 -u root -k
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u root -k
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
cd .
|
||||
cd /
|
||||
cd etc/
|
||||
ls
|
||||
nano sudoers
|
||||
cd /
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
cd ~
|
||||
ls
|
||||
mv playbook.yml /
|
||||
ls
|
||||
cd /
|
||||
ls
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
file -i playbook.yml
|
||||
iconv -f us-ascii -t utf-8 playbook.yml -o playbook.yml-fixed.yml
|
||||
mv playbook.yml-fixed.yml playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
ls
|
||||
file -i playbook.yml
|
||||
which iconv
|
||||
iconv --version
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u root -k
|
||||
sudo apt update
|
||||
sudo apt install sshpass -y
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u root -k
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u user -k
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u adel -k
|
||||
nano playbook.yml
|
||||
ansible-playbook playbook.yml --syntax-check
|
||||
ansible-playbook playbook.yml -i 142.93.63.131, -u adel -k
|
||||
ansible-playbook playbook.yml -i 67.205.166.16, -u adelya -k
|
||||
ansible-inventory --list
|
||||
sudo ufw status
|
||||
ufw status
|
||||
apt install ufw
|
||||
ufw status
|
||||
ufw enable
|
||||
ufw status
|
||||
ufw allow ssh
|
||||
ufw status
|
||||
ufw status ssh
|
||||
ufw status
|
||||
ufw allow OpenSSH
|
||||
ufw allow openssh
|
||||
ufw status OpenSSH
|
||||
ls
|
||||
cd /
|
||||
ls
|
||||
which ansible
|
||||
cd ~
|
||||
cd ~/ansible-digitalocean
|
||||
mkdir -p ansible-digitalocean/{inventory,host_vars,group_vars}
|
||||
ls
|
||||
cd ansible-digitalocean/
|
||||
touch ansible.cfg do_setup.yml README.md inventory/{digitalocean.yml,static.ini}
|
||||
ls
|
||||
tree
|
||||
apt install tree
|
||||
tree
|
|
@ -0,0 +1,99 @@
|
|||
# ~/.bashrc: executed by bash(1) for non-login shells.
|
||||
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
|
||||
# for examples
|
||||
|
||||
# If not running interactively, don't do anything
|
||||
[ -z "$PS1" ] && return
|
||||
|
||||
# don't put duplicate lines in the history. See bash(1) for more options
|
||||
# ... or force ignoredups and ignorespace
|
||||
HISTCONTROL=ignoredups:ignorespace
|
||||
|
||||
# append to the history file, don't overwrite it
|
||||
shopt -s histappend
|
||||
|
||||
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
|
||||
HISTSIZE=1000
|
||||
HISTFILESIZE=2000
|
||||
|
||||
# check the window size after each command and, if necessary,
|
||||
# update the values of LINES and COLUMNS.
|
||||
shopt -s checkwinsize
|
||||
|
||||
# make less more friendly for non-text input files, see lesspipe(1)
|
||||
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
|
||||
|
||||
# set variable identifying the chroot you work in (used in the prompt below)
|
||||
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
|
||||
debian_chroot=$(cat /etc/debian_chroot)
|
||||
fi
|
||||
|
||||
# set a fancy prompt (non-color, unless we know we "want" color)
|
||||
case "$TERM" in
|
||||
xterm-color) color_prompt=yes;;
|
||||
esac
|
||||
|
||||
# uncomment for a colored prompt, if the terminal has the capability; turned
|
||||
# off by default to not distract the user: the focus in a terminal window
|
||||
# should be on the output of commands, not on the prompt
|
||||
#force_color_prompt=yes
|
||||
|
||||
if [ -n "$force_color_prompt" ]; then
|
||||
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
|
||||
# We have color support; assume it's compliant with Ecma-48
|
||||
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
|
||||
# a case would tend to support setf rather than setaf.)
|
||||
color_prompt=yes
|
||||
else
|
||||
color_prompt=
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$color_prompt" = yes ]; then
|
||||
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||
else
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
fi
|
||||
unset color_prompt force_color_prompt
|
||||
|
||||
# If this is an xterm set the title to user@host:dir
|
||||
case "$TERM" in
|
||||
xterm*|rxvt*)
|
||||
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
# enable color support of ls and also add handy aliases
|
||||
if [ -x /usr/bin/dircolors ]; then
|
||||
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||
alias ls='ls --color=auto'
|
||||
#alias dir='dir --color=auto'
|
||||
#alias vdir='vdir --color=auto'
|
||||
|
||||
alias grep='grep --color=auto'
|
||||
alias fgrep='fgrep --color=auto'
|
||||
alias egrep='egrep --color=auto'
|
||||
fi
|
||||
|
||||
# some more ls aliases
|
||||
alias ll='ls -alF'
|
||||
alias la='ls -A'
|
||||
alias l='ls -CF'
|
||||
|
||||
# Alias definitions.
|
||||
# You may want to put all your additions into a separate file like
|
||||
# ~/.bash_aliases, instead of adding them here directly.
|
||||
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
|
||||
|
||||
if [ -f ~/.bash_aliases ]; then
|
||||
. ~/.bash_aliases
|
||||
fi
|
||||
|
||||
# enable programmable completion features (you don't need to enable
|
||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||
# sources /etc/bash.bashrc).
|
||||
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
|
||||
# . /etc/bash_completion
|
||||
#fi
|
|
@ -0,0 +1,9 @@
|
|||
# ~/.profile: executed by Bourne-compatible login shells.
|
||||
|
||||
if [ "$BASH" ]; then
|
||||
if [ -f ~/.bashrc ]; then
|
||||
. ~/.bashrc
|
||||
fi
|
||||
fi
|
||||
|
||||
mesg n 2> /dev/null || true
|
|
@ -0,0 +1,49 @@
|
|||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
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
|
||||
-----END OPENSSH PRIVATE KEY-----
|
|
@ -0,0 +1 @@
|
|||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDkA9GvZ4dUxyN1MVzSspx0Bvzs6kw9EkNHwWLjcHMB/y88UzWt1ZeQLTinl6IzhH2VWLW7bXMz7emeU4ZCeCqAmjO1iLJCGjXnAC/hqaWpp+ws+NZSDax4GiYBXMdcOzObqvBtqL0QGzuf8/2Jvek8CcAVLSxqHdal8OuYggrlYx0HkJmeBS9U53ARByx/iNzDaEPUa5ZHjdsIds45W1NuofCfcxfyJz16GE/+kgll+kf2RIw+LfufD55lysA2+3T/6Gc4f9TVqFk9UKQVFcH2cdm2c4BEux9G/+jjvA0c/lynICR797Md6m/So8qecYlmuzuVbIe9lhhbNkyxVnHWrZ5vvEEA8Mf4mq5C+utww0kFfJTFJCYMQLRsnFatM6mOewTLIIfwxCtmnKQStbSponkf+3YjpMik15zqFgSj9v7BAbNT6nF5Bx5pZ7/gyXx1tJTKhJbg1bWP2MjMipIjkfbp/sYvQHM85ceguDxoMwJZruo5fvwizUiuS0Cv/xDLLV87jEZtYrbXauHQ610NMFQFqVdnWCtjwN+Jkc8mmcCGxBom4ugVKGaw5wlA01PkZpOwrvUVNwUHunP4gYuyhM4V+tKQFEFIuqIwW9Vq6Q4cXgHbjkzoi+4FiLdzyGgshFhH6K0V1Ljd4REvgdc3MZaY+PMY7swEtO69fPbpWQ== root@Adelyaa
|
|
@ -0,0 +1,6 @@
|
|||
|1|RBjcbB6vQlw/5taBF2Y1YG/5aUU=|9F4DU6ImB+q/d/3Kg/VH11jtWDE= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHYV+fHLM/VaRF9F3o/eqDytPWZ978d6jYfC21Rqykju
|
||||
|1|fUxuXyF695aHejaVYwvqxHFYdCs=|DOE1ambGBr5H0M81CJ2leiZzoxU= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCK9Th29r8GfIBra55W9P7QxdS6JWtFXZ4+53uSvuhd2U7af3xmodgALQXXOaITnpF8DFM3ppryfvd3dQUL30CsqL9tSqECVLhuZZ7SMB3a8q0jzDxotCkeLZdjiIPVRa+R/1HO9ha3fl4MmJxaUBeTONw1YZa7vB98axNnpT9l+6K4fi5LGXdiej0F/OH/qBGaffcutWjFpIYfb0gpCS53qsHyxnkdKEI/HpHMiKN80+DJ2JZ/Id9aAgzH6KSmYxf5t9KHbq289CGR9xIOROtiSEXLXhK1piJpb5JOFjxs8nWUhN/l3s8PjGbEmOgwrtoRtvWYBdxmB68H4QI1PUzgHVk4p53vsA2eNW15NoE14NMyU77sRtAR/6KkNPFAry2MjafTeXcMnQd3oqAIDo+bvKqWmGVSLDaTJRqHreA+7vZZsn9GWp3PbWquTim8mxSCqGl1NCURLGSrG57mY4la38JyoyVaR/OiukVCTpwj2CpktoYZfd9eAicQnoQT55M=
|
||||
|1|br3MuqeDLRwhnWAJfCL/7breVFs=|2t6WHeTGXGJ5L392s4TleMbReLE= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHSrWLiGWbCMjVpbrXlzc1vsyM4XS5e6tm0XGQzCxmk0r+nCPOBZ4i7ZWK54e8L7AduHVbJR+skZO6FiBZmhJno=
|
||||
|1|S+2FJr5EZEt7MYj6aQed9/xM/9E=|HyIA6dtj5Wl4IEvJa1GEkZ55hxE= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGQWwLeAoLM+9htOiScUTz2+Brh9SOJbjMGiBBVcZYbf
|
||||
|1|6HbLQOb4D2M0mwU61v7/SpDRklk=|+cRGtBPPUWyOsLq8koyi3fWniDk= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDCjx3KUiKNNfHSzPp4IF7Dpfl0jSUVp2/jpvj2eJneW0GXuMM/QjGE9HYy5HcwAdD6LGMF2U0GT7++1FS6U6XvkrbIXcZIqEMALipxQpYMPh9s6L74RAceZmb7X6N5rvDYTuVpOMS1Mq/oTBPuO3spAuKNQP6DMRrtAI8NfNiv8mfa1HCTUIM/3js6btdfB+OKQHeKIDjGNRcBiLXus9Yuf2CcIVE6iUYyPnCjG28ri8rBq0T/+W2TDqt/+Jwbw5Cou60krbgwt6m9zAO4tSoMZWP2I1k2ttHTlEmM/NIpHI0OyqyAT1g1Mq9RIDi1gWkRI9eAR+LOTrpStw6Fq4I24IEzElARnRi5Kkg2qtPOp55LkTZGGMYtrBWjCZJSNDjCG6miQOgBzNsZYom/y1pvSH6RPCMbeFrz7KpVcNJTBZLoZVwO19bYPErDxHeXP4LWiGVMCKQaYJLXt/12z0eXHuLNwqnu0hHiLthcT9PvqE7oXLeaY5IwN/g5m6Tin3s=
|
||||
|1|OGRJCJy9keDmiXB5SlkC6F1DzNE=|JMyuS19qx8lG7tgZ+KwOMOzx00E= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBPzfOlXgUjbxibgySDZ2Lv5iS8AyWE5oCdDEYzAbd7qdbVDEOWTRtj8zf5k2ax9w7K+h3GYndI3QmqCopKbARU=
|
|
@ -0,0 +1,4 @@
|
|||
|1|RBjcbB6vQlw/5taBF2Y1YG/5aUU=|9F4DU6ImB+q/d/3Kg/VH11jtWDE= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHYV+fHLM/VaRF9F3o/eqDytPWZ978d6jYfC21Rqykju
|
||||
|1|fUxuXyF695aHejaVYwvqxHFYdCs=|DOE1ambGBr5H0M81CJ2leiZzoxU= ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCK9Th29r8GfIBra55W9P7QxdS6JWtFXZ4+53uSvuhd2U7af3xmodgALQXXOaITnpF8DFM3ppryfvd3dQUL30CsqL9tSqECVLhuZZ7SMB3a8q0jzDxotCkeLZdjiIPVRa+R/1HO9ha3fl4MmJxaUBeTONw1YZa7vB98axNnpT9l+6K4fi5LGXdiej0F/OH/qBGaffcutWjFpIYfb0gpCS53qsHyxnkdKEI/HpHMiKN80+DJ2JZ/Id9aAgzH6KSmYxf5t9KHbq289CGR9xIOROtiSEXLXhK1piJpb5JOFjxs8nWUhN/l3s8PjGbEmOgwrtoRtvWYBdxmB68H4QI1PUzgHVk4p53vsA2eNW15NoE14NMyU77sRtAR/6KkNPFAry2MjafTeXcMnQd3oqAIDo+bvKqWmGVSLDaTJRqHreA+7vZZsn9GWp3PbWquTim8mxSCqGl1NCURLGSrG57mY4la38JyoyVaR/OiukVCTpwj2CpktoYZfd9eAicQnoQT55M=
|
||||
|1|br3MuqeDLRwhnWAJfCL/7breVFs=|2t6WHeTGXGJ5L392s4TleMbReLE= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHSrWLiGWbCMjVpbrXlzc1vsyM4XS5e6tm0XGQzCxmk0r+nCPOBZ4i7ZWK54e8L7AduHVbJR+skZO6FiBZmhJno=
|
||||
|1|S+2FJr5EZEt7MYj6aQed9/xM/9E=|HyIA6dtj5Wl4IEvJa1GEkZ55hxE= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGQWwLeAoLM+9htOiScUTz2+Brh9SOJbjMGiBBVcZYbf
|
|
@ -1,3 +0,0 @@
|
|||
[droplets]
|
||||
142.93.63.131 ansible_user=adel
|
||||
67.205.166.16 ansible_user=adelya
|
|
@ -1,95 +0,0 @@
|
|||
---
|
||||
- name: User Management Playbook
|
||||
hosts: all
|
||||
become: true
|
||||
tasks:
|
||||
- name: Remove user 'adelia'
|
||||
ansible.builtin.user:
|
||||
name: adelia
|
||||
state: absent
|
||||
remove: true
|
||||
|
||||
- name: Set facts from users.conf
|
||||
set_fact:
|
||||
my_users: "{{ my_users | default([]) + [ {
|
||||
'user': params[0],
|
||||
'state': params[1],
|
||||
'super': (params[2] == 'super')
|
||||
} ] }}"
|
||||
loop: "{{ lookup('file', 'user.conf').splitlines() }}"
|
||||
vars:
|
||||
params: "{{ item.split(':') }}"
|
||||
|
||||
- name: Manage users
|
||||
ansible.builtin.user:
|
||||
name: "{{ item.user }}"
|
||||
state: "{{ item.state }}"
|
||||
loop: "{{ my_users }}"
|
||||
|
||||
- name: Sudo privileges for super users
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/sudoers
|
||||
line: "{{ item.user }} ALL=(ALL) NOPASSWD: ALL"
|
||||
validate: 'visudo -cf %s'
|
||||
loop: "{{ my_users }}"
|
||||
when: item.super
|
||||
|
||||
- name: Add SSH key for user
|
||||
ansible.posix.authorized_key:
|
||||
user: "{{ user_name }}"
|
||||
state: present
|
||||
key: "{{ lookup('file', '/root/.ssh/id_rsa.pub') }}"
|
||||
vars:
|
||||
user_name: adel
|
||||
|
||||
- name: Add user to sudo group
|
||||
ansible.builtin.user:
|
||||
name: "{{ sudo_user }}"
|
||||
groups: sudo
|
||||
append: true
|
||||
state: present
|
||||
create_home: true
|
||||
vars:
|
||||
sudo_user: adelia
|
||||
|
||||
- name: Configure password reuse policy
|
||||
ansible.posix.sysctl:
|
||||
name: "kernel.printk_ratelimit"
|
||||
value: "10"
|
||||
state: present
|
||||
reload: yes
|
||||
|
||||
|
||||
- name: Create group 'pkl'
|
||||
ansible.builtin.group:
|
||||
name: pkl
|
||||
state: present
|
||||
|
||||
- name: Create user 'syifa' in group 'pkl'
|
||||
ansible.builtin.user:
|
||||
name: syifa
|
||||
state: present
|
||||
groups: pkl
|
||||
append: yes
|
||||
shell: /bin/bash
|
||||
|
||||
- name: Add 'pkl' group to sudoers
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/sudoers
|
||||
state: present
|
||||
regexp: '^%pkl'
|
||||
line: '%pkl ALL=(ALL) NOPASSWD: ALL'
|
||||
validate: 'visudo -cf %s'
|
||||
|
||||
- name: Remove 'syifa' from group 'pkl'
|
||||
ansible.builtin.user:
|
||||
name: syifa
|
||||
groups: pkl
|
||||
state: present
|
||||
append: no
|
||||
|
||||
- name: Remove group 'pkl'
|
||||
ansible.builtin.group:
|
||||
name: pkl
|
||||
state: absent
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
adelia:absent:super
|
||||
okta:absent:normal
|
||||
syifa:present:super
|
Loading…
Reference in New Issue