--- description: >- In this lab, we set up the clone machines, configured SSH to use RSA keys as authentication, and used PSSH and Ansible to automate commands --- # Lab12 - Automation ## Configure clone1, clone2, and clone3 For all three machines... * Change network adapter to LAN * `nmtui` * Manual IP address * 10.0.5.70/24 * 10.0.5.71/24 * 10.0.5.72/24 * Gateway 10.0.5.2 * DNS 10.0.5.6 & 8.8.8.8 * Search domain: nathan.local * `systemctl restart network` * `user add nathan && passwd nathan` * `usermod -aG wheel nathan` * Add DNS records to AD02 ## Configuring SSH ### Creating RSA key pair for SSH * `ssh-keygen` * Default location * enter a passphrase * `ssh-copy-id nathan@clone2` * `ssh-copy-id nathan@clone3`
### Add passwordless SSH login (for 1 hour) * `` eval `ssh-agent` `` * `ssh-add -t 1h` * This is not permanent, you have to retype these commands every session ### Allow passwordless elevation to root by wheel group members * On clone2 and clone3, uncomment this line in /etc/sudoers
## PSSH - Parallel SSH. * Allows you to run SSH commands on multiple hosts * On clone1 * `yum install epel-release` * `yum install pssh` * create a text file called _ssh-hosts.txt_ and add IP addresses of clone2 and clone3
* make sure passwordless SSH is enabled * `pssh -i -h ssh-hosts.txt -- ` * `-i` - interactive - show command output
## install Ansible * On clone1 * `sudo yum install ansible` * `ansible all -i ssh-hosts.txt -m ping`
* `-b` - tells Ansible that the user associated with the SSH public key at the other end of the connection is a sudoer user