#version=Rocky9 # Rocky 9.3 # Kickstart Automation 1.3.2 # Kickstart Configuration #74,056 #Reboot after installation reboot # Use network installation #url --url="https://vault.centos.org/8.4.2105/BaseOS/x86_64/os/" #repo --name="AppStream" --baseurl="https://vault.centos.org/8.4.2105/AppStream/x86_64/os/" #url --url="http://mirrors-phx-1.securedservers.com/centos/8.5.2111/BaseOS/x86_64/os/" #repo --name="AppStream" --baseurl="http://mirrors-phx-1.securedservers.com/centos/8.5.2111/AppStream/x86_64/os/" #url --url="http://rockylinux-distro.1gservers.com/8.5/BaseOS/x86_64/os/" #repo --name="AppStream" --baseurl="http://rockylinux-distro.1gservers.com/8.5/AppStream/x86_64/os/" #url --url="http://rockymirror.phoenixnap.com/9.3/BaseOS/x86_64/os/" #repo --name="AppStream" --baseurl="http://rockymirror.phoenixnap.com/9.3/AppStream/x86_64/os/" url --url="http://mirrors-phx-1.securedservers.com/rocky/9.4/BaseOS/x86_64/os/" repo --name="AppStream" --baseurl="http://mirrors-phx-1.securedservers.com/rocky/9.4/AppStream/x86_64/os/" firstboot --disable # Keyboard layouts keyboard --vckeymap=us --xlayouts='us' # System language lang en_US.UTF-8 # Network information # Backend network --bootproto=dhcp --device=link --ipv6=auto --activate # Frontend # network --bootproto=static --device=enp1s0f1 --gateway=66.85.164.25 --ip=66.85.164.26 --nameserver=8.8.8.8,8.8.4.4 --netmask=255.255.255.248 --ipv6=auto --activate # network --hostname=RL-2388G.BL.phx0.1.141.2.13.G5.securedservers.com # Root password rootpw --plaintext vFWoV1acj48plf # System services services --enabled="chronyd" # System timezone timezone US/Arizona --utc # Setup the user here user --groups= --homedir=/home/pnap25833 --name=pnap25833 --password=BjtZ3waNZB2zs --gecos="pnap25833" # This is default partitioning # Drive Layout - Standard Layout (w/LVM) %include /tmp/part-include %pre --log=/tmp/partition-none-ext4.log #!/bin/sh #ROOTDRIVE=`lsblk -ido KNAME,TYPE,SIZE,MODEL | grep disk | awk -F" " 'NR==1{print $1}'` ROOTDRIVE=`lsblk -ido KNAME,TYPE,SIZE,MODEL | grep -E '^(nvme|sd)' | grep disk | awk -F" " 'NR==1{print $1}'` echo "Drive: $ROOTDRIVE" if [[ $ROOTDRIVE == "sda" ]]; then # sda hd cat << EOF > /tmp/part-include ignoredisk --only-use=$ROOTDRIVE zerombr clearpart --all --initlabel --drives=$ROOTDRIVE bootloader --location=mbr --boot-drive=$ROOTDRIVE part /boot --fstype=ext4 --size=512 --ondisk=$ROOTDRIVE --asprimary part swap --fstype=swap --recommended --ondisk=$ROOTDRIVE part pv.20 --size=1 --grow --ondisk=$ROOTDRIVE --asprimary volgroup sys-dX5r pv.20 logvol /var/tmp --vgname=sys-dX5r --name=vartmp --size=2048 --fstype=ext4 logvol /tmp --vgname=sys-dX5r --name=tmp --size=2048 --fstype=ext4 logvol / --vgname=sys-dX5r --name=root --size=1 --fstype=ext4 --grow EOF else # nvme0n1 hd cat << EOF > /tmp/part-include ignoredisk --only-use=$ROOTDRIVE zerombr clearpart --all --initlabel --drives=$ROOTDRIVE bootloader --location=mbr --boot-drive=$ROOTDRIVE #part /boot/efi --fstype=vfat --size=512 --ondisk=$ROOTDRIVE --asprimary part /boot --fstype=ext4 --size=512 --ondisk=$ROOTDRIVE --asprimary part swap --fstype=swap --recommended --ondisk=$ROOTDRIVE part pv.20 --size=1 --grow --ondisk=$ROOTDRIVE --asprimary volgroup sys-dX5r pv.20 logvol /var/tmp --vgname=sys-dX5r --name=vartmp --size=2048 --fstype=ext4 logvol /tmp --vgname=sys-dX5r --name=tmp --size=2048 --fstype=ext4 logvol / --vgname=sys-dX5r --name=root --size=1 --fstype=ext4 --grow EOF fi %end %packages @base @core @performance #@php @remote-system-management @web-server chrony compat* *compat perl-CGI %end %post sed -i -r -e 's/^#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config # network --bootproto=static --device=enp1s0f1 --gateway=66.85.164.25 --ip=66.85.164.26 --nameserver=8.8.8.8,8.8.4.4 --netmask=255.255.255.248 --ipv6=auto --activate # network --hostname=RL-2388G.BL.phx0.1.141.2.13.G5.securedservers.com ETH0=$(ip ntable | grep dev | sort | uniq | sed -e 's/^.*dev //;/^*/d;/^lo/d' | head -n 1 | tail -n 1 | xargs) ETH1=$(ip ntable | grep dev | sort | uniq | sed -e 's/^.*dev //;/^*/d;/^lo/d' | head -n 2 | tail -n 1 | xargs) # Configure Backend IP on eth0 #sed -i 's/BOOTPROTO="dhcp"/BOOTPROTO="static"/g' /etc/sysconfig/network-scripts/ifcfg-$ETH0 #sed -i 's/BOOTPROTO=dhcp/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "BOOTPROTO=static" > /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "DEVICE=\"$ETH0\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "NAME=\"$ETH0\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "ONBOOT=yes" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "IPADDR=\"0.0.0.0\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "NETMASK=\"255.255.255.255\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "USERCTL=yes" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 echo "TYPE=Ethernet" >> /etc/sysconfig/network-scripts/ifcfg-$ETH0 # Configure Frontend IP on eth1 echo "BOOTPROTO=static" > /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "DEVICE=\"$ETH1\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "NAME=\"$ETH1\"" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "ONBOOT=yes" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "IPADDR=66.85.164.26" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "NETMASK=255.255.255.248" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "GATEWAY=66.85.164.25" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "USERCTL=yes" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "TYPE=Ethernet" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo "DEFROUTE=yes" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 #echo "DNS1=8.8.8.8" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 #echo "DNS2=8.8.4.4" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1 echo DEVICE=\"$ETH1:1\" > /etc/sysconfig/network-scripts/ifcfg-$ETH1:1 echo BOOTPROTO=\"static\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:1 echo IPADDR=\"66.85.164.27\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:1 echo NETMASK=\"255.255.255.248\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:1 echo ONBOOT=\"yes\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:1 echo DEVICE=\"$ETH1:2\" > /etc/sysconfig/network-scripts/ifcfg-$ETH1:2 echo BOOTPROTO=\"static\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:2 echo IPADDR=\"66.85.164.28\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:2 echo NETMASK=\"255.255.255.248\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:2 echo ONBOOT=\"yes\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:2 echo DEVICE=\"$ETH1:3\" > /etc/sysconfig/network-scripts/ifcfg-$ETH1:3 echo BOOTPROTO=\"static\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:3 echo IPADDR=\"66.85.164.29\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:3 echo NETMASK=\"255.255.255.248\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:3 echo ONBOOT=\"yes\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:3 echo DEVICE=\"$ETH1:4\" > /etc/sysconfig/network-scripts/ifcfg-$ETH1:4 echo BOOTPROTO=\"static\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:4 echo IPADDR=\"66.85.164.30\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:4 echo NETMASK=\"255.255.255.248\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:4 echo ONBOOT=\"yes\" >> /etc/sysconfig/network-scripts/ifcfg-$ETH1:4 #Find the user for password expiration USER='' USER=pnap25833 # Just one user? #Set last password change to current day - without this change password is required after 1st boot CURRENT_DATE=$(date +"%y-%m-%d") chage --lastday "$CURRENT_DATE" root chage --lastday "$CURRENT_DATE" "$USER" #Set password expiration for 2 days chage -M 2 root chage -M 2 "$USER" #Disable root ssh login sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config # Hostname echo "RL-2388G.BL.phx0.1.141.2.13.G5.securedservers.com" > /etc/hostname function messenger { echo \$1 >> /dev/console wall \$1 echo \$1 >> /home/bootcfg/config.log } messenger "**** ENTERING SOFTWARE INSTALLATION PHASE ****" # Software Installation # Cleanup wget -q -O /dev/null 'http://192.168.200.2/automation/updateKickstartInstallationStatus.php?kickstartInstallationId=76253&securityKey=zcsaeioziuivpawcyqkyjmwifyohmina&percentComplete=99&message=Completing%20Installation' # Complete installation before we remove nameservers wget --timeout=30 -O /dev/null 'http://192.168.200.2/automation/completeKickstartInstallation.php?kickstartInstallationId=76253&securityKey=zcsaeioziuivpawcyqkyjmwifyohmina' echo "nameserver 8.8.8.8" > /etc/resolv.conf echo "nameserver 8.8.4.4" >> /etc/resolv.conf rm -rf /root/*.cfg rm -rf /var/log/anaconda/ %end