Browse Source

Add 'new-node.sh'

Marcel Stangenberger 7 months ago
parent
commit
3652c8ca0f
1 changed files with 34 additions and 0 deletions
  1. 34 0
      new-node.sh

+ 34 - 0
new-node.sh

@@ -0,0 +1,34 @@
+#!/bin/bash
+
+echo "Creating group"
+groupadd Ansible
+echo "Creating user"
+useradd -g Ansible -m -r -c \"Ansible user\" ansible
+echo "Set sudo rights"
+echo \"%Ansible ALL=(ALL) NOPASSWD: ALL\" > /etc/sudoers.d/Ansible
+echo "Set remote access"
+mkdir /home/ansible/.ssh
+chmod 700 /home/ansible/.ssh
+curl -O /home/ansible/.ssh/authorized_keys https://git.xo.nl/marcel/deploy/ansible.pub
+chown -R ansible:Ansible /home/ansible/.ssh
+echo "Enabling IPv6"
+sed -i '/net.ipv6.conf.all.disable_ipv6.*/d' /etc/sysctl.conf && sysctl -q -p && echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6
+if [[ "$(ip -br link | grep -v UNKNOWN | grep -v DOWN | grep -v veth | grep -v br | awk '{ print $1 }')" != "eth1" ]]
+then
+        echo "Configure GRUB"
+        sed -i 's/GRUB_CMDLINE_LINUX=\"/GRUB_CMDLINE_LINUX=\"net.ifnames=0 /' /etc/default/grub
+        grub2-mkconfig -o $(find /boot -name grub.cfg)
+        mv /etc/sysconfig/network-scripts/ifcfg* /etc/sysconfig/network-scripts/ifcfg-eth0
+        sed -i 's/NAME=.*/NAME=eth0/' /etc/sysconfig/network-scripts/ifcfg-eth0
+        sed -i 's/DEVICE=.*/DEVICE=eth0/' /etc/sysconfig/network-scripts/ifcfg-eth0
+else
+        echo "GRUB configuration not required"
+fi
+echo "Disable SELinux"
+sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
+echo "install Teleport agent"
+sudo bash -c "$(curl -fsSL https://xs.xo.nl/scripts/c368df0b0c8b08d92e3cfa66616c333a/install-node.sh)"
+echo "Deployment is completed"
+echo "Reboot host in 3 seconds"
+wait 3
+reboot