| ansible | ||
| .ansible.cfg | ||
| config | ||
| README.md | ||
setup_new_server
git clone
add target IP and name to local (ansible machine) /etc/hosts USE ONLY THE NAME IN hosts.yml and .ssh/config
for root: ssh-copy-id to target
in hosts.yml be very careful to use: Host new.test.server new1 ## The new1 is VERY important as it defines the user variables In pass.yml we will have tha variables new1_user_passwd, new1_sudo_passwd and new1_root_passwd
ansible-vault create passwd.yml or ansible-vault edit passwd.yml
move and edit config to ~.ssh/config
test connection: ansible -m ping --ask-vault-pass --extra-vars '@passwd.yml' TARGET_IP OR NAME -u root
run playbook: ansible-playbook --ask-vault-pass --extra-vars '@passwd.yml' ubuntu/setup-pb.yml -l TARGET_IP OR NAME -u root
On TARGET: modify /etc/sysctl.conf, add the line: net.ipv4.icmp_echo_ignore_all = 1 #don't respond to pings
and then: sudo sysctl -p
Change : allow root login : PermitRootLogin prohibit-password to allow root login : no
Reference: https://www.vultr.com/docs/how-to-configure-a-new-ubuntu-server-with-ansible/