231 lines
4.9 KiB
Plaintext
231 lines
4.9 KiB
Plaintext
- name: "Install python3"
|
|
apt:
|
|
name: python3
|
|
state: present
|
|
- name: "Install python3-pip"
|
|
apt:
|
|
name: python3-pip
|
|
state: present
|
|
- name: "Install python3-virtualenv"
|
|
apt:
|
|
name: python3-virtualenv
|
|
state: present
|
|
- name: "Install thefuck"
|
|
apt:
|
|
name: thefuck
|
|
state: present
|
|
- name: "Install python3-setuptools"
|
|
apt:
|
|
name: python3-setuptools
|
|
state: present
|
|
- name: "Install nginx"
|
|
apt:
|
|
name: nginx
|
|
state: present
|
|
- name: "Install wget"
|
|
apt:
|
|
name: wget
|
|
state: present
|
|
- name: "Install htop"
|
|
apt:
|
|
name: htop
|
|
state: present
|
|
- name: "Install btop"
|
|
apt:
|
|
name: btop
|
|
state: present
|
|
- name: "Install lynx"
|
|
apt:
|
|
name: lynx
|
|
state: present
|
|
- name: "Install neovim"
|
|
apt:
|
|
name: neovim
|
|
state: present
|
|
- name: "Install docker.io"
|
|
apt:
|
|
name: docker.io
|
|
state: present
|
|
- name: "Install docker-compose"
|
|
apt:
|
|
name: docker-compose
|
|
state: present
|
|
- name: "Install screen"
|
|
apt:
|
|
name: screen
|
|
state: present
|
|
- name: "Install byobu"
|
|
apt:
|
|
name: byobu
|
|
state: present
|
|
- name: "Install zsh"
|
|
apt:
|
|
name: zsh
|
|
state: present
|
|
- name: "Install nmap"
|
|
apt:
|
|
name: nmap
|
|
state: present
|
|
- name: "Install iptraf"
|
|
apt:
|
|
name: iptraf
|
|
state: present
|
|
- name: "Install iotop"
|
|
apt:
|
|
name: iotop
|
|
state: present
|
|
- name: "Install zip"
|
|
apt:
|
|
name: zip
|
|
state: present
|
|
- name: "Install unzip"
|
|
apt:
|
|
name: unzip
|
|
state: present
|
|
- name: "Install net-tools"
|
|
apt:
|
|
name: net-tools
|
|
state: present
|
|
- name: "Install git"
|
|
apt:
|
|
name: git
|
|
state: present
|
|
- name: "Install chkrootkit"
|
|
apt:
|
|
name: chkrootkit
|
|
state: present
|
|
- name: "Install fail2ban"
|
|
apt:
|
|
name: fail2ban
|
|
state: present
|
|
- name: "Install lynis"
|
|
apt:
|
|
name: lynis
|
|
state: present
|
|
|
|
|
|
# thefuck
|
|
- name: "thefuck append to .zshrc"
|
|
lineinfile:
|
|
path: "/home/{{ username }}/.zshrc"
|
|
line: 'eval $(thefuck --alias fuck)'
|
|
insertafter: EOF
|
|
mode: '0744'
|
|
owner: "{{ username }}"
|
|
group: "{{ username }}"
|
|
state: present
|
|
create: True
|
|
|
|
# PATH
|
|
- name: ".zshrc PATH adding ~/.local/bin"
|
|
lineinfile:
|
|
path: "/home/{{ username }}/.zshrc"
|
|
line: 'PATH=~/.local/bin/:$PATH'
|
|
state: present
|
|
insertafter: EOF
|
|
mode: "0744"
|
|
owner: "{{ username }}"
|
|
group: "{{ username }}"
|
|
create: True
|
|
become: True
|
|
become_method: su
|
|
become_user: "{{ username }}"
|
|
|
|
|
|
# ssh
|
|
- name: "SSH allow {{ username }} only"
|
|
lineinfile:
|
|
path: '/etc/ssh/sshd_config'
|
|
line: "AllowUsers {{ username }}"
|
|
state: present
|
|
insertafter: EOF
|
|
mode: "0644"
|
|
owner: root
|
|
group: root
|
|
- name: 'SSH disable password auth'
|
|
lineinfile:
|
|
path: '/etc/ssh/sshd_config'
|
|
regexp: '^PermitRootLogin'
|
|
line: 'PermitRootLogin no'
|
|
state: present
|
|
insertafter: EOF
|
|
mode: "0644"
|
|
owner: root
|
|
group: root
|
|
|
|
|
|
- name: "UFW allow ssh"
|
|
community.general.ufw:
|
|
rule: allow
|
|
port: ssh
|
|
proto: tcp
|
|
delete: true
|
|
- name: "UFW allow http"
|
|
community.general.ufw:
|
|
rule: allow
|
|
port: http
|
|
proto: any
|
|
delete: true
|
|
- name: "UFW allow https"
|
|
community.general.ufw:
|
|
rule: allow
|
|
port: https
|
|
proto: any
|
|
delete: true
|
|
|
|
|
|
- name: 'Customscripts download'
|
|
command:
|
|
cmd: 'git clone https://gitlab.com/princesspi/general-scripts-and-system-ssssssetup.git /tmp/cscripts'
|
|
become: yes
|
|
|
|
|
|
|
|
- name: "Create directory {{ custom_scripts_dir }}"
|
|
file:
|
|
path: "{{ custom_scripts_dir }}"
|
|
state: directory
|
|
mode: '0755'
|
|
owner: 'root'
|
|
group: 'root'
|
|
become: yes
|
|
- name: 'Customscripts copy add_user_ssh.sh'
|
|
copy:
|
|
remote_src: False
|
|
src: '/tmp/cscripts/customscripts/add_user_ssh.sh'
|
|
dest: "{{ custom_scripts_dir }}/add_user_ssh.sh"
|
|
mode: '0744'
|
|
owner: 'root'
|
|
group: 'root'
|
|
become: yes
|
|
- name: "Customscripts copy crowdsec.sh"
|
|
copy:
|
|
remote_src: False
|
|
src: '/tmp/cscripts/customscripts/crowdsec.sh'
|
|
dest: "{{ custom_scripts_dir }}/crowdsec.sh"
|
|
mode: '0744'
|
|
owner: 'root'
|
|
group: 'root'
|
|
become: yes
|
|
- name: "Customscripts copy fix_permissions.sh"
|
|
copy:
|
|
remote_src: False
|
|
src: '/tmp/cscripts/customscripts/fix_permissions.sh'
|
|
dest: "{{ custom_scripts_dir }}/fix_permissions.sh"
|
|
mode: '0744'
|
|
owner: 'root'
|
|
group: 'root'
|
|
become: yes
|
|
|
|
# crowdsec
|
|
- name: 'Crowdsec'
|
|
command:
|
|
cmd: "bash {{ custom_scripts_dir }}/crowdsec.sh"
|
|
become: yes
|
|
|
|
- name: 'enable/restart crowdsec'
|
|
service:
|
|
name: 'crowdsec'
|
|
enabled: True
|
|
state: 'restarted'
|