Create a KVM with custom HDD, RAM, CPU, etc. using CentOS 6 or 7 minimal
Disable selinux
Edit the /etc/selinux/config
vi /etc/selinux/config
Change SELINUX=enforcing to SELINUX=disabled
# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=enforcing # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
Turn off Firewall
(CentOS 7x)
systemctl stop firewalld systemctl disable firewalld yum -y install net-tools
Turn off Firewall
(CentOS 6x)
service iptables save service iptables stop chkconfig iptables off
Create a bash shell script seal.sh
vi /usr/src/seal.sh
Paste following script in the seal.sh file
#!/bin/bash echo "Seal This Centos 6x and 7x Server" yum clean all > /etc/machie-id rm -f /etc/ssh/ssh_host_rm -rf /root/.ssh/ rm -f /root/anaconda-ks.cfg rm -f /root/.bash_history unset HISTFILE rm -f /var/log/boot.log rm -f /var/log/cron rm -f /var/log/dmesg rm -f /var/log/grubby rm -f /var/log/lastlog rm -f /var/log/maillog rm -f /var/log/messages rm -f /var/log/secure rm -f /var/log/spooler rm -f /var/log/tallylog rm -f /var/log/wpa_supplicant.log rm -f /var/log/wtmp rm -f /var/log/yum.log rm -f /var/log/audit/audit.log rm -f /var/log/tuned/tuned.logroot
Go to use /usr/src folder and make script executable
cd /usr/src chmod +x seal.sh
Run seal.sh script
./seal.sh
Clear History
cat /dev/null > ~/.bash_history && history -c && exit
Generalize (seal) a Linux virtual machine using the sys-unconfig command before making it into a template. This prevents conflicts between virtual machines deployed from the template
sys-unconfig
Using Proxmox web interface Stop VM
Next right click on the VM and Convert to Template
Your Custom CentOS Template is ready.